Настройка 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. Если вы обнаружите какую-либо ошибку выше, пожалуйста, используйте форму комментария ниже, чтобы сообщить.