Options から Indexes を除外。
<Directory "/var/www"> Options -Indexes AllowOverride All Require all granted </Directory>
全部コメントアウト。
新規作成。コンテンツのgzip圧縮設定。
<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE \ "text/html" \ "text/plain" \ "text/xml" \ "text/css" \ "text/javascript" \ "application/javascript" \ "image/svg+xml" </IfModule>
新規作成。エラードキュメントに文字だけ設定。こだわりがあるなら html ファイルを作成して配置。
ErrorDocument 400 "Bad Request" ErrorDocument 401 "Unauthorized" ErrorDocument 403 "Forbidden" ErrorDocument 404 "Not Found" ErrorDocument 405 "Method Not Allowed" ErrorDocument 500 "Internal Server Error" ErrorDocument 503 "Service Unavailable"
新規作成。このファイルにセキュリティ関連設定を記述する。
ServerTokens ProductOnly TraceEnable Off Header add X-Content-Type-Options "nosniff" Header add X-Frame-Options "SAMEORIGIN" Header add X-XSS-Protection "1; mode=block" Header always unset X-Powered-By RequestHeader unset Proxy FileETag MTime Size LimitRequestBody 10485760 RequestReadTimeout header=20-40,MinRate=500 body=20,MinRate=500
HSTS の追加、脆弱性のある暗号化方式は使わないよう修正。
<VirtualHost _default_:443> … Header set Strict-Transport-Security "max-age=31536000" SSLProtocol all -SSLv2 -SSLv3 -TLSv1 SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:!SEED:!IDEA:!3DES:!RC4 … </VirtualHost>
すべてコメントアウト。
すべてコメントアウト。
php.ini の以下項目を修正。
output_buffering = 4096 expose_php = Off error_reporting = E_ALL display_errors = Off html_errors = Off date.timezone = Asia/Tokyo session.use_strict_mode = 1 session.use_cookies = 1 session.use_only_cookies = 1 session.cookie_secure = 1 session.cookie_httponly = 1 mbstring.language = Japanese
以下3行追加。
ssl-ca=/var/lib/mysql/ca-key.pem ssl-cert=/var/lib/mysql/server-cert.pem ssl-key=/var/lib/mysql/server-key.pem