Certbot: Revoke или Delete? Разбираем грабли управления

Управление жизненным циклом сертификатов Let's Encrypt через Certbot кажется простым, пока не столкнешься с необходимостью их отзывать или удалять. Многие путают эти понятия, что приводит к неочевидным проблемам. В чем разница:

certbot revoke — сообщает серверам Let's Encrypt, что сертификат больше не действителен. Это критично, если приватный ключ украли или домен больше вам не принадлежит. certbot delete — удаляет файлы сертификата, ключи и симлинки с вашего локального сервера.

Классическая ошибка: отозвать сертификат, но забыть удалить его локально (или наоборот).В /etc/letsencrypt/live/ останутся «мертвые» симлинки. Как делаю я (безопасный сценарий): Если ключ скомпрометирован, сначала отзываем, потом чистим локально, и только потом получаем новый:

# 1. Отзываем с указанием причины certbot revoke --cert-path /etc/letsencrypt/live/example.com/cert.pem --reason keycompromise # 2. Удаляем локальные файлы certbot delete --cert-name example.com # 3. Получаем новый certbot --nginx -d example.com

Совет: перед удалением всегда делайте бэкап /etc/letsencrypt/. Однажды спасло меня ручного восстановления.

#devops #letsencrypt #certbot #безопасность