Хост: Цифровой океан
ОПЕРАЦИОННЫЕ СИСТЕМЫ: CentOS
У меня есть сертификат SSL, который распространяется на мой домен.
$ certbot certificates
производит этот вывод.
Found the following certs:
Certificate Name: example.com
Domains: example.com www.example.com
Expiry Date: 2020-04-12 21:20:31+00:00 (VALID: 86 days)
Certificate Path: /etc/letsencrypt/live/example.com/fullchain.pem
Private Key Path: /etc/letsencrypt/live/example.com/privkey.pem
Я установил postfix
и я считаю, что мне нужно добавить mail.example.com к моему сертификату.
Я пытался добавить mail.example.com к моему сертификату с помощью этой команды,
$ sudo certbot certonly --standalone -d mail.example.com
К сожалению, это вызвало эту ошибку,
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator standalone, Installer None
Starting new HTTPS connection (1): acme-v02.api.letsencrypt.org
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for mail.example.com
Waiting for verification…
Challenge failed for domain mail.example.com
http-01 challenge for mail.example.com
Cleaning up challenges
Some challenges have failed.
IMPORTANT NOTES:
The following errors were reported by the server:
Domain: mail.example.com
Type: dns
Detail: DNS problem: NXDOMAIN looking up A for mail.example.com
Похоже, certbot пытается установить mail.example.com используя запись A. О Digital Ocean в разделе записей моего домена mail.example.com был создан как запись MX, а не как запись A.
Делай это так:
$ sudo certbot -d mail.example.com --manual --preferred-issues dns certonly
Будет напечатана запись DNS TXT (только не нажимайте пока ввод), опубликуйте ее в своем DNS и подождите, пока вы не убедитесь, что запись TXT может быть прочитана извне вашего DNS, затем нажмите Enter, и она будет проверена.
Вы правы, что для доставки почты нужна MX-запись. НО: mail.testsite.com - это полное имя хоста. И вам нужно сообщить всем, кто хочет доставлять вам почту, какой IP-адрес у этого имени хоста. Таким образом, вам также нужна запись A, указывающая на сервер, на который вы хотите получать почту.
Создайте запись a и укажите свой почтовый сервер и запустите certbot с этого компьютера. Убедитесь, что веб-сервер отвечает на порт 80 для mail.testsite.com, чтобы проверка прошла успешно. Тогда все заработает.