基本セキュリティの設定 †基本的、と言っても環境によってはON、OFFのポリシーが違うので、 環境はソースからprefix指定しインストールした状態のもので説明。 基本的なセキュリティを設定するには、以下の2つの設定ファイルがhttpd.conf内でインクルードさせる必要がある。
httpd.confの編集 †指定されたディレクトリに対して、使用可能な機能を無効にする。 †$ vi /home/$USER/apache2/conf/httpd.conf <Directory /> ==================省略================== Options FollowSymLinks ↓ Options None ==================省略================== </Directory> <Directory "/home/$USER/apache2/htdocs"> ==================省略================== Options Indexes FollowSymLinks ↓ Options None ==================省略================== </Directory> http://localhost/testにアクセスを行うとファイルリストが表示されてしまう。 TraceメソッドのOff †TRACEメソッドが有効な環境ではクロスサイトトレーシングの手法を用いることで、Basic認証のパスワードを盗むことができるため、Offに設定する。
httpd.confを編集する。 TraceEnable Off #TraceEnableの記述がない場合に文末に追記する。 Onの場合 $ telnet localhost 80 #apacheで使用しているポートを指定 TRACE / HTTP/1.0 Host: localhost:80 HTTP/1.1 200 OK Date: Fri, 01 May 2009 08:06:47 GMT Server: Apache Connection: close Content-Type: message/http TRACE / HTTP/1.0 Host: localhost:80 Offの場合 $ telnet localhost 80 #apacheで使用しているポートを指定 TRACE / HTTP/1.0 Host: localhost:80 HTTP/1.1 405 Method Not Allowed Date: Fri, 01 May 2009 08:01:17 GMT Server: Apache Allow: Content-Length: 223 Connection: close Content-Type: text/html; charset=iso-8859-1 httpd-default.confの編集 †HTTPレスポンスヘッダに含まれるサーバ情報を最小限にする。 †httpd-default.confを編集する。 ServerTokens ProductOnly サーバ情報の出力(フッタ行)を非表示にする。 †httpd-default.confを編集する。 ServerSignature Off フッタ行が非表示になる。 httpd-info.confの編集 †Apacheの動作状況の監視 †mod_statusモジュールを使用して、動作状況を監視する事ができる。 httpd-info.confを編集。 <Location /server-status> SetHandler server-status Order deny,allow Deny from all Allow from example.com #ここを修正する </Location> # ExtendedStatus On #コメントアウトされているのではずす ↓ <Location /server-status> SetHandler server-status Order deny,allow Deny from all Allow from localhost Allow from 192.168.0.0/24 </Location> ExtendedStatus On http://localhost/server-statusにアクセスする。
<Location /server-info> SetHandler server-info Order deny,allow Deny from all Allow from .example.com #ここを修正する </Location> ↓ <Location /server-info> SetHandler server-info Order deny,allow Deny from all Allow from localhost Allow from 192.168.22.0/24 </Location> また、apacheのbusyの状態も見たいときは その他 † |