Wiki
Web / стек

Let's Encrypt — что это и как настроить

Let's Encrypt — бесплатный автоматический SSL-сертификат. Основан ISRG в 2015. Выдаёт TLS-сертификаты на 90 дней с автообновлением через ACME-протокол.

Let's Encrypt — некоммерческий центр сертификации, запущенный Internet Security Research Group (ISRG) в 2015 с целью сделать HTTPS-шифрование бесплатным и автоматическим. Выдаёт сертификаты TLS/SSL сроком на 90 дней, ожидает автоматического обновления. Все крупные браузеры (Chrome, Firefox, Safari) доверяют Let's Encrypt по умолчанию с 2016.

Процесс автоматический: (1) на сервере ставится клиент certbot (apt install certbot), (2) вы запускаете certbot certonly -d example.com, (3) он через ACME-протокол доказывает Let's Encrypt, что домен ваш (HTTP-01: положить файл на /.well-known/acme-challenge/; DNS-01: создать TXT-запись), (4) получает сертификат, (5) systemd-timer автоматически обновляет за 30 дней до истечения.

Ограничения: (1) до 50 сертификатов на домен верхнего уровня в неделю, (2) до 5 повторных выдач для одного и того же домена (защита от переборов). Обходятся через wildcard-сертификат (*.example.com) или staging-endpoint для тестов.

Частые вопросы

Настоящий SSL или подделка?
Настоящий — доверяется всеми браузерами. Отличие от платных: (1) не показывает название компании в адресной строке (EV-сертификат), (2) 90 дней вместо года.
Нужно ли платить за SSL если есть Let's Encrypt?
Для 95 % сайтов — нет. Платный SSL нужен: (1) EV-сертификат с юр. лицом в бар (банки, e-commerce), (2) wildcard от закрытого CA (крупные корпорации), (3) code-signing (совсем другая история).