На моем сервере работает ~ 30 доменов, все они с сертификатами SSL, которыми управляет плагин Certbot nginx. Все, кроме одного ... назовем это selfsigned.example.com
.
Этот домен использует самозаверяющий сертификат, потому что к нему обращается встроенное устройство, для которого мне не удалось заставить работать надлежащую цепочку сертификатов. Встроенное устройство проверяет отпечаток сертификата, поэтому он вполне безопасен, если мне не нужен отзыв. Но важно, чтобы сертификат на сервере не заменялся Certbot, иначе устройство откажется подключаться.
Я часто добавляю новые домены в конфигурацию, а затем перезапускаю certbot --nginx
чтобы сгенерировать для них новый сертификат. Но каждый раз, когда я это делаю, certbot
подсказывает мне:
Which names would you like to activate HTTPS for?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: whatever.example.com
2: something.example.com
...
17: selfsigned.example.com
...
32: thelastone.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel):
Если я просто нажму Enter, Certbot перезапишет ssl_certificate
и ssl_certificate_key
директивы для selfsigned.example.com
с сертификатом Let's Encrypt. Поэтому мне приходится вручную вводить все числа, кроме 17 в этом случае.
Как осторожный и ленивый системный администратор, как мне сделать так, чтобы я мог просто нажимать Enter? Может, есть какой-то волшебный комментарий (похожий # managed by Certbot
) что позволяет мне сказать # Certbot ignore
?
Действительно, управление конфигурацией nginx certbot ... не очень хорошо. Он портит вашу конфигурацию всякий раз, когда решает переписать ее части.
Но: Let's Encrypt поддерживает подстановочные сертификаты. Итак, я только что создал сертификат с подстановочными знаками для example.com,*.example.com
и вручную настроил его в nginx.