Установка и автоматизация SSL-сертификатов с Let’s Encrypt

Let’s Encrypt — это бесплатный сервис для генерации SSL/TLS-сертификатов. С его помощью можно легко защитить свои сайты HTTPS-соединением.
Для автоматизации работы используется инструмент Certbot.

Установка

Установим пакет, который нужен для добавления репозиториев:

Copy
sudo apt install software-properties-common

Добавим репозиторий certbot:

Copy
sudo add-apt-repository ppa:certbot/certbot sudo apt-get update

Ставим certbot:

Copy
sudo apt-get install certbot python-certbot-nginx

Если используется другой веб-сервер (например, Apache), замените nginx на apache2.

Получение сертификата

Выполните команду для автоматического выпуска и настройки сертификата для Nginx:

Copy
sudo certbot --nginx

Certbot автоматически обнаружит конфигурацию вашего веб-сервера и предложит выбрать домен. Далее сертификат будет установлен и активирован.

Автоматическое продление сертификатов

Let’s Encrypt выдает сертификаты сроком на 90 дней. Для их автоматического обновления настройте cron-задание.
Добавьте следующую строку для проверки и продления сертификатов каждые 12 часов:

Copy
0 */12 * * * certbot renew --quiet
Certbot автоматически перезапустит веб-сервер, если сертификат обновится.

Проверка работы

Убедитесь, что сертификат активен, открыв сайт через HTTPS. Также проверьте успешность автоматизации:

Copy
sudo certbot renew --dry-run
Теперь ваш сайт защищен, а обслуживание сертификатов полностью автоматизировано.