ポート開放を忘れずに (ルーターも)
sudo ufw allow 443
Let’s encryptをインストール
sudo apt install letsencrypt
証明書の発行を発行して貰う。
-w でルートディレクトリ -dでドメイン -m でメアドを指定。
sudo letsencrypt certonly --webroot -w /www/html -d idol-nakachan.world -m nakachankawaii@kancolle.mail.jp
サブドメインも取得する場合
-w でルートディレクトリ -dでドメイン -m でメアドを指定。
sudo letsencrypt certonly --standalone -w /www/html #
-d idol-nakachan.world #
-d www.idol-nakachan.world #
-d 2-4-11.idol-nakachan.world #
-m nakachankawaii@kancolle.mail.jp
証明書の自動更新 (crontab)
/etc/crontab
00 05 01 * * sudo systemctl stop nginx; sudo letsencrypt renew; sudo systemctl start nginx
DH交換鍵の設定
sudo mkdir /etc/nginx/ssl
sudo opensll dhparam -out /etc/nginx/ssl/nakachan-anzen.pem 2048
Nginxの設定
/etc/nginx/nakachan.conf
server {
listen 80;
server_name idol-nakachan.world;
return 301 https://$host$request_uri;
}
server {
listen 80;
listen 443;
server_name www.idol-nakachan.world;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
server_name idol-nakachan.world;
add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains;';
ssl_protocols TLSv1.2;
ssl_certificate /etc/letsencrypt/live/idol-nakachan.world/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/idol-nakachan.world/privkey.pem;
ssl_dhparam /etc/nginx/ssl/nakachan-anzen.pem;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:50m;
ssl_session_timeout 1d;
ssl_stapling on;
}
再起動
sudo nginx -t
sudo systemctl restart nginx