Apache/アクセス制御
提供:maruko2 Note.
< Apache(Apache/アクセス制限から転送)
目次 |
Order ディレクティブ
http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#order
- Order Deny,Allow
- 先に、全ての Deny のアドレスを評価した後、全ての Allow のアドレスを評価する。(Deny と Allow で重複するアドレスは、Allow で上書きされる。)
- Deny と Allow で指定しなかったアドレスは許可になる。
- ブラックリスト方式。
- Order Allow,Deny
- 先に、全ての Allow のアドレスを評価した後、全ての Deny のアドレスを評価する。(Allow と Deny で重複するアドレスは、Deny で上書きされる。)
- Allow と Deny で指定しなかったアドレスは拒否になる。
- ホワイトリスト方式。
|
|
Order Allow,Deny / Order Allow,Deny どちらの場合でも、あとに続く Allow from と Deny from の順番(先に書くか後に書くか)は問題にならない。 |
Order の設定例
特定のアドレスからのアクセスを拒否する(ブラックリスト)
例えば、1.2.3.4 と 5.6.7.8 など特定のアドレスからのアクセスを拒否したい場合は、Order Deny,Allow で書くと分かりやすい。
Order Deny,Allow Deny from 1.2.3.4 Deny from 5.6.7.8
Order Allow,Deny にすると Allow from all が必要になる。
Order Allow,Deny Allow from all Deny from 1.2.3.4 Deny from 5.6.7.8
特定のアドレスからのアクセスのみ許可する(ホワイトリスト)
例えば、192.168.0. からのアクセスのみ許可したい場合は、Order Allow,Deny で書くと分かりやすい。
Order Allow,Deny Allow from 192.168.0.
Order Deny,Allow にすると Deny from all が必要になる。
Order Deny,Allow Deny from all Allow from 192.168.0.
Allow from と Deny from が重複している場合
192.168.0.123 を除く 192.168.0.* を許可し、それ以外は拒否。
|
Order Allow,Deny Allow from 192.168.0. Deny from 192.168.0.123 |
192.168.0.123 を除く 192.168.0.* を拒否し、それ以外は許可。
|
Order Deny,Allow Allow from 192.168.0.123 Deny from 192.168.0. |
環境変数でアクセス制限する
ホットリンクを禁止する方法
画像などのファイルに直リンクされるのを防ぐ。リファラ付きアクセスのみ Allow する。[1]
SetEnvIfNoCase Referer "^http://www\.example\.com" referer_ok
<FilesMatch ".(gif|png|jpe?g|mov|wmv|avi|flv)$">
Order Allow,Deny
Allow from env=referer_ok</FilesMatch>
同じような事は mod_rewrite でもできる。[2]
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://www\.example\.com" [NC]
RewriteRule \.(gif|png|jpe?g|mov|wmv|avi|flv)$ - [F]
- 2行目: リファラが http://www.example.com から始まるリクエスト以外。[NC] は No Case の意味で、大文字小文字を区別しない。
- 3行目: [F] は HTTP レスポンス 403: Forbidden でアクセス禁止します。
脚注
- ↑ 404 Blog Not Found:Apache - ホットリンクを禁止する (blog.livedoor.jp/dankogai)
- ↑ .htaccess - Rewrite (webtech.akijapan.com)
Apache 関連のページ
- Apache/HTTP TRACE の無効化 . . カテゴリ: Apache | セキュリティ
- Apache/HTTPユーザー認証の設定 . . カテゴリ: Apache | アクセス制御 | セキュリティ
- Apache/SSL自己証明書の作成とmod sslの設定 . . カテゴリ: Apache | セキュリティ
- Apache/WebDAVの設定 . . カテゴリ: Apache | ファイルサーバ
- Apache/バーチャルホストのログをリモートのrsyslogに集約する . . カテゴリ: Apache | syslog
- Apache/リバースプロキシ . . カテゴリ: Apache
- Apache/ログのローテーション . . カテゴリ: Apache
- RT Request Tracker を CentOS 5 にインストールする . . カテゴリ: Apache | CentOS | Webアプリ | メール
- eAccelerator をインストールする . . カテゴリ: Apache | Webアプリ
- ベリサイン SSL サーバ証明書取得から apache mod ssl 設定までの流れ . . カテゴリ: Apache | セキュリティ

