Введение
Let’s Encrypt — это центр сертификации (ЦС), который автоматизирует бесплатное создание, проверку, выпуск и обновление сертификатов X.509 для протокола TLS/SSL, обеспечивая шифрование HTTPS на веб-серверах.
В этом руководстве мы будем использовать Certbot для получения бесплатного SSL-сертификата для Nginx в Archlinux и настройки автоматического обновления сертификата.
Certbot — это простой в использовании автоматизированный клиент, который извлекает и распространяет сертификаты SSL/TLS для веб-сервера.
Установить Сертбот
Первым шагом в использовании Let's Encrypt для получения SSL-сертификата является установка программного обеспечения Certbot на ваш сервер.
Обновим список пакетов:
sudo pacman -Syy
Теперь давайте установим клиент Certbot для Nginx:
sudo pacman -S certbot-nginx
Теперь Certbot готов к использованию.
DNS-плагины Certbot также можно использовать для получения группового сертификата. Чтобы использовать один из этих плагинов, вам необходимо настроить DNS для домена, для которого вы хотите получить сертификат от поставщика DNS. Здесь вы можете найти список этих плагинов и дополнительную информацию об их использовании. Чтобы установить один из этих подключаемых модулей, запустите указанную выше команду установки, но замените certbot-nginx именем подключаемого модуля DNS, который вы хотите установить.
Получить SSL-сертификат
Certbot использует плагин Nginx для получения SSL-сертификатов.
Выполнение этой команды позволит вам получить сертификат SSL, а Certbot автоматически изменит конфигурацию Nginx.
sudo certbot --nginx
В противном случае вы можете получить сертификат, а затем вручную настроить Nginx с помощью следующей команды:
sudo certbot --nginx certonly
Если вы хотите получить подстановочный сертификат, вам нужно использовать один из подключаемых модулей DNS Certbot. Для этого убедитесь, что подключаемый модуль для вашего провайдера DNS установлен, следуя приведенным выше инструкциям, и выполните команду, аналогичную следующей:
sudo certbot -a dns-plugin -i nginx -d "*.esempio.com" -d esempio.com --server https://acme-v02.api.letsencrypt.org/directory
Вам нужно будет заменить dns-plugin на имя подключаемого модуля DNS, который вы хотите использовать. Вам может потребоваться указать дополнительные параметры, такие как путь к учетным данным API.
Чтобы узнать больше о том, как использовать Certbot, прочитайте официальную документацию Сертбот
Автоматическое продление
Пакеты Certbot поставляются с заданием cron, которое автоматически обновляет ваши сертификаты до истечения срока их действия. Поскольку сертификаты Let's Encrypt действительны в течение 90 дней, настоятельно рекомендуется воспользоваться этой функцией. Вы можете проверить автоматическое обновление сертификатов, выполнив эту команду:
sudo certbot renew --dry-run
Если он работает нормально, вы можете настроить автоматическое обновление, добавив задание cron или таймер systemd, который запускает эту команду:
certbot renew
Для получения более подробных инструкций о том, как использовать Certbot в Arch Linux, вы можете обратиться к документации на Arch wiki.
Установка Let’s Encrypt с помощью Certbot завершена.