Apache HTTP サームãƒãƒ¼ã‚¸ãƒ§ãƒ³ 2.2
説明: | ホスト (åå‰ã‚‚ã—ã㯠IP アドレス) ã«åŸºã¥ã„ãŸã‚°ãƒ«ãƒ¼ãƒ—æ‰¿èª |
---|---|
ステータス: | Base |
モジュールè˜åˆ¥å: | authz_host_module |
ソースファイル: | mod_authz_host.c |
äº’æ›æ€§: | Apache 2.1 ä»¥é™ |
mod_authz_host
ã«ã‚ˆã‚Šæä¾›ã•れるディレクティブã¯
サーãƒã®ç‰¹å®šã®éƒ¨åˆ†ã¸ã®
アクセスを制御ã™ã‚‹ãŸã‚ã« <Directory>
, <Files>
, <Location>
㨠.htaccess
ファイルã§ä½¿ç”¨ã•れã¾ã™ã€‚クライアントã®ãƒ›ã‚¹ãƒˆåã€IP
アドレスや 環境変数ã¨ã—ã¦å–å¾—ã•れãŸã€ãã®ä»–ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®ç‰¹å¾´ã«åŸºã¥ã„ã¦
アクセス制御を行ãªã†ã“ã¨ãŒã§ãã¾ã™ã€‚Allow
ã¨
Deny
ディレクティブã¯
ã©ã®ã‚ˆã†ãªã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«ã‚¢ã‚¯ã‚»ã‚¹ã‚’
許å¯ã™ã‚‹ã€ã—ãªã„ã‹ã‚’指定ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•れã¾ã™ã€‚一方ã€
Order
ディレクティブã¯
デフォルトã®ã‚¢ã‚¯ã‚»ã‚¹çŠ¶æ…‹ã¨ã€
Allow
ディレクティブã¨
Deny
ディレクティブã¨ã®ãŠäº’ã„ã¸ã®å½±éŸ¿ã®ä»•方をè¨å®šã—ã¾ã™ã€‚
ホストã«ã‚ˆã‚‹ã‚¢ã‚¯ã‚»ã‚¹åˆ¶é™ã¨ãƒ‘スワードã«ã‚ˆã‚‹èªè¨¼ã‚’åŒæ™‚ã«
行ãªã†ã“ã¨ãŒå¯èƒ½ã§ã™ã€‚ãã®å ´åˆã€ãã®äºŒã¤ã®åˆ¶é™ã®é–¢ä¿‚を指定ã™ã‚‹ãŸã‚ã«
Satisfy
ディレクティブを使用ã—ã¾ã™ã€‚
一般的ã«ã¯ã€ã‚¢ã‚¯ã‚»ã‚¹åˆ¶é™ãƒ‡ã‚£ãƒ¬ã‚¯ãƒ†ã‚£ãƒ–ã¯ã™ã¹ã¦ã®ã‚¢ã‚¯ã‚»ã‚¹ãƒ¡ã‚½ãƒƒãƒ‰
(GET
, PUT
, POST
ãªã©)
ã«é©ç”¨ã•れã¾ã™ã€‚ãã—ã¦ã€ã»ã¨ã‚“ã©ã®å ´åˆã“ã‚ŒãŒæœ›ã¾ã—ã„動作ã§ã™ã€‚
ã—ã‹ã—ã€<Limit>
セクションã®ä¸ã«ãƒ‡ã‚£ãƒ¬ã‚¯ãƒ†ã‚£ãƒ–を書ãã“ã¨ã§ã€
一部ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«ã®ã¿åˆ¶é™ã‚’ã‹ã‘ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
説明: | サーãƒã®ã‚ã‚‹é ˜åŸŸã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãるホストを制御ã™ã‚‹ |
---|---|
æ§‹æ–‡: | Allow from all|host|env=env-variable
[host|env=env-variable] ... |
コンテã‚スト: | ディレクトリ, .htaccess |
上書ã: | Limit |
ステータス: | Base |
モジュール: | mod_authz_host |
Allow
ディレクティブã¯ã©ã®ãƒ›ã‚¹ãƒˆãŒ
サーãƒã®ã‚ã‚‹é ˜åŸŸã‚’ã‚¢ã‚¯ã‚»ã‚¹ã§ãã‚‹ã‹ã«å½±éŸ¿ã‚’与ãˆã¾ã™ã€‚
アクセスã¯ãƒ›ã‚¹ãƒˆåã€IP アドレスã€IP アドレスã®ç¯„囲やã€
環境変数ã¨ã—ã¦å–å¾—ã•れãŸã€ãã®ä»–ã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®
特徴ã«ã‚ˆã£ã¦åˆ¶å¾¡ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
ã“ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒ†ã‚£ãƒ–ã®æœ€åˆã®å¼•æ•°ã¯å¸¸ã« from
ã§ã™ã€‚
ãれã«ç¶šã引数ã¯ä¸‰ã¤ã®é•ã£ãŸå½¢å¼ãŒã‚りã¾ã™ã€‚Allow from
all
ãŒæŒ‡å®šã•れã¦ã„れã°ã€ã™ã¹ã¦ã®ãƒ›ã‚¹ãƒˆã«ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã—ã€
アクセス制é™ã¯ä¸‹ã§èª¬æ˜Žã•れã¦ã„るよã†ã«ã€
Deny
ディレクティブ㨠Order
ディレクティブã®è¨å®šã§æ±ºã¾ã‚Šã¾ã™ã€‚
特定ã®ãƒ›ã‚¹ãƒˆã‚„ホスト群ã«ã®ã¿ã‚µãƒ¼ãƒã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã™ã‚‹ãŸã‚ã«ã¯ã€
以下ã®ã©ã‚Œã‹ã®å½¢å¼ã§ host を指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™:
Allow from apache.org
Allow from .net example.edu
ã“ã®æ–‡å—列ã«åˆã†ã‹ã€ã“れã§çµ‚ã‚ã‚‹åå‰ã®ãƒ›ã‚¹ãƒˆã®ã‚¢ã‚¯ã‚»ã‚¹ãŒè¨±å¯ã•れã¾ã™ã€‚
å„部分ãŒå®Œå…¨ã«åˆã†ã‚‚ã®ã ã‘ã«é©ç”¨ã•れã¾ã™ã®ã§ã€ä¸Šã®ä¾‹ã¯
foo.apache.org
ã«ã¯ãƒžãƒƒãƒã—ã¾ã™ãŒã€
fooapache.org
ã«ã¯ãƒžãƒƒãƒã—ã¾ã›ã‚“。
ã“ã®è¨å®šã‚’ã™ã‚‹ã¨ã€Apache ã¯
HostnameLookups
ã®è¨å®šã«é–¢ã‚らãšã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã® IP アドレスã«å¯¾ã—ã¦
DNS ã® 2 é‡é€†å¼•ãを行ãªã„ã¾ã™ã€‚
ホストåã‹ã‚‰ã‚ªãƒªã‚¸ãƒŠãƒ«ã® IP ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’é †å¼•ãã—ã¾ã™ã€‚
é †å¼•ãã¨é€†å¼•ããŒä¸€è‡´ã—ã€ãƒ›ã‚¹ãƒˆåãŒè©²å½“ã—ãŸå ´åˆã«ã®ã¿ã€
アクセスãŒè¨±å¯ã•れã¾ã™ã€‚
Allow from 10.1.2.3
Allow from 192.168.1.104 192.168.1.205
アクセスを許å¯ã™ã‚‹ IP アドレスã§ã™ã€‚
Allow from 10.1
Allow from 10 172.20 192.168.2
サブãƒãƒƒãƒˆã®åˆ¶é™ç”¨ã®ã€IP ã‚¢ãƒ‰ãƒ¬ã‚¹ã®æœ€åˆã®ä¸€ã¤ã‹ã‚‰ä¸‰ã¤ã¾ã§ã®ãƒã‚¤ãƒˆã§ã™ã€‚
Allow from 10.1.0.0/255.255.0.0
ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ a.b.c.d ã¨ãƒãƒƒãƒˆãƒžã‚¹ã‚¯ w.x.y.z ã§ã™ã€‚ より細粒度ã®ã‚µãƒ–ãƒãƒƒãƒˆåˆ¶é™ç”¨ã§ã™ã€‚
Allow from 10.1.0.0/16
ãƒãƒƒãƒˆãƒžã‚¹ã‚¯ãŒ nnn ã®ä¸Šä½ãƒ“ット㌠1 ã¨ãªã£ã¦ã„ã‚‹ã‚‚ã®ã‹ã‚‰ãªã‚‹ã“ã¨ä»¥å¤–ã¯å‰ã®ã‚‚ã®ã¨åŒã˜ã§ã™ã€‚
注: 最後ã®ä¸‰ã¤ã®ä¾‹ã¯ã¾ã£ãŸãåŒã˜ãƒ›ã‚¹ãƒˆã«åˆã„ã¾ã™ã€‚
IPv6 アドレス㨠IPv6 ã®ã‚µãƒ–ãƒãƒƒãƒˆã¯ä»¥ä¸‹ã®ã‚ˆã†ã«æŒ‡å®šã§ãã¾ã™:
Allow from 2001:db8::a00:20ff:fea7:ccea
Allow from 2001:db8::a00:20ff:fea7:ccea/10
Allow
ディレクティブã®å¼•æ•°ã®ä¸‰ã¤ç›®ã®å½¢å¼ã¯ã€
環境変数
ã®å˜åœ¨ã«ã‚ˆã‚Šã‚¢ã‚¯ã‚»ã‚¹ã®åˆ¶å¾¡ã‚’行ãªãˆã‚‹ã‚ˆã†ã«ã™ã‚‹ã‚‚ã®ã§ã™ã€‚
Allow from env=env-variable
ãŒæŒ‡å®šã•れã¦ã„ã‚‹ã¨ã€ç’°å¢ƒå¤‰æ•° env-variable
ãŒå˜åœ¨ã—ãŸå ´åˆã«ãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã•れã¾ã™ã€‚サーãƒã¯
mod_setenvif
ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒ†ã‚£ãƒ–ã«ã‚ˆã‚Šã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆ
ã®ç‰¹å¾´ã«åŸºã¥ã„ã¦æŸ”軟ã«ç’°å¢ƒå¤‰æ•°ã‚’è¨å®šã™ã‚‹æ©Ÿèƒ½ã‚’æä¾›ã—ã¾ã™ã€‚
ã§ã™ã‹ã‚‰ã€ã“ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒ†ã‚£ãƒ–ã¯ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®
User-Agent
(ブラウザã®ç¨®é¡ž)ã€Referer
ã‚„ä»–ã® HTTP リクエストã®ãƒ˜ãƒƒãƒ€ãƒ•ィールドãªã©ã«åŸºã¥ã„ã¦
アクセス許å¯ã‚’ã™ã‚‹ãŸã‚ã«ä½¿ã†ã“ã¨ãŒã§ãã¾ã™ã€‚
SetEnvIf User-Agent ^KnockKnock/2\.0 let_me_in
<Directory /docroot>
Order Deny,Allow
Deny from all
Allow from env=let_me_in
</Directory>
ã“ã®å ´åˆã€user-agent ã®æ–‡å—列㌠KnockKnock/2.0
ã§å§‹ã¾ã‚‹ãƒ–ラウザã®ã¿ãŒã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã•れã€
ä»–ã®ã‚‚ã®ã¯ã‚¢ã‚¯ã‚»ã‚¹ã‚’æ‹’å¦ã•れã¾ã™ã€‚
説明: | サーãƒãŒã‚¢ã‚¯ã‚»ã‚¹ã‚’æ‹’å¦ã™ã‚‹ãƒ›ã‚¹ãƒˆã‚’制御ã™ã‚‹ |
---|---|
æ§‹æ–‡: | Deny from all|host|env=env-variable
[host|env=env-variable] ... |
コンテã‚スト: | ディレクトリ, .htaccess |
上書ã: | Limit |
ステータス: | Base |
モジュール: | mod_authz_host |
ã“ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒ†ã‚£ãƒ–ã¯ãƒ›ã‚¹ãƒˆåã€IP
アドレスã€ç’°å¢ƒå¤‰æ•°ã«åŸºã¥ã„ã¦ã‚µãƒ¼ãƒã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’制é™ã—ã¾ã™ã€‚
Deny
ディレクティブã®å¼•数㯠Allow
ディレクティブã¨ã¾ã£ãŸãåŒã˜ã§ã™ã€‚
説明: | デフォルトã®ã‚¢ã‚¯ã‚»ã‚¹å¯èƒ½ãªçŠ¶æ…‹ã¨ã€Allow ã¨
Deny ãŒè©•価ã•ã‚Œã‚‹é †ç•ªã‚’åˆ¶å¾¡ã™ã‚‹ |
---|---|
æ§‹æ–‡: | Order ordering |
デフォルト: | Order Deny,Allow |
コンテã‚スト: | ディレクトリ, .htaccess |
上書ã: | Limit |
ステータス: | Base |
モジュール: | mod_authz_host |
Order
ディレクティブã¯ãƒ‡ãƒ•ォルトã®ã‚¢ã‚¯ã‚»ã‚¹ã®çŠ¶æ…‹ã¨
Allow
ディレクティブã¨
Deny
ディレクティブãŒè©•価ã•ã‚Œã‚‹é †ç•ªã‚’åˆ¶å¾¡ã—ã¾ã™ã€‚
Ordering ã¯ä»¥ä¸‹ã®ã©ã‚Œã‹ã§ã™ã€‚
Deny,Allow
Deny
ディレクティブãŒ
Allow
ディレクティブã®å‰ã«è©•価ã•れã¾ã™ã€‚
アクセスã¯ãƒ‡ãƒ•ォルトã§è¨±å¯ã•れã¾ã™ã€‚Deny
ディレクティブã«åˆã‚ãªã„ã‹ã€Allow
ディレクティブã«åˆã†ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã•れã¾ã™ã€‚Allow,Deny
Allow
ディレクティブ㌠Deny
ディレクティブã®å‰ã«è©•価ã•れã¾ã™ã€‚
アクセスã¯ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§æ‹’å¦ã•れã¾ã™ã€‚Allow
ディレクティブã«åˆã‚ãªã„ã‹ã€Deny
ディレクティブã«åˆã†ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯ã‚¢ã‚¯ã‚»ã‚¹ã‚’æ‹’å¦ã•れã¾ã™ã€‚
Mutual-failure
Allow
ã®ãƒªã‚¹ãƒˆã«ç¾ã‚Œã¦ã€
Deny
ã®ãƒªã‚¹ãƒˆã«ç¾ã‚Œãªã„ホストã®ã¿ãŒã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã•れã¾ã™ã€‚
ã“ã®é †ç•ªä»˜ã‘㯠Order Allow,Deny
ã¨åŒã˜åŠ¹æžœã‚’æŒã¡ã€
ãã®è¨å®šã®æ–¹ãŒå¥½ã¾ã—ã„ãŸã‚ã«éžæŽ¨å¥¨ã¨ãªã£ã¦ã„ã¾ã™ã€‚ã‚ーワードã¯ã‚³ãƒ³ãƒžã§åˆ†é›¢ã™ã‚‹ã“ã¨ã ã‘ãŒå¯èƒ½ã§ã™ã€‚
é–“ã«ç©ºç™½ãŒã‚ã£ã¦ã¯ã„ã‘ã¾ã›ã‚“。ã©ã®å ´åˆã§ã‚‚ã€Allow
ã¨
Deny
æ–‡ã¯
å…¨ã¦è©•価ã•れるã¨ã„ã†ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。
以下ã®ä¾‹ã§ã¯ã€apache.org ドメインã®ã™ã¹ã¦ã®ãƒ›ã‚¹ãƒˆã¯ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã•れã¾ã™ã€‚ ä»–ã®ã™ã¹ã¦ã®ãƒ›ã‚¹ãƒˆã¯ã‚¢ã‚¯ã‚»ã‚¹ã‚’æ‹’å¦ã•れã¾ã™ã€‚
Order Deny,Allow
Deny from all
Allow from apache.org
次ã®ä¾‹ã§ã¯ã€foo.apache.org サブドメインã«ã‚るホスト以外ã®ã€ apache.org ドメインã®ã™ã¹ã¦ã®ãƒ›ã‚¹ãƒˆãŒã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã•れã¾ã™ã€‚ apache.org ドメインã§ãªã„ホストã¯ã€ãƒ‡ãƒ•ォルトã®çŠ¶æ…‹ãŒã‚¢ã‚¯ã‚»ã‚¹æ‹’å¦ã®ãŸã‚〠サーãƒã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’æ‹’å¦ã•れã¾ã™ã€‚
Order Allow,Deny
Allow from apache.org
Deny from foo.apache.org
一方ã€ä¸Šã®ä¾‹ã® Order
㌠Deny,Allow
ã«å¤‰ã‚ã£ã¦ã„れã°ã€ã™ã¹ã®ãƒ›ã‚¹ãƒˆã«ã‚¢ã‚¯ã‚»ã‚¹ãŒè¨±å¯ã•れã¾ã™ã€‚
ã“れã¯ã€è¨å®šãƒ•ァイルä¸ã®å®Ÿéš›ã®é †ç•ªã«é–¢ã‚らãšã€
Allow from apache.org
ãŒæœ€å¾Œã«è©•価ã•れã¦ã€
Deny from foo.apache.org
を上書ãã™ã‚‹ã‹ã‚‰ã§ã™ã€‚
apache.org
ドメインã«ãªã„ホストもã€ãƒ‡ãƒ•ォルトã®çŠ¶æ…‹ãŒ allow
ã«å¤‰åŒ–ã™ã‚‹ãŸã‚ã«ã€ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã•れã¾ã™ã€‚
Order
ディレクティブã¯ãƒ‡ãƒ•ォルトã®ã‚¢ã‚¯ã‚»ã‚¹ã®çŠ¶æ…‹ã«å½±éŸ¿ã‚’与ãˆã‚‹ã®ã§ã€
Allow
ディレクティブã¨
Deny
ディレクティブãŒç„¡ãã¦ã‚‚ã€ã‚µãƒ¼ãƒã®ã‚¢ã‚¯ã‚»ã‚¹ã«å½±éŸ¿ã‚’与ãˆã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
ãŸã¨ãˆã°ã€
<Directory /www>
Order Allow,Deny
</Directory>
ã¯ãƒ‡ãƒ•ォルトã®ã‚¢ã‚¯ã‚»ã‚¹çŠ¶æ…‹ãŒ deny ã«ãªã‚‹ãŸã‚ã€
/www
ディレクトリã¸ã®ã™ã¹ã¦ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’æ‹’å¦ã—ã¾ã™ã€‚
Order
ディレクティブã¯ã‚µãƒ¼ãƒã®è¨å®šå‡¦ç†ã®å„段階ã§ã ã‘
アクセスディレクティブã®å‡¦ç†ã®é †ç•ªã‚’変更ã—ã¾ã™ã€‚ã“れã¯ã€ãŸã¨ãˆã°ã€
Order
ディレクティブã®è¨å®šã«é–¢ã‚らãšã€
<Location>
セクションã®
Allow
ディレクティブや
Deny
ディレクティブã¯ã€
Directory
セクションや
.htaccess
ファイル㮠Allow
ディレクティブや Deny
ディレクティブよりも常ã«å¾Œã«è©•価ã•れるã¨ã„ã†ã“ã¨ã‚’æ„味ã—ã¾ã™ã€‚
è¨å®šã‚»ã‚¯ã‚·ãƒ§ãƒ³ã®ãƒžãƒ¼ã‚¸ã®è©³ç´°ã«ã¤ã„ã¦ã¯ã€
Directory,Location, Files
セクションã®å‹•作方法 ã‚’å‚ç…§ã—ã¦ãã ã•ã„。