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

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

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

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

Bash
sudo certbot certonly --manual --preferred-challenges=dns --email dima@tobits.ru --server https://acme-v02.api.letsencrypt.org/directory --agree-tos -d tobits.ru -d *.tobits.ru

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

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

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

Пример:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Requesting a certificate for tobits.ru and *.tobits.ru

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please deploy a DNS TXT record under the name:

_acme-challenge.tobits.ru.

with the following value:

aPt8oawyqNXWvAAO287Qd9qgLYC0pUU4ZjBUSnVdw0M

Before continuing, verify the TXT record has been deployed. Depending on the DNS
provider, this may take some time, from a few seconds to multiple minutes. You can
check if it has finished deploying with aid of online tools, such as the Google
Admin Toolbox: https://toolbox.googleapps.com/apps/dig/#TXT/_acme-challenge.tobits.ru.
Look for one or more bolded line(s) below the line ';ANSWER'. It should show the
value(s) you've just added.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Press Enter to Continue

После чего добавляеи ТХТ запись: _acme-challenge сгенерированный токен aPt8oawyqNXWvAAO287Qd9qgLYC0pUU4ZjBUSnVdw0M

Нужно подождать пару минут чтобы запись распространилась по другим ДНС серверам

Проверяем:

Bash
dig @1.1.1.1 _acme-challenge.tobits.ru TXT

; <<>> DiG 9.18.12-0ubuntu0.22.04.1-Ubuntu <<>> @1.1.1.1 _acme-challenge.tobits.ru TXT
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11343
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;_acme-challenge.tobits.ru.	IN	TXT

;; ANSWER SECTION:
_acme-challenge.tobits.ru. 86400 IN	TXT	"aPt8oawyqNXWvAAO287Qd9qgLYC0pUU4ZjBUSnVdw0M"

;; Query time: 12 msec
;; SERVER: 1.1.1.1#53(1.1.1.1) (UDP)
;; WHEN: Mon Jun 19 10:08:10 MSK 2023
;; MSG SIZE  rcvd: 110

из вывода видно что запись успешно читается. нажимаем Enter

Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/tobits.ru-0001/fullchain.pem
Key is saved at:         /etc/letsencrypt/live/tobits.ru-0001/privkey.pem
This certificate expires on 2023-09-17.
These files will be updated when the certificate renews.

NEXT STEPS:
- This certificate will not be renewed automatically. Autorenewal of --manual certificates requires the use of an authentication hook script (--manual-auth-hook) but one was not provided. To renew this certificate, repeat this same certbot command before the certificate's expiry date.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Сертификаты успешно добавлены.

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

Bash
sudo certbot certificates

Saving debug log to /var/log/letsencrypt/letsencrypt.log

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Found the following certs:
  Certificate Name: tobits.ru-0001
    Serial Number: 4c7bca2cbe30fda34b280d9d690f0cd2c29
    Key Type: ECDSA
    Domains: tobits.ru *.tobits.ru
    Expiry Date: 2023-09-17 06:08:18+00:00 (VALID: 89 days)
    Certificate Path: /etc/letsencrypt/live/tobits.ru-0001/fullchain.pem
    Private Key Path: /etc/letsencrypt/live/tobits.ru-0001/privkey.pem

Основано на источнике: https://infoit.com.ua/linux/ubuntu/nastrojka-lets-encrypt-wildcard-ssl-v-ubuntu-20-04-18-04/

Добавить комментарий