NginxのSSLでもdefault_serverを設定 → return 444で十分だった
サーバーからウェブサイトを削除したらNot foundにならなかったので設定したときの覚書。
環境: CentOS 7.9, Nginx 1.18.0, OpenSSL 1.0.2k
参考サイト
作業場所に移動
# mkdir /etc/nginx/ssl.d
# cd /etc/nginx/ssl.d
秘密鍵を作る
# openssl genrsa 2048 > selfcert.key
証明書署名要求(CSR)を作る
# openssl req -new -key selfcert.key > selfcert.csr
自前認証局の証明書を使って署名実行。
# openssl x509 -days 3650 -req -signkey selfcert.key -in selfcert.csr > selfcert.crt
この証明書をnginxに設定する。
# less ../conf.d/00_default.conf
server {
listen 80 default_server;
listen 443 ssl default_server;
server_name _;
ssl_certificate /etc/nginx/ssl.d/selfcert.crt;
ssl_certificate_key /etc/nginx/ssl.d/selfcert.key;
return 444;
}
testして再読み込み
# nginx -t
# systemctl reload nginx
ん?他のsslサイトも見れなくなった。
元に戻す。。。というか404ではなく。444にしてみた。
# less ../conf.d/00_default.conf
server {
listen 80 default_server;
server_name _;
return 444;
}
testして再読み込み
# nginx -t
# systemctl reload nginx
ブラウザで確認。
うん。これでいい。
444はnginx固有の設定でコネクションをクローズさせる値。