Postfix и поддомены

Я установил Postfix на машине с Ubuntu 20.04. Однако я не уверен, где я должен использовать поддомен, а где домен. Назовем их mail.example.comи example.comсоответственно.

Система является нулевым клиентом, отправляющим электронные письма, но не получающим их (, реализованным через inet_interfaces = loopback-onlyв/etc/postfix/main.cf). Я намерен отправлять сообщения только с noreply@example.com.

  • Запись MX — @ IN MX 0 mail.example.com.
  • Записи A для @и mailуказывают на сервер Postfix.
  • Сертификаты TLS, упомянутые в /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?
  • Должны ли сертификаты TLS ссылаться на mail.example.comили на example.com?
  • Должен ли /etc/postfix/genericсначала преобразовать user@hostnameв noreply@mail.example.comили непосредственно в noreply@example.com?
0
задан 25 September 2021 в 20:36
1 ответ

Самый правильный способ сделать это в настоящее время — создать учетную запись на соответствующей почтовой службе, которая полностью настроена для обслуживания 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. Я упоминал, что использование смарт-хоста является предпочтительным методом?


И ваши вопросы.

  • Вы не тот сервер, (вы сказали, что эта система не должна получать почту). Таким образом, вам не нужен сертификат сервера TLS. Вы можете настроить что-то с помощью сертификата клиента TLS, поэтому при подключении к вашему смарт-хосту или другим серверам через TLS вы сможете представить его. Но зачем тебе это?
  • Запись "apex" @ MX, она же example.com. MX, должна быть направлена ​​на m ail e x changer (example.com, которая принимает почту дляsomething@example.com). Это не имеет никакого отношения к почте для любого поддомена. Каждый субдомен является почтовым доменом сам по себе.
  • Выбор способа настройки перезаписи адресов зависит от вас. Единственное, что видит внешний мир, это конечный результат. Так зачем делать это в два этапа?
2
ответ дан 26 September 2021 в 06:28

Теги

Похожие вопросы