Nginxの導入とLet's Encrypt のSSLの導入をいっぺんに済ませるスクリプト
事前の準備としてAレコードだ登録されていることです。
FWなどがある場合にはポート80と443が開いていること。
nginx version: nginx/1.18.0 (Ubuntu) on Azure VM
で確認
export DOMAIN=example.com export MAIL=admin@example.com apt -y update apt -y upgrade apt -y install nginx apt -y install certbot certbot certonly --webroot -w /var/www/html -m $MAIL -d $DOMAIN --agree-tos -n sed -i 's/# listen 443 ssl default_server/listen 443 ssl default_server/g' /etc/nginx/sites-available/default sed -i 's/# listen \[::\]:443 ssl default_server/listen \[::\]:443 ssl default_server/g' /etc/nginx/sites-available/default sed -i '/listen \[::\]:443/{n;s/^/\tssl_certificate\t\/etc\/letsencrypt\/live\/'"$DOMAIN"'\/fullchain.pem;\n/;}' /etc/nginx/sites-available/default sed -i '/ssl_certificate/{n;s/^/\tssl_certificate_key\t\/etc\/letsencrypt\/live\/'"$DOMAIN"'\/privkey.pem;\n/;}' /etc/nginx/sites-available/default systemctl restart nginx