Apacheの設定
Apacheの動作設定について、以下に設定例を示します。
動作環境や必要な項目に応じて設定を行ってください。
DocumentRootの設定
DocumentRootによる運用の場合は、以下の設定例を参考にしてください。
設定例
以下の箇所を修正します。
DocumentRoot "/var/www/html"
#DocumentRoot "/var/www/html" ⇒ 先頭に#(シャープ)を記述しコメントアウトします。
次にSITE PUBLISベーシック用の設定を追加します。
以下の内容を記述します。
DocumentRoot "/home/publis/publis/htdocs"
<Directory /home/publis/publis/htdocs>
AllowOverride All
</Directory>
設定した内容の文法チェックを行います。
# /usr/sbin/httpd -t
Syntax OK ← このように表示されればOKです。
ブラウザからアクセスできるように、権限(パーミッション)を設定します。
設定が完了したら、Apacheに設定を反映させます。
httpd を起動中: [ OK ]
再起動したら、WEBブラウザで以下のURLにアクセスします。
以下のログイン画面が表示されれば、OKです。
NameVirtualの設定
NameVirtualによる運用の場合は、以下の設定例を参考にしてください。
設定例
NameVirtual用の設定ファイルを作成します。
NameVirtualHost xxx.xxx.xxx.xxx:80 ← xxx.…にはインストールしたサーバのIPアドレスを指定
<VirtualHost xxx.xxx.xxx.xxx:80> ← xxx.…にはインストールしたサーバのIPアドレスを指定
DocumentRoot /home/publis/publis/htdocs ← PUBLISインストール配下のhtdocsを指定
ServerName www.example.com ← DNSへ登録されたサーバ名
ServerAdmin webadmin@example.com ← web管理者のメールアドレス
ErrorLog logs/error_log-example.com ← 判別しやすいログファイル名を指定
CustomLog logs/access_log-example.com combined ← 判別しやすいログファイル名を指定
</VirtualHost>
<Directory "/home/publis/publis/htdocs"> ← PUBLISインストール配下のhtdocsを指定
AllowOverride All
</Directory>
httpsでの運用を行う場合
httpsでの運用も行う場合は、前述の設定に加えて、以下の設定も記述します。
NameVirtualHost xxx.xxx.xxx.xxx:443 ← xxx.…にはインストールしたサーバのIPアドレスを指定
<VirtualHost xxx.xxx.xxx.xxx:443> ← xxx.…にはインストールしたサーバのIPアドレスを指定を指定
DocumentRoot /home/publis/publis/htdocs ← PUBLISインストール配下のhtdocsを指定
ServerName www.example.com ← DNSへ登録されたサーバ名
ServerAdmin webadmin@example.com ← web管理者のメールアドレス
ErrorLog logs/error_log-example.com ← 判別しやすいログファイル名を指定
CustomLog logs/access_log-example.com combined ← 判別しやすいログファイル名を指定
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
⇒ 実際のサーバ環境に応じて設定
SSLCertificateFile /etc/pki/tls/certs/localhost.crt ← 実際のサーバ環境に応じて設定
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key ← 実際のサーバ環境に応じて設定
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
</VirtualHost>
設定が完了したら、内容の文法チェックを行います。
# /usr/sbin/httpd -t
Syntax OK ← このように表示されればOKです。
ブラウザからアクセスできるように、権限(パーミッション)を設定します。
httpd を起動中: [ OK ]
再起動したら、WEBブラウザで以下のURLにアクセスします。
Aliasの設定
Aliasによる運用の場合は、以下の設定例を参考にしてください。
設定例
http.confの最に以下の記述を追加します。
設定が完了したら、内容の文法チェックを行います。
# /usr/sbin/httpd -t
Syntax OK ← このように表示されればOKです。
ブラウザからアクセスできるように、権限(パーミッション)を設定します。
httpd を起動中: [ OK ]
再起動したら、WEBブラウザで以下のURLにアクセスします。
セキュリティ設定
Apacheのセキュリティ上の問題に対応するための設定については、以下の設定例を参考にしてください。
なお、当該設定項目が存在しない場合は、新規に追加します。
サーバ情報の表示の抑制
Apacheのバージョン、OS、PHP等のサーバ情報は、脆弱性をつかれる原因となるため、それらの情報をクライアントからのリクエストに際し、出力しないようにします。
ServerTokens Prod
ServerSignature Off
ファイル情報の表示の抑制
コンテンツの改ざんを防ぐために、コンテンツのファイル情報(INode番号)を出力しないようにします。
認証情報の盗聴防止の対応
脆弱性を使用して、Basic認証がかけられたサイトのパスワードの盗聴を防ぐ目的で設定します。
■ Apacheのバージョンが2.0.55以上の場合(2.2系も含む)
■ Apacheのバージョンが2.0.54以下の場合
LoadModule rewrite_module modules/mod_rewrite.so
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_METHOD} ^TRACE
RewriteRule .* - [F]
</IfModule>
※VirtualHostの環境では、VirtualHostディレクティブ内に記入する必要があります。
設定の反映
上記の設定変更を行った場合は、設定を反映させるためにApacheの再起動を行います。
# service httpd restart
httpd を停止中: [ OK ]
httpd を起動中: [ OK ]