Certbot для Nginx: выпуск и проверка продления
На Ubuntu сертификат Let's Encrypt для Nginx можно получить Certbot: установите пакет, проверьте конфигурацию веб-сервера и запустите sudo certbot --nginx -d example.com -d www.example.com. До команды домены должны указывать на сервер, а входящие соединения на порты 80 и 443 — быть доступны.
Установка на Ubuntu
sudo apt update
sudo apt install certbot python3-certbot-nginx
sudo nginx -tДля production используйте актуальную инструкцию Certbot для своей версии Ubuntu: способ установки и поддерживаемая версия пакета могут отличаться.
Выпустить сертификат
sudo certbot --nginx -d example.com -d www.example.comИнтерактивный мастер запросит адрес для уведомлений и согласие с условиями, затем обновит конфигурацию Nginx. Перед подтверждением проверьте, что перечислены все нужные домены.
Проверить установленный сертификат и продление
sudo certbot certificates
sudo certbot renew --dry-run
systemctl list-timers | grep certbotКоманда | Назначение |
|---|---|
| Показать сертификаты и сроки действия |
| Тестовое продление без замены рабочего сертификата |
| Проверить запланированный запуск таймера |
Почему проверка Certbot не проходит?
Проверьте A/AAAA-записи, доступность порта 80, firewall и совпадение домена с server_name. Если сайт за CDN или reverse proxy, убедитесь, что HTTP challenge доходит до сервера.
Нужно ли вручную запускать renew по cron?
Обычно пакет настраивает systemd timer или cron. Сначала проверьте существующий автоматический запуск; не добавляйте второй параллельный планировщик без причины.