nginxのセキュリティ設定内容のまとめ
1.特定ディレクトリのアクセスを禁止
location ^~ /var/www/html/sta {
deny all;
}
2.phpファイルのアクセスおよび実行を禁止
2.1 単独ディレクトリの実行権限を禁止
location ~ /att_startnews24/.*\.(php|php5)?$ {
deny all;
}
2.2 複数のディレクトリのPHP実行権限を禁止
location ~ /(att_startnews24|upload)/.*\.(php|php5)?$ {
deny all;
}
3. IPのアクセスを禁止
3.1 IPアドレスセグメントを禁止
deny 10.0.0.0/24;
3.2 特定IPまたはIPセグメントのみアクセス許可、他のユーザが禁止
allow
x.x.x.x;
allow 10.0.0.0/24;
deny all;
4.セキュリティ設定
4.1 ルートディレクトリのユーザはrootを変更
chown -R root:root html/
4.2 nginxおよびphp-fpmの実行アカウントとグループをnobodyに変更
4.3 ディレクトリの読み取る権限を追加
chmod o-r –R /
chmod o+r –R html/
4.4 /bin/shに対してnobody実行権限をキャンセル
chmod 776 /bin/sh