表題の通り、Let's Encryptでwwwのありなしに対応してみたので、その時の作業をメモとして残す。
Let’s Encrypt SSL証明書で、wwwあり、なしに対応 - dbit.に記載されている内容を参考にした。
Let's Encrypt - Free SSL/TLS Certificates
先に環境を記載しておく
OS:Ubuntu 18.04 ※20.04でも同じになるはず
サーバ:Apache/2.4.46
※ドキュメントルートは標準設定の/var/www/htmlとする
今回設定したいドメインをexample.comとして話を進める。
最初にCertbotのページを参考にして、https://example.comにアクセス出来るようにする。
#snapのインストール $ sudo apt update $ sudo apt install snapd $ sudo snap install core; sudo snap refresh core #Certbotのインストール $ sudo snap install --classic certbot $ sudo ln -s /snap/bin/certbot /usr/bin/certbot #Let's Encryptの設定 $ sudo certbot --apache #あとは画面の指示に従い、メールアドレスとドメインの登録を行う #入力するドメインはexample.comにする #設定が終了したら、Apache2の再起動 $ sudo /etc/init.d/apache2 restart
Apache2の再起動後にブラウザのアドレスバーにhttps://example.comを打ち込んでアクセス出来るか?を確認する。
続いて、https://www.example.comの方の手続きを行う。
$ sudo certbot certonly --agree-tos --email [email protected] --webroot --webroot-path /var/www/html -d example.com -d www.example.com
処理がエラーなく終了したら、confファイルを編集する。
$ sudo nano /etc/apache2/sites-available/000-default-le-ssl.conf
</IfModule>の上の行に下記の記述を追加する。
<VirtualHost *:443> ServerName www.example.com SSLEngine on SSLProtocol all -SSLv2 -SSLv3 SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem Redirect permanent / https://example.com/ </VirtualHost>
confファイルを保存した後、
$ sudo /etc/init.d/apache2 restart
でApache2の再起動を行い、ブラウザでhttps://www.example.comが表示されることを確認する。