ここ半年ほどの間 (2021-08〜2022-03) に、AWS上に3件ほどWordPressを設定する機会がありました。Let’s Encrypt の認証を付けたので、そのメモ
Let’s Encrypt 設定
AWSのLightsailでは、bitnaminのwordpressをが用意されているので、そちらを選んで起動すると、簡単に、WordPressのサイトが用意できます。
次はSSLの設定。
公式サイトに従ってコマンドを入力
$ sudo /opt/bitnami/bncert-tool
----------------------------------------------------------------------------
Welcome to the Bitnami HTTPS Configuration tool.
----------------------------------------------------------------------------
Domains
Please provide a valid space-separated list of domains for which you wish to
configure your web server.
Domain list []: <ドメイン名>
The following domains were not included: fefri.jp. Do you want to add them? [Y/n]:
----------------------------------------------------------------------------
Enable/disable redirections
Please select the redirections you wish to enable or disable on your Bitnami
installation.
Enable HTTP to HTTPS redirection [Y/n]: y
Enable non-www to www redirection [Y/n]: y
Enable www to non-www redirection [y/N]: n
----------------------------------------------------------------------------
Changes to perform
The following changes will be performed to your Bitnami installation:
1. Stop web server
2. Configure web server to use a free Let's Encrypt certificate for the domains:
3. Configure a cron job to automatically renew the certificate each month
4. Configure web server name to:
5. Enable HTTP to HTTPS redirection (example: redirect http:// to https://)
6. Enable non-www to www redirection (example: redirect to www)
7. Start web server once all changes have been performed
Do you agree to these changes? [Y/n]: y
----------------------------------------------------------------------------
Create a free HTTPS certificate with Let's Encrypt
Please provide a valid e-mail address for which to associate your Let's Encrypt
certificate.
Domain list: <ドメイン名>
Server name: <ドメイン名>
E-mail address []: <アドレス>
The Let's Encrypt Subscriber Agreement can be found at:
Do you agree to the Let's Encrypt Subscriber Agreement? [Y/n]: y
----------------------------------------------------------------------------
Performing changes to your installation
The Bitnami HTTPS Configuration Tool will perform any necessary actions to your
Bitnami installation. This may take some time, please be patient.
----------------------------------------------------------------------------
Success
The Bitnami HTTPS Configuration Tool succeeded in modifying your installation.
The configuration report is shown below.
Backup files:
* /opt/bitnami/apache/conf/httpd.conf.back.202203110216
* /opt/bitnami/apache/conf/bitnami/bitnami.conf.back.202203110216
* /opt/bitnami/apache/conf/bitnami/bitnami-ssl.conf.back.202203110216
* /opt/bitnami/apache/conf/vhosts/wordpress-https-vhost.conf.back.202203110216
* /opt/bitnami/apache/conf/vhosts/wordpress-vhost.conf.back.202203110216
Find more details in the log file:
/tmp/bncert-202203110216.log
If you find any issues, please check Bitnami Support forums at:
Press [Enter] to continue:
Success の文字が出ていたら、基本的にはOKです。少し待ってブラウザで確認してみるとHTTPS化されています。
自動更新設定
自動更新が入っているかを確認。
$ crontab -l
リストの中に、下記のような設定が入っていたら自動で書かれているので、大丈夫!だと思います。
0 0 * * * sudo /opt/bitnami/letsencrypt/lego --path /opt/bitnami/letsencrypt --email="<アドレス>" --http --http-timeout 30 --http.webroot /opt/bitnami/apps/letsencrypt --domains=<ドメイン名> renew && sudo /opt/bitnami/apache/bin/httpd -f /opt/bitnami/apache/conf/httpd.conf -k graceful # bncert-autorenew
なかったら、記述しましょう
自動更新設定の追加
crontabに設定がされていなかったら、作る必要があります。(私はこのケースが有りました)
記述内容は以下のどおり
sudo /opt/bitnami/ctlscript.sh stop
sudo /opt/bitnami/letsencrypt/lego --tls --email="<アドレス>" --domains="<ドメイン名>" --path="/opt/bitnami/letsencrypt" renew --days 90
sudo /opt/bitnami/ctlscript.sh start
これを、シェルスクリプトファイル(renew-certificate.sh)に作成します。保存先は/etc/lego
$ sudo mkdir /etc/lego
$ sudo nano /etc/lego/renew-certificate.sh
実行権限を付与して、crontabに登録します。
$ sudo chmod +x /etc/lego/renew-certificate.sh
$ sudo crontab -e
# 毎月0時更新
0 0 1 * * /etc/lego/renew-certificate.sh 2> /dev/null
登録されているか確認して作業終了
$ crontab -l
コメント