certbot

Maxim Dounin mdounin на mdounin.ru
Ср Июл 6 19:00:22 UTC 2022


Hello!

On Wed, Jul 06, 2022 at 09:00:05AM +0300, Gena Makhomed wrote:

> On 06.07.2022 0:52, Maxim Dounin wrote:
> 
> >>> Отмечу, что если сертификаты обновлялись с помощью Certbot, то он
> >>> при обновлении модифицирует конфиги nginx'а (а потом возвращает
> >>> всё "как было").  Это может заканчиваться, скажем так, неожиданно.
> >>> Лично я рекомендую для выпуска сертификатов использовать
> >>> Dehydrated и необходимые дополнения в конфиг прописывать руками.
> 
> >> certbot так криво себя ведет только в дефолтовой конфигурации.
> 
> > Этого достаточно, чтобы им не пользоваться.  И уж тем более не
> > рекомендовать другим, ибо они с вероятностью, близкой к 100%,
> > будут использовать его именно в конфигурации по умолчанию.
> 
> Если быть уж совсем точным, то при установке пакета certbot
> пакет python3-certbot-nginx не устанавливается. python3-certbot-nginx -
> это Plugin for certbot that allows for automatic configuration of nginx.
> 
> Поэтому при выполнении команды certbot run -d example.com он выдает ошибку:
> 
> Certbot doesn't know how to automatically configure the web server on
> this system. However, it can still get a certificate for you. Please run
> "certbot certonly" to do so. You'll need to manually configure your web
> server to use the resulting certificate.
> 
> Поэтому единственным рабочим вариантом получения сертификата
> для nginx является только команда certbot certonly -d example.com
> которая никаких автоматических изменений в конфиги nginx не вносит.
> 
> certbot - это очень хорошо продуманный и качественно сделанный софт.

Я наблюдал Certbot с Apache, где все приседания с изменением 
конфигурации на работающем сервере используются по умолчанию.  
Точнее, помогал разобраться, почему оно не работает.  Мне хватило, 
чтобы не считать Certbot "хорошо продуманным и качественно 
сделанным".

> > Тем более, что есть Dehydrated, который подобным идиотизмом по
> > умолчанию не страдает, да и представляет из себя вполне читаемый
> > bash-скрипт без дополнительных зависимостей.
> 
> этот bash-скрипт имеет серьезные проблемы даже с парсингом json:
> 
> https://www.opennet.ru/opennews/art.shtml?num=53279
> 
> тем более, что разработчик dehydrated - это всего лишь студент:
> 
> https://www.opennet.ru/opennews/art.shtml?num=52294

Каждый выбирает приоритеты для себя.  Кому-то не нравится парсинг 
json'а, возвращаемого конкретным сервисом, с помощью регулярных 
выражений, чтобы не тащить зависимости, а кому-то - переписывание 
конфига работающего сервера (с помощью тех же регулярных 
выражений, если продраться через зависимости) с непредсказуемыми 
последствиями.

Я могу рекомендовать Dehydrated, он сделан хорошо и просто 
работает.  И не могу рекомендовать Certbot, там проблема дизайна: 
конфиг сервера нельзя менять, не понимая всех аспектов работы 
этого конфига (и тем более нельзя менять в фоне и не говоря об 
этом пользователю), а авторы Certbot'а этого явного не понимают.

-- 
Maxim Dounin
http://mdounin.ru/



Подробная информация о списке рассылки nginx-ru