Комментарии 5
Хороший честный разбор своего факапа.
Не знаю ваш уровень и как вы относитесь к критике, но рискну. Для админа - ок. Для девопса - слишком сложная конфигурация для простой задачи. В 2020 году - это было бы отличное решение для большого и тяжелого проекта. Для малого… Traefik или Caddy вместо связки Nginx + Certbot. В 2026 году для динозавров вроде меня есть Angie - форк Nginx, который уже пару лет как умеет из коробки работать с сертификатами.
И все это тогда будет намного проще автоматизировать через Ansible - не несколько тасок меньше, быстрее тестировать, быстрее деплоить - один конфиг, никаких дополнительных скриптов и хуков.
Спасибо!
Проверил Angie - да, умеет сам с версии 1.5.0. И главное, он сам же подхватывает новый сертификат. У меня сломалось именно это: certbot положил новый файл на диск, а nginx продолжал отдавать старый, потому что его никто не перезапустил.
Посмотрел свой конфиг после вашего комментария - там один домен и три прокси. Так что да, certbot с хуками для такого жирновато, на Caddy вышло бы строк десять.
Текст отдает нейрослопом.
Проверка nginx -t перед reload тут не формальность. Если конфиг успел сломаться между запусками, reload на битом конфиге уронит живой nginx, и вместо истёкшего сертификата получится отсутствующий сайт.
-s reload не применит битый конфиг и ругнется на его битость.
Поправка принята, спасибо. Проверил: сломал конфиг на тестовом контейнере, дёрнул reload - ругнулся и не применил, сайт работает. Статью исправил. Про слоп - виноват мой ревьюер Клодий Гптивич :). Однако в реальности ситуации можете не сомневаться

certbot говорил VALID, браузер говорил «небезопасно». Правы были оба