Я установил Postfix на машине с Ubuntu 20.04. Однако я не уверен, где я должен использовать поддомен, а где домен. Назовем их mail.example.com
и example.com
соответственно.
Система является нулевым клиентом, отправляющим электронные письма, но не получающим их (, реализованным через inet_interfaces = loopback-only
в/etc/postfix/main.cf
). Я намерен отправлять сообщения только с noreply@example.com
.
@ IN MX 0 mail.example.com
.@
и mail
указывают на сервер Postfix./etc/postfix/main.cf
, относятся кmail.example.com
:smtpd_tls_cert_file=/etc/letsencrypt/live/mail.example.com/fullchain.pem
и smtpd_tls_key_file=/etc/letsencrypt/live/mail.example.com/privkey.pem
.smtp_generic_maps = hash:/etc/postfix/generic
я переписываю user@hostname
в noreply@mail.example.com
в /etc/postfix/main.cf
.masquerade_domains = example.com
в /etc/postfix/main.cf
, чтобы заменить mail.example.com
в noreply@mail.example.com
на example.com
. Почему-то это не работает. Письма по-прежнему приходят от отправителя noreply@mail.example.com
.Соответственно вопросы:
@
или mail
в записи MX?mail.example.com
или на example.com
?/etc/postfix/generic
сначала преобразовать user@hostname
в noreply@mail.example.com
или непосредственно в noreply@example.com
?Самый правильный способ сделать это в настоящее время — создать учетную запись на соответствующей почтовой службе, которая полностью настроена для обслуживания example.com
. (Конечно, это может быть ваш собственный сервер, это не имеет значения. )Затем на нулевом хосте вы настраиваете почтовый сервер только как смарт-хост с аутентификацией SASL.
Хотя настроить Postfix таким образом вполне возможно (, существует множество руководств, в том числе собственное)Postfix, но я думаю, что Postfix не подходит для такого использования. Рассмотрите возможность использования nullmailer
, который подходит именно для систем, которые ничего не делают с почтой, кроме отправки некоторых системных уведомлений.
Если это невозможно, настройте DNS следующим образом.:
example.com
Запись MX указывает на соответствующую почтовую службу. Это не имеет ничего общего с поддоменами.nullhost.example.com. MX 10.
, то есть указывать в никуда. Это явное указание на то, что вы не собираетесь получать почту для anything@nullhost.example.com
. Это не требуется, если вы защищаете службу smtpd нулевого хоста от внешних подключений (брандмауэра tcp/25
, прослушиваете только localhost:25
и т.д. ); однако явное всегда лучше неявного.example.com
в качестве домена отправителя, поэтому его почта должна соответствовать настройкам DMARC для этого домена. В противном случае корректно ведущие себя получатели будут отбрасывать свою почту.Этот последний пункт, DMARC, может значительно усложнить ситуацию. Если он установлен безопасно, что означает, что запись выглядит как _dmarc.example.com. TXT "v=DMARC1; p=reject; pct=100;..."
, вам необходимо настроить подпись SPF и DKIM на нулевом хосте. SPF очень прост, просто добавьте «a:nullhost.example.com» в запись SPF TXT. DKIM сложен, вам нужно создать дополнительную пару ключей DKIM, выбрать селектор (nullhost
, вероятно, подойдет ), установить его общедоступную пару в DNS как nullhost._domainkey.example.com. TXT "... key data..."
. Затем настройте пение с соответствующим закрытым ключом непосредственно на нулевом хосте (и используйте выбранный селектор ), я бы использовал для этого opendkim. Я упоминал, что использование смарт-хоста является предпочтительным методом?
И ваши вопросы.
@ MX
, она же example.com. MX
, должна быть направлена на m ail e x changer (example.com, которая принимает почту дляsomething@example.com
). Это не имеет никакого отношения к почте для любого поддомена. Каждый субдомен является почтовым доменом сам по себе.