Настройка и использование certbot

Letsencrypt предоставляет бесплатные сертификаты только на относительно короткий срок. По их собственному заявлению это поощряет автоматизацию обновления сертификатов.


Мы автоматизируем обновление сертификатов следующим образом:


1. Формируем общий файл настроек nginx для работы с letsencrypt - letsencrypt.conf со следующим содержимым:

location ^~ /.well-known/acme-challenge/
{
    auth_basic    off;
    default_type  "text/plain";
    root          /usr/local/etc/letsencrypt/var/;
}

location = /.well-known/acme-challenge/
{
    return 404;
}

2. Подключаем этот файл в настройках сайтов, которые будут использовать certbot:

include /path/to/letsencrypt.conf;

3. Запускаем certbot для получения сертификата:

certbot certonly -d techways.ru --webroot -w /usr/local/etc/letsencrypt/var/

Если всё сделано верно (убедитесь, что корректно настроен DNS), будет выпущен сертификат, который далее можно использовать


Для последующего обновления (продления) сертификата достаточно выполнить

/usr/local/bin/certbot renew

Важно: использующие SSL/TLS сервисы сами по себе ничего не знают об обновлении сертификата. После успешного обновления, их, как правило, нужно перезапускать.