使用Certbot免费https证书运行django
Certbotインストール
bash
sudo apt install certbot
Nginxを停止
bash
sudo systemctl stop nginx
👆をしないと、certbotで証明書を発行するときエラーになる
HTTPSポート(443ポート)開放
EC2 > セキュリティ > インスタンスの詳細 > インバウンドルール > 443ポートを開放
SSL証明書発行(Let's Encrypt)
bash
certbot certonly --standalone -d (HTTPS化したいドメイン名)
以下のファイルが生成される
- /etc/letsencrypt/live/(HTTPS化したいドメイン名)/fullchain.pem;
- /etc/letsencrypt/live/(HTTPS化したいドメイン名)/privkey.pem;
Nginxの設定
etc/nginx/sites-available/(プロジェクト名)
server {
listen 80;
server_name ドメイン名;
return 301 https://$host$request_uri;#リダイレクト指定
}
server {
listen 443 ssl;
server_name (ドメイン名);
ssl_certificate /etc/letsencrypt/live/(ドメイン名)/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/(ドメイン名)/privkey.pem;
# このパートには関係のない設定が描かれている
}
Nginxを再起動
bash
sudo systemctl restart nginx