Введение
Let’s Encrypt — это центр сертификации (ЦС), который автоматизирует бесплатное создание, проверку, выпуск и обновление сертификатов X.509 для протокола TLS/SSL, обеспечивая шифрование HTTPS на веб-серверах.
В этом руководстве мы будем использовать Certbot, чтобы получить бесплатный SSL-сертификат для Apache в Ubuntu и настроить сертификат для автоматического обновления.
Certbot — это простой в использовании автоматизированный клиент, который извлекает и распространяет сертификаты SSL/TLS для веб-сервера.
Предпосылки
Прежде чем приступить к работе с этим руководством, на вашем сервере должен быть установлен пользователь без полномочий root с привилегиями sudo. Следуйте этому руководству: Первоначальная настройка в Ubuntu 16.04-17.10
Установить Сертбот
Первым шагом в использовании Let's Encrypt для получения SSL-сертификата является установка программного обеспечения Certbot на ваш сервер.
Обновим список пакетов:
sudo apt-get update
Мы устанавливаем следующий пакет, который позволяет вам легко управлять источниками программного обеспечения независимых производителей программного обеспечения:
sudo apt-get install software-properties-common
Давайте добавим официальный репозиторий Cerbot, чтобы получать самые свежие пакеты:
sudo add-apt-repository ppa:certbot/certbot
Вам нужно будет нажать ENTER, чтобы принять.
Давайте снова обновим список пакетов:
sudo apt-get update
И, наконец, давайте установим пакет Certbot для Apache:
sudo apt-get install python-certbot-apache
Теперь Certbot готов к использованию.
Конфигурация брандмауэра (ufw)
Если брандмауэр ufw включен, вам необходимо создать новое правило, разрешающее HTTPS-трафик.
Чтобы проверить, активен ли брандмауэр, введите следующую команду:
sudo ufw status
Чтобы разрешить трафик HTTPS для Apache:
sudo ufw allow 'Apache Full'
Получить SSL-сертификат
Certbot использует подключаемый модуль Apache для получения сертификатов SSL.
sudo certbot --apache
Выполнение этой команды позволит вам получить сертификат SSL, а Certbot автоматически изменит конфигурацию Apache.
В противном случае вы можете получить сертификат, а затем вручную настроить Apache с помощью следующей команды:
sudo certbot --apache certonly
Автоматическое продление
Пакеты Certbot поставляются с заданием cron, которое автоматически обновляет ваши сертификаты до истечения срока их действия. Поскольку сертификаты Let's Encrypt действительны в течение 90 дней, настоятельно рекомендуется воспользоваться этой функцией. Вы можете проверить автоматическое обновление сертификатов, выполнив эту команду:
sudo certbot renew --dry-run
Установка Let’s Encrypt с помощью Certbot завершена.