web サーバーの設定 (apache)
Vine Linux 4.0
Jan. 27 2007
Vine Linux 4.0 から Webサーバーが apache2 になった。今までの apache1.x の設定ファイルはそのままでは使用できない。また、設定ファイルの httpd.conf やドキュメントルートなどの場所も変更になっているので注意が必要。もっとも httpd.conf 内で各種ファイルの場所を apache1.x と同じくするという方法もある。しかし、今後のことも考えて apache2 の標準に沿って設定しておくことにする。
設定ファイル /etc/apache2/conf/httpd.conf の次の部分を変更しておく。
# vi /etc/apache2/conf/httpd.conf
ServerTokens OS
クライアントに送り返す Server 応答ヘッダ内に、サーバの一般的な OS 種別や、 コンパイルされて組み込まれているモジュールの情報を 含めるかどうかを指定する。クライアントに返すサーバー情報。Apache のHTTPレスポンスヘッダ。
あまり詳しい情報を返すと、それを手がかりにサーバーの脆弱性を調べ攻撃を仕掛けられる可能性があるので、これらを表示させないように ServerTokens の指定を変更する。引数は次のとおり。
一番秘匿性の高い ProductOnly を指定する。
| Full( or 未指定) | Apache の詳細なバージョン、OS名及びモジュール |
|---|---|
| OS | Apache のバージョンとOS名 |
| Major | Apache のメジャーバージョン |
| Minor | Apache のマイナーバージョンまで |
| Minimal(Min) | Apache の詳細なバージョン |
| ProductOnly | 製品名のみ(Apache) |
ServerTokens OS
↓
ServerTokens ProductOnly
ExtendedStatus On
各リクエストに対して拡張ステータス情報を保存する。Apache には、稼働状況を表示してくれる機能があるので、これを有効にする。
httpd.conf の ExtendedStatus On のコメントアウトを外し、次の行を追加する。
ExtendedStatus On
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 10.99.1
</Location>
全てのアクセスを禁止して、LAN ネットワーク内のみのアクセスを許可する。
daemon の再起動後、ブラウザで http://www.sleepingbird.net/server-status に接続すれば稼働状況が確認できるようになる。
ServerName
サーバが自分自身を示すリクエストスキームとホスト名とポートを設定する。ServerName www.example.com:80
↓
ServerName www.qcp.jp:80
UseCanonicalName
URLの最後の "/" が省略されたとき、それを補完する。個人的には URL の最後の "/" は厳密に使用して欲しいが、ほとんどの人はいい加減に使用しているので、救済のため On にしておく。
UseCanonicalName Off
↓
UseCanonicalName On
DocumentRoot
公開する ウエブページ (Documen) の基点 (Root) となるディレクトリ。WEB で公開するトップディレクトリを指定する。通常はそのままでよいが、バーチャルホストを複数設定するのでホスト名に合わせて管理できるように変更した。
DocumentRoot /var/www/html
↓
DocumentRoot /var/www/qcp
アクセスされたディレクトリに index.html が無いとディレクトリが丸見えになってしまうので、これを防ぐ。 Options から Indexes を削除する。
また、ディレクトリ指定も DocumentRoot と整合させておく。
#<Directory "/var/www/html">
<Directory /var/www/qcp>
# Options Indexes FollowSymLinks
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
DocumentRoot ディレクトリを作成し、リモートから ftp 転送できるように所有者を変更する。
# mkdir /var/www/qcp
# chown -R 所有者名 /var/www/qcp
DirectoryIndex
クライアントが、ディレクトリ名の最後に「/」 を指定してディレクトリインデックスを要求する場合に探すリソースのリスト。リストに記載された順にディレクトリ内を探査し、レスポンスを返す。
DirectoryIndex index.html index.html.var
↓
DirectoryIndex index.html index.htm index.shtml index.php index.php4 index.php3 index.cgi
ServerSignature
サーバが生成するドキュメント の最下行に付与するフッタの設定を行なう。エラーページを表示する際にもバージョンが表示されるので、これも抑止するために ServerSignature を Off にする。
ServerSignature Onサーバーブート時の自動起動の設定を行う。
↓
ServerSignature Off
# chkconfig apache2 onネットに接続して、外部からアクセス可能になっているか調べるには、次のサイトを利用する。
- WWWサーバテスト(パソコンおやじ)
- Free webmaster test tools(WebSitePulse.com)
- サーバーメンテナンス支援【無料】
