У меня есть почтовый сервер Postfix, работающий по адресу mail.123.com
(IP, например, 1.1.1.1), затем у меня есть сайт books.com
(IP, например, 2.2.2.2) и его DNS-записи выглядят так:
- Запись MX как mail.123.com
- Запись mail.books.com имеет тот же IP, что и books.com - у меня этот поддомен есть только из-за проверки SPF, но это неважно для моей проблемы)
Теперь, если я отправлю почту[email protected]извне доставляется сообщение.
Если я отправляю почту [email protected]
извне, сообщение НЕ доставляется.
Если я отправляю почту [email protected]
из localhost
, mail.123.com
сообщение ДОСТАВЛЯЕТСЯ. (через telnet localhost 25
)
/var/log/mail.err
пусто, /var/log/mail.log
не содержит ничего о неполученной почте или что-то в этом роде.
Gmail (третий адрес электронной почты отправителя) не получает никаких сообщений об ошибках от почтового сервера, например, сообщение не доставлено.
В чем может быть проблема?
Нужны ли Postfix какие-то специальные настройки, если почтовый сервер настроен как MX-запись для другого домена?
Теперь у меня есть только «виртуальный (хост почты) домен» mail.books.com в
virtual_alias_domains
и virtual_alias_maps
как /etc/postfix/main.cf
здесь сказаноДокументация Ubuntu: PostfixBasicSetupHowto
Я не могу отследить, почему не работает получение почты для моего виртуального домена :(
Кстати, интересно, если бы у меня не было записи MX для books.com, gmail даже не жаловался бы при отправке почты на[email protected]!!! Но потом я понял, что не установил запись MX, поэтому установил ее, но все равно не работает... и прошло уже около 2-3 часов, так что я не думаю, что это проблема записи MX (из-за медленного обновления кэша DNS).
решение1
Из того, что вы пишете, следует, что у вас есть запись MX для books.com, но вы пытаетесь отправлять письма на[email protected].
Которые должны быть[email protected]или у вас должен быть MX для mail.books.com.
решение2
Несколько дней я боролся с этим и в конце концов понял, что мой интернет-провайдер (Comcast) блокирует порты 25, 465 и 587.
Моим решением было использовать AWS SES и пересылать содержимое сообщения по HTTP на настраиваемый порт.