Apache
/etc/httpd/conf/httpd.conf
Options から Indexes を除外。
<Directory "/var/www"> Options -Indexes AllowOverride All Require all granted </Directory>
/etc/httpd/conf.d/autoindex.conf
全部コメントアウト。
/etc/httpd/conf.d/deflate.conf
新規作成。コンテンツのgzip圧縮設定。
<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE \ "text/html" \ "text/plain" \ "text/xml" \ "text/css" \ "text/javascript" \ "application/javascript" \ "image/svg+xml" </IfModule>
/etc/httpd/conf.d/errordocument.conf
新規作成。エラードキュメントに文字だけ設定。こだわりがあるなら 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"
/etc/httpd/conf.d/secure.conf
新規作成。このファイルにセキュリティ関連設定を記述する。
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
/etc/httpd/conf.d/ssl.conf
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>
/etc/httpd/conf.d/userdir.conf
すべてコメントアウト。
/etc/httpd/conf.d/welcome.conf
すべてコメントアウト。
PHP
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
MySQL
/etc/my.cnf
以下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
≪ 2018-02-20
jpeg-recompress を使った画像圧縮
2018-02-19 ≫
ひな祭り