web-dev-qa-db-ja.com

letsencrypt / certbot証明書の更新を停止する方法は?

Letsencryptを使用して証明書を作成および更新する方法に関するオンラインのチュートリアルはたくさんありますが、作成した証明書(テスト目的でのみ作成されたもの)を削除して更新を停止したいと思います。 letsencryptコマンドで最初に取得した1つの証明書の更新を停止するには(他の証明書の更新を継続しながら)?

他のどこかでこの質問をしている人の単一のインスタンスも、それをしているように見えるman letsencryptのコマンドも見ません。

現在、私は次のcronジョブで証明書を更新しています:

30 2 * * 1 /usr/bin/letsencrypt renew >> /var/log/le-renew.log
35 2 * * 1 /bin/systemctl reload nginx
17
Jackson

certbotを使用すると、次のように簡単に使用できます。

certbot delete --cert-name mywebsite.com

これにより、証明書とすべての関連ファイルがletsencrypt configディレクトリから削除されます。

34
minimalis

現時点では、更新を正式に「キャンセル」するコマンドはないようです。しかし、私は this thread から機能するように見える提案を見つけました。

私は次のコマンドを実行してみました、

Sudo find /etc/letsencrypt/ -name '*outdated.example.com*'

live/archive/renewal/の各ディレクトリで1つのファイルのみが見つかりました。

私も走ってみました

Sudo grep -r /etc/letsencrypt/ -e 'outdated.example.com'

そして、renewal/ディレクトリ(renewal/outdated.example.com.confでした)の1つのファイルで古いドメインへの参照のみが見つかりました。

letsencrypt renewを実行すると、出力にoutdated.example.comが表示されました。

次に、ディレクトリ_renewal_disabledを作成し、renewal/outdated.example.com.confをそのディレクトリに移動しました。

再度letsencrypt renewを実行したところ、出力にoutdated.example.comが表示されなくなりました。

このことから、証明書の更新を「無効」にしたと想定できます。

9
Jackson

更新しました

回答をご覧ください https://stackoverflow.com/a/47372583/1426788

新しいバージョンの certbotは、CLIによる証明書の削除をサポートしています

古い答え

Certbotの更新からドメインを削除するには、不正なドメイン証明書ファイルを削除または移動(安全)し、certbot renew --dry-runを実行して、古い/無効な構成を確実に削除します。

rm -rf /etc/letsencrypt/live/${BAD_DOMAIN}/
rm -f /etc/letsencrypt/renewal/${BAD_DOMAIN}.conf
certbot renew --dry-run

これで問題が解決した場合は、--dry-runなしで更新を続行し、将来のアップデートに備えることができます。

certbot renew

nginxなどのサーバーで実行している場合は、構成を編集して、無効な証明書や削除された証明書を参照しないようにしてください。

最後に、サーバー設定を再起動またはリロードすれば完了です。

5
lfender6445

OPは、更新の停止に加えて証明書を削除することを望んでおり、それは他の回答でカバーされていました。ただし、証明書を保持したいが将来の更新を中止したい場合(たとえば、別のサーバーに切り替えたが、すべてのDNS変更が反映されるのを待っている場合)は、/etc/letsencrypte/renewalと名前変更example.com.confexample.com.conf.disabled(またはその他の非.conf名前、または完全に削除します。

/etc/letsencrypte/renewal/example.com.conf.disabled

other answer に記載されているように、次のコマンドを実行して、無効になっていることを確認できます。

Sudo certbot renew --dry-run

最後に、いくつかの 他の場所で推奨 単純なautorenew = False/etc/letsencrypte/renewal/example.com.confファイルですが、動作しないようです。 (私はフィードバックを提供するためにその投稿に返信したはずですが、彼らのフォーラムは30日後にコメントを打ち切ります。)

確認したところ、この情報の多くが other answer に含まれていることがわかりましたが、証明書自体を削除または無効にせずに更新を無効にするという別のユースケースに必要な手順を明確にしたいと思いました。

1
Garret Wilson