Ubuntu 20.04でNginxでリバプロとSSL設定をよく行うのでメモ
まずはnginxとcertbotをインストールする
1 | $ sudo apt install nginx certbot python3-certbot-nginx -y |
続いてLetsEncryptの証明書を取得
1 | $ sudo certbot --nginx -d hoge.example.com |
諸々質問に答えてSSLインストール完了。
そして リバプロ設定を /etc/nginx/sites-available/default に記入する。
しかし、以降certbotが証明書更新をする時にはHTTP80番ポートを使って更新するので、リバプロ設定はSSL443番だけにしておいた。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | server { #80番用 listen 80; server_name _; #中略 } server { #443番用 listen 443 ssl; server_name hoge.example.com; location / { proxy_pass http: //localhost :8080; proxy_pass_request_headers on; } #以下証明書設定など # } |
そしてnginxを再起動
1 | $ sudo systemctl restart nginx |
これでHTTPはそのままnginxのhtmlコンテンツを見せて、HTTPSの443番だけをlocalhost:8080に転送する。