Как получить wildcard ssl сертификат от letsencrypt

widcard ssl letsencrypt

Совсем недавно letsencrypt добавил возможность получения ssl-сертификатов wildcard типа для доменов. До этого, все сертификаты от letsencrypt выдавались только для доменов и поддоменов, что могло быть довольно хлопотно несмотря на удобство работы с certbot по обновлению и поддержке всего этого хозяйства. А поскольку получить сертификат от letsencrypt можно совершенно бесплатно, без регистраций и смс, то это поднимает важность этого момента на небывалый уровень.

Итак, Как получить wildcard ssl сертификат от letsencrypt?

Во первых стандартный certbot, выписывал все сертификаты до этого не умеет пока выписывать wildcard сертификаты, так что нужно качать новый.

wget https://dl.eff.org/certbot-auto
chmod 0755 certbot-auto

Теперь можно запускать самого бота

./certbot-auto certonly --server https://acme-v02.api.letsencrypt.org/directory --manual --preferred-challenges dns -d *.domain.com

Бот начнет задавать вопросы. Поскольку выбрана опция preferred-challenges dns он попросит создать для домена соответствующую TXT запись в DNS


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

99EjBy71F_RWab8pepBc499GCHPAx1EVCd6pqLDlI3s

Before continuing, verify the record is deployed.
——————————————————————————-
Press Enter to Continue

Это средство для валидации того, что вы действительно являетесь владельцем указанного вами домена. Прописываем нужную запись в ДНС. Проверяем, что с сервера она видна по запросу

dig _acme-challenge.domain.com IN TXT

Если все нормально то жмем enter и едем дальше. Бот убеждается, что нужные записи в ДНС появились и выписывает вам сертификат. Вот так все очень просто.
Посмотреть список сертификатов можно следующей коммандой


./certbot-auto certificates
Saving debug log to /var/log/letsencrypt/letsencrypt.log

——————————————————————————-
Found the following certs:
Certificate Name: domain.com-0001
Domains: *.domain.com domain.com
Expiry Date: 2018-06-16 17:01:40+00:00 (VALID: 71 days)
Certificate Path: /etc/letsencrypt/live/domain.com-0001/fullchain.pem
Private Key Path: /etc/letsencrypt/live/domain.com-0001/privkey.pem
——————————————————————————-

Особенностью беплатных сертификатов от letsencrypt является, то что они выдаются на 3 месяца, так что надо почаще следить за актуальностью установленных сертификатов.
По необходимости можно поставить бота в крон чтобы он обновлял сертификаты автоматом. Бот также умеет прописывать ныжные блоки в конфиги для распространенных веб-серверов, apache и nginx. В общем очень удобная и полезная в наше время штука. Желаю вам освоить ее и пользоваться с удовольствием.