目次
2021 Lightsailで常時SSLでWordPress動かす方法 AWS
#Lightsail #WordPress #SSL #https #AWS
これまでLightsailで作ったWordPressで常時SSL(https)するとき、下記のQiitaの記事を参考にしていました。
しかし、2021年現在、多少やり方が変わってるため更新の記事を書きます。
上記の記事で言うところの、コマンドラインからの手順までは同じなので、コマンドを打つところから始めます。
https://lebh.net/ というところをあなたのドメインに変えてください。
$ sudo /opt/bitnami/apps/wordpress/bnconfig --disable_banner 1 $ sudo /opt/bitnami/ctlscript.sh restart apache
gitをインストール
$ sudo apt-get install git
snapdをインストール
$ sudo apt install snapd
Lightsailのサーバーのosを確認してください
$ cat /etc/issue Debian GNU/Linux 10 \n \l
coreとcertbotをインストール
$ sudo snap install core; sudo snap refresh core $ sudo snap install --classic certbot
certbot確認
$ /snap/bin/certbot --version certbot 1.11.0
一応パスを通す
$ sudo ln -s /snap/bin/certbot /usr/bin/certbot
LetsencryptによるSSL化
$ sudo certbot certonly --webroot -w /opt/bitnami/apps/wordpress/htdocs/ -d lebh.net $ sudo cp /etc/letsencrypt/live/lebh.net/fullchain.pem /opt/bitnami/apache2/conf/server.crt $ sudo cp /etc/letsencrypt/live/lebh.net/privkey.pem /opt/bitnami/apache2/conf/server.key $ sudo /opt/bitnami/ctlscript.sh restart apache
httpsにリダイレクトする
ApacheとWordpressのconfigにそれぞれリダイレクトのための設定を書き込む。
vi /opt/bitnami/apps/wordpress/conf/httpd-prefix.conf - RewriteCond "%{HTTP_HOST}" ^ec2-([0-9]{1,3})-([0-9]{1,3})-([0-9]{1,3})-([0-9]{1,3})\..*\.amazonaws.com(:[0-9]*)?$ - RewriteRule "^/?(.*)" "%{REQUEST_SCHEME}://%1.%2.%3.%4%5/$1" [L,R=302,NE] + RewriteCond %{HTTPS} !=on + RewriteRule ^/(.*) https://lebh.net/$1 [R,L]
vi /opt/bitnami/apps/wordpress/htdocs/wp-config.php define('WP_SITEURL', 'https://lebh.net/'); define('WP_HOME', 'https://lebh.net/');
証明書更新のシェルを準備してCron実行を仕掛ける
letsencryptを使った証明書更新のためのシェルを書いて、Cron実行の設定を追加する。
sudo vi /etc/letsencrypt/renew-certificate.sh #!/bin/bash sudo /opt/bitnami/ctlscript.sh stop apache sudo /usr/local/certbot/certbot-auto --email="vaaaval@gmail.com" --domains="lebh.net" renew sudo cp /etc/letsencrypt/live/lebh.net/fullchain.pem /opt/bitnami/apache2/conf/server.crt sudo cp /etc/letsencrypt/live/lebh.net/privkey.pem /opt/bitnami/apache2/conf/server.key sudo /opt/bitnami/ctlscript.sh start apache # crontab -e (root実行、取扱注意)
0 0 1 * * /etc/letsencrypt/renew-certificate.sh 2> /dev/null
以上です、出来てますね。