certbotメモ(let’s encrypt)
問題
certbotで手順通りに証明書取得と更新だけはしてますが、サーバー引っ越しとか設定変更とかどうしたらよいですか。
答え
サーバー移転のとき
/etc/letsencrypt をごっそりコピーでOK
rsync -a /etc/letsencrypt 移転先@移転先:/etc/
現在証明書発行をしているドメイン
certbot certificates
ドメインと証明書の一覧が出力される
更新が正常に行えるかどうか確認
インストール直後、移転直後などに確認
certbot renew --dry-run
証明書が不要になったら(設定削除のみ)
サーバー移転したので移転元から設定の削除をしたいとき。証明書は移転先で引き続き使っているので失効させないとき。
対話式
certbot delete
ドメイン指定
certbot delete -d ドメイン名
証明書が不要になったら(設定削除と証明書失効)
この証明書を失効させたいとき
certbot revoke --cert-path=/etc/letsencrypt/live/example.com/fullchain.pem
自動更新するようになっているか?
cron か systemd の timer で実行されるので、どこかに設定があることを確認する。
crontab -l
cat /etc/cron.d/letsencrypt
systemctl list-timers
自動更新されなかった例
サーバー証明書は発行されていたが、apacheが再起動しておらず、適用されない状態で有効期限がきたケースがあった。
certbotのインストールでrenewするtimerはちゃんとあったのだが、authenticator=webroot指定で証明書の発行をした環境で、apache用の後処理がなかった。
Apacheに対応してない?
httpd.confなどから自動的にドメインを拾ってくれないとしても、authenticator=webroot で発行は可能。
certbot certonly --webroot -w /var/www/example.com -d example.com
対話式の選択肢なら以下
3: Place files in webroot directory (webroot)
コメント