letsencryptのcertbotにて、初期設定するところのメールアドレスをunregistしてしまい、鍵の更新(certbot renew)ができなくなてしまった。そこで、改めてletsencrypt(=certbot)の再導入をおこなった。
環境は以下の通り;
・raspberry pi(8MB) + 500G-SSD
・raspi-os(64bit) bullseye
・ApacheでVirtualHostにより複数ドメインを扱う
事前準備としては以下の通り。
(1)/etc/letsencrypt/ をバックアップから復元する。
(2)certbot delete で取得済のドメイン証明書を順次消去する。
(3)apt remove certbot とした後、apt autoremoveで依存ファイルを消去する。
(4)/etc/apache2/site-enable/*.confで、port:443のconfからssl関連を編集。
(5)/etc/init.d/apache2 stop する。
(6)apache2ctl configtestして、/etc/apache2/site-enable/*.confをチェック。
(7))/etc/init.d/apache2 startし、port:80の各VirtualHostが見えることを確認。
次にcertbotの入れ直し。apacheのモジュールを追加する
apt-get install certbot python3-certbot-apache
続いてletsencryptの導入。
certbot certonly -d ドメイン名
メールアドレスとか聞いてくるので入れる。ウマくいけば、ssl証明書が
/etc/letsencrypt/live/ドメイン名/
から辿れるシンボリックリンクに作成される。apacheのモジュールを入れないときは、該当のVirtualHostのDocumentRootを訊いてくるので、入力する。
下記は設定画面。
なお、
最後に/etc/apache2/site-enabled/*.confでport:443の最後のほうに、
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/ドメイン名/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/ドメイン名/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
を追加する。
Includeの行は当初コメントアウトしていたが、生成されていた/etc/letsencrypt/options-ssl-apache.confを眺めてみると、セキュリティ上必要そうなので、有効化した。
なお、以前は
certbot -d ドメイン名
とすれば、VirtualHostのconfファイルに対して自動的に証明書のパスを足してくれていたが、今回は動かなかった。
certbot --apache
という呪文を唱えてもconfファイルの書き換えができない。viで直接VirtualHostのconfファイルをコピペした。暫定的な不具合なのか、certbotの機能が低下してしまったのかは不明。
(2022/02/23 記、2022/03/11修正追記)
コメント