Let's Encryptを用いてlightsailをssl化する
目次的なの
- 書こうと思った理由
- 発行までの下準備
- 発行
- 更新
書こうと思った理由
毎回複数サイトを見るのが面倒だからまとめちまおうと
発行までの下準備
Let’s Encrypt(LEGO) インストール
以下のコマンドにて/tmpにLet’s Encrypt(LEGO) をインストール
# cd /tmp
# curl -Ls https://api.github.com/repos/xenolf/lego/releases/latest | grep browser_download_url | grep linux_amd64 | cut -d '"' -f 4 | wget -i -
解凍
# tar xf lego_{バージョン}.tar.gz
作業用ディレクトリの追加、移動
# sudo mkdir -p /opt/bitnami/letsencrypt
# sudo mv lego /opt/bitnami/letsencrypt/lego
発行
bitnamiサービスの停止
# sudo /opt/bitnami/ctlscript.sh stop
証明書の発行
sudo /opt/bitnami/letsencrypt/lego --tls --email="{[email protected]}" --domains="{domain}" --path="/opt/bitnami/letsencrypt" run
証明書 ファイル、暗号鍵ファイル 差替え
# sudo /opt/bitnami/ctlscript.sh stop
sudo /opt/bitnami/letsencrypt/lego --tls --email="{[email protected]}" --domains="{domain}" --path="/opt/bitnami/letsencrypt" run
aws Lightsail LAMP7のインスタンス環境だと、デフォルトで証明書ファイル(server.crt)、暗号鍵ファイル(server.key)が配置されています。
これらを作成済みのファイルに差し替える必要があります。
まず、既存のファイルをバックアップします。
※crtファイル、keyファイルが存在しないとbinamiサービスは正常に起動できなくなるので、失敗に備えてバックアップします。
# sudo mv /opt/bitnami/apache2/conf/bitnami/certs/server.crt /opt/bitnami/apache2/conf/bitnami/certs/server.crt.old
# sudo mv /opt/bitnami/apache2/conf/bitnami/certs/server.key /opt/bitnami/apache2/conf/bitnami/certs/server.key.old
バックアップ後に反映させるため移動
# sudo cp /opt/bitnami/letsencrypt/certificates/{domain}.crt /opt/bitnami/apache2/conf/bitnami/certs/server.crt
# sudo cp /opt/bitnami/letsencrypt/certificates/{domain}.key /opt/bitnami/apache2/conf/bitnami/certs/server.key
停止していたbitnamiサービスの起動
# sudo /opt/bitnami/ctlscript.sh start
ここまで実行すると設定した{domain}がhttpsアクセスできると思います
更新
このままではいずれ有効期限が切れてしまうため更新用ファイルを作成する
# sudo vi /opt/bitnami/letsencrypt/renew-certificate.sh
中身
#!/bin/bash
sudo /opt/bitnami/ctlscript.sh stop
sudo /opt/bitnami/letsencrypt/lego --tls --email="{[email protected]}" --domains="{domain}" --path="/opt/bitnami/letsencrypt" renew
sudo /opt/bitnami/ctlscript.sh start
アクセス権限の書き換え
# sudo chmod +x /etc/lego/renew-certificate.sh
cronの設定
# sudo crontab -e
# 毎月0時更新
0 0 1 * * sh /opt/bitnami/letsencrypt/renew-certificate.sh
参考
https://qiita.com/yshishido/items/67c57b9faafbda07da81
https://syslog.life/2020/10/18/aws-lightsail-%E8%A8%BC%E6%98%8E%E6%9B%B8-%E4%BD%9C%E6%88%90-%E8%A8%AD%E5%AE%9A-tls-ssl-lets-encrypt/#%E3%83%BBLets_EncryptLEGO_%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB
Author And Source
この問題について(Let's Encryptを用いてlightsailをssl化する), 我々は、より多くの情報をここで見つけました https://qiita.com/hirqo/items/946a1b41f8aa26045e38著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .