Apache2.4で稼働するウェブサイトに無料SSL/TLS証明書を発行してhttpsに対応させる。
Let'Encryptが発行する無料のSSL/TLSサーバー証明書を取得するためのソフトウェア「Certbot」のインストール
$ sudo apt install certbot
無料SSL/TLS証明書を発行します。メールアドレス、規約の同意をします。
$ certbot certonly --webroot -w ドキュメントルート -d ドメイン
証明書は「/etc/letsencrypt/live/ドメイン/」に作成される。
$ sudo ls -l /etc/letsencrypt/live/ドメイン/
※ ここではデフォルトの設定ファイルにそのまま記述。適宜サイトに合わせてコピーした設定ファイルに記述する。
有効化します
$ sudo a2enmod ssl
エディタで「/etc/apache2/sites-available/default-ssl.conf」を編集
$ sudo vim /etc/apache2/sites-available/derault-ssl.conf
設定した「default-ssl.conf」を有効化する。
$ sudo a2ensite default-ssl
Apacheの再起動
$ sudo systemctl restart apache2
ポートを開ける
$ sudo ufw allow 443/tcp
再読み込み
$ sudo ufw reload
「Let's Encrypt」のサーバー証明書の有効期限は3ヶ月です。有効期限30日未満から更新が可能になる。
サーバー証明書を更新する
$ sudo certbot renew
30日以上、期限が残っていると更新処理がスキップされるが有効期限の確認が出来る。