Настройка Let’s Encrypt Wildcard SSL в Ubuntu 20.04 | 18.04

Настройка Let’s Encrypt Wildcard SSL в Ubuntu 20.04 | 18.04

 

Это краткое руководство показывает студентам и новым пользователям, как сгенерировать бесплатные сертификаты SSL / TLS с подстановочными знаками с помощью Let’s Encrypt (Certbot) в Ubuntu 20.04 | 18.04 LTS.

Если вы хотите запустить свой веб-сайт через HTTPS, вам придется установить сертификаты SSL. Вы можете заплатить за сертификаты в центре сертификации или получить бесплатные в Let’s Encrypt.

Let’s Encrypt — это центр сертификации (CA), который предоставляет бесплатные сертификаты SSL / TLS с использованием полностью автоматизированного процесса, который исключает создание, проверку, установку и продление сертификатов вручную.

После создания вы сможете установить эти сертификаты на свои веб-серверы для обслуживания трафика HTTPS для ваших пользователей и аудитории.

Студенту или новому пользователю, который ищет систему Linux для начала обучения, проще всего начать с ОС Ubuntu Linux…. Это отличная операционная система Linux для начинающих.

Итак, чтобы получить бесплатные подстановочные сертификаты для установки на ваш веб-сервер, выполните следующие действия:

Ниже вы узнаете, как сгенерировать подстановочный SSL-сертификат для вашего домена с помощью Certbot.

Шаг 1. Установите Let’s Encrypt Certbot Tool

Прежде чем создавать бесплатные сертификаты с подстановочными знаками, вы сначала захотите убедиться, что certbot установлен и запущен… Чтобы установить его, выполните следующие команды:

sudo apt update
sudo apt-get install letsencrypt

Приведенные выше команды установят инструмент certbot и все зависимости, которые позволят заставить инструмент работать.

Шаг 2. Создайте SSL-сертификат Let’s Encrypt Wildcard

Теперь, когда инструмент установлен, вы можете приступить к созданию сертификатов.

Let’s Encrypt предлагает множество способов проверить, что вы владеете доменом, для которого хотите предоставить сертификаты SSL … Вы не сможете сгенерировать сертификаты, если не сможете доказать, что владеете доменом, для которого хотите сертификаты.

Однако для сертификатов с подстановочными знаками единственный метод вызова, который принимает Let’s Encrypt, — это запрос DNS, который мы можем вызвать с помощью  флага предпочтительных вызовов = dns .

Итак, чтобы сгенерировать сертификат с подстановочными знаками для домена * .example.com , вы выполните следующие команды. Вы также должны включить пустой домен при регистрации.

sudo certbot certonly --manual --preferred-challenges=dns --email admin@example.com --server https://acme-v02.api.letsencrypt.org/directory --agree-tos -d example.com -d *.example.com

Параметры команды выше описаны ниже:

  • certonly — получить или обновить сертификат, но не устанавливать
  • –manual — интерактивное получение сертификатов.
  • –preferred-challenges=dns — использовать DNS для аутентификации владения доменом.
  • –server — укажите конечную точку, которая будет использоваться для создания
  • –agree-tos —  условия подписки на сервер ACME.
  • -d — доменное имя для предоставления сертификатов

После выполнения приведенной выше команды Let’s Encrypt предоставит текстовую строку для добавления текстовой записи в вашу запись DNS …

Пример:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator manual, Installer None

-------------------------------------------------------------------------------
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about EFF and
our work to encrypt the web, protect its users and defend digital rights.
-------------------------------------------------------------------------------
(Y)es/(N)o: y
Obtaining a new certificate
Performing the following challenges:
dns-01 challenge for example.com

-------------------------------------------------------------------------------
NOTE: The IP of this machine will be publicly logged as having requested this
certificate. If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.

Are you OK with your IP being logged?
-------------------------------------------------------------------------------
(Y)es/(N)o: y

-------------------------------------------------------------------------------
Please deploy a DNS TXT record under the name
_acme-challenge.example.com with the following value:

x4MrZ6y-JqFJQRmq_lGi9ReRQHPa1aTC9J2O7wDKzq8

Before continuing, verify the record is deployed.

Перейдите на портал своего поставщика DNS, добавьте текстовую запись для строки выше и сохраните.

Подождите несколько минут, прежде чем продолжить с подсказки … Некоторые поставщики DNS берут на себя хитрость для распространения изменений, поэтому это может зависеть от платформы вашего провайдера …

После внесенных выше изменений, и Let’s encrypt сможет подтвердить, что вы являетесь владельцем домена, вы должны увидеть успешное сообщение, как показано ниже:

 

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/example.com/privkey.pem
   Your cert will expire on 2020-01-09. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot
   again. To non-interactively renew *all* of your certificates, run
   "certbot renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Это должно сработать!

Подстановочный сертификат создан и готов к использованию.

Чтобы убедиться, что сертификат готов, выполните следующие команды:

sudo certbot certificates

Это должно отобразить аналогичный экран, как показано ниже:

Found the following certs:
  Certificate Name: example.com
    Domains: *.example.com
    Expiry Date: 2020-01-05 07:48:04+00:00 (VALID: 85 days)
    Certificate Path: /etc/letsencrypt/live/example.com/fullchain.pem
    Private Key Path: /etc/letsencrypt/live/example.com/privkey.pem

Все готово!

Теперь сертификаты Let’s Encrypt действительны в течение 90 дней … Вы захотите настроить задание crob для автоматизации процесса обновления … Для этого откройте crontab и добавьте запись ниже:

sudo crontab -e

Затем добавьте строку ниже и сохраните.

0 1 * * * /usr/bin/certbot renew >> /var/log/letsencrypt/renew.log

Сохраните, и все готово!

Вывод:

В этом посте показано, как настроить подстановочные сертификаты SSL Let’s Encrypt в Ubuntu 20.04 | 18.04. Если вы обнаружите какую-либо ошибку выше, пожалуйста, используйте форму комментария ниже, чтобы сообщить.