Я использую mailu
(почтовый сервер докеров) как универсальное решение для почтового сервера: pop3 / imap / smtp с веб-интерфейсом и так далее. Я могу отправлять электронные письма со своего виртуального диска на любой другой адрес электронной почты, и я могу отправлять электронные письма из одного почтового ящика в другой, используя тот же сервер (например, из hello@example.com
к bye@example.com
). Однако, когда я отправляю текст из gmail
(или любой другой почтовый сервер за пределами моего vds) с моим веб-сервером вообще не связываются, и тогда у меня появляется сообщение «получатель не найден». Это случается время от времени, и я не знаю причин. Мой домен thefx.co
и в нем есть все необходимые записи:
$ dig @8.8.8.8 thefx.co mx
; <<>> DiG 9.13.3 <<>> @8.8.8.8 thefx.co mx
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45588
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;thefx.co. IN MX
;; ANSWER SECTION:
thefx.co. 1799 IN MX 0 thefx.co.
thefx.co. 1799 IN MX 10 mailstore1.secureserver.net.
thefx.co. 1799 IN MX 1 smtp.secureserver.net.
;; Query time: 66 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Oct 27 18:34:54 MSK 2018
;; MSG SIZE rcvd: 117
И домен конечно доступен. Но иногда (и теперь тоже) другие почтовые серверы не могут связаться с моим:
Если я тест мой почтовый ящик (например, noreply@thefx.co
) сервис говорит:
X record found: thefx.co (Priority 0)
MX record found: smtp.secureserver.net (Priority 1)
MX record found: mailstore1.secureserver.net (Priority 10)
Connecting to thefx.co
Connect to thefx.co failed
Connecting to smtp.secureserver.net
Connected to smtp.secureserver.net
Dialog with smtp.secureserver.net ok
------------------------------------------------------------
220 p3plibsmtp01-08.prod.phx3.secureserver.net bizsmtp ESMTP server ready
HELO verifyemailaddress.org
250 p3plibsmtp01-08.prod.phx3.secureserver.net hello [209.126.119.123], pleased to meet you
MAIL FROM: <noreply@verifyemailaddress.org>
250 2.1.0 <noreply@verifyemailaddress.org> sender ok
RCPT TO: <noreply@thefx.co>
550 5.1.1 <noreply@thefx.co> Recipient not found. <http://x.co/irbounce>
QUIT
221 2.0.0 p3plibsmtp01-08.prod.phx3.secureserver.net bizsmtp closing connection
------------------------------------------------------------
Email address noreply@thefx.co rejected
Я понятия не имею, почему никто не может подключиться к моему серверу, но если я попытаюсь узнать, открыты ли я порты или нет, я вижу, что они действительно открыты:
$ nmap thefx.co
Starting Nmap 7.70 ( https://nmap.org ) at 2018-10-27 18:48 MSK
Nmap scan report for thefx.co (185.246.155.33)
Host is up (0.044s latency).
Not shown: 986 closed ports
PORT STATE SERVICE
25/tcp filtered smtp
465/tcp open smtps
587/tcp open submission
993/tcp open imaps
995/tcp open pop3s
Nmap done: 1 IP address (1 host up) scanned in 1.87 seconds
Интересно, что со своего домашнего компьютера я вижу, что 25/tcp
открывается и фильтруется, но я не вижу его из nmap
вывод на мой VDS (откуда он)? Если я telnet
эти порты, все они открыты успешно.
Я не разоблачаю 25
порт для mailu
из контейнера докеров, наверное, это и есть причина проблемы.
UPD: я открыл 25
порт для mailu
и сейчас gmail
отправляет письмо успешно, и я получаю его на своей стороне. Зачем это было нужно?
У вас есть несколько записей MX. Один указывает на ваш почтовый сервер, два других - на почтовые серверы GoDaddy.
Ваш тестовый почтовый сервер на verifyemailaddress.org отправился на почтовые серверы GoDaddy, а не на ваш собственный, потому что у вас не был открыт порт 25, и, следовательно, ваша запись MX не могла использоваться.
Непонятно, почему у вас есть записи MX, указывающие на GoDaddy, если вы сами размещаете свою почту.
Вам следует удалить записи MX, которые указывают на неправильные почтовые серверы.