Назад | Перейти на главную страницу

Постфикс: возврат почты (проблема с обратным DNS)

У меня проблема с Postfix. Я получаю это с адреса электронной почты:

to=<mail@domain.tld>, relay=mail.domain.tld[IP_ADDRESS]:25, delay=3, delays=0/0/2.5/0.52, dsn=5.7.1, status=bounced (host mail.domain.tld[IP_ADDRESS] said: 550 5.7.1 <mail@domain.tld>... Fix reverse DNS for MY_SERVER_IP_ADDRESS,or use your ISP server (in reply to RCPT TO command))

Я что-то прочитал, и это должно быть связано с моим именем хоста HELO / EHLO. Postfix работает на том же сервере, на котором скрипт отправляет почту, с тем же IP-адресом. Когда я набираю имя хоста -f, ubuntu возвращает «localhost». Но в / etc / hostname у меня есть «domain.tld» (один из моих доменов).

Вот мой файл main.cf:

### Postfix SMTP Server
myhostname = $mydomain
mydomain = domain.tld
myorigin = $mydomain
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
smtpd_banner = $myhostname ESMTP $mail_name (multiformeingegno)
biff = no
append_dot_mydomain = no
readme_directory = no
relayhost = 
inet_interfaces = all
local_transport = error:local delivery is disabled

mydestination = domain.tld, localhost.domain.tld, localhost
mynetworks = 127.0.0.0/8 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_protocols = all

Предположим, что имя вашего почтового сервера multiformeingegno.it (myhostname значение в постфиксе), и у вашего сервера два IP-адреса 1.2.3.4 и 1.2.3.5 и вы отправляете письмо от user@otherdomain.tld, всегда рекомендуется настраивать все перечисленное ниже.

  • A запись multiformeingegno.it указывает на 1.2.3.4 и 1.2.3.5
  • Запись PTR для 1.2.3.4 и 1.2.3.5 указывает на multiformeingegno.it
  • SPF запись для otherdomain.tld должен включать как 1.2.3.4 и 1.2.3.5
  • otherdomain.tld должен иметь надлежащий MX запись или A запись

Надеюсь, это было ясно. Чтобы прояснить вам еще одну вещь, имя вашей системы не имеет здесь никакого отношения.

Чтобы исправить это, вам необходимо убедиться, что ваша PTR-запись для IP-адреса вашего сервера соответствует объявленному имени хоста вашего сервера.

Ваш хостинг-провайдер (или тот, кто предоставил вам IP-адрес) должен быть в состоянии помочь вам в этом, поскольку обратное администрирование DNS (обычно) осуществляется контролирующим интернет-провайдером, обычно определяемым в WHOIS.

По сути, какой бы IP ни разрешил ваш сервер должен иметь обратный DNS, указывающий на тем же имя хоста, или как минимум Postfix's myhostname переменная конфигурации, то есть имя, которое она использует при отправке HELO запрос к другому SMTP-серверу.

Это больше, чем просто хорошая практика, когда вы запускаете общедоступный почтовый сервер, поскольку проверка адресов PTR является частью настройки защиты от спама многих администраторов почтовых серверов (включая меня) из-за того, что многие спамеры используют динамические IP-адреса или несовпадающие A / Комбинации PTR.

Чуть более подробное объяснение таково:

  • Сообщение об отказе, которое вы видите, создается получение MTA в mail.domain.tld.
  • Этот сервер видит, что ваш сервер Postfix использует IP 1.2.3.4 (Я использовал заполнитель, которого вы не указали).
  • Принимающий MTA проверяет запись RDNS на наличие 1.2.3.4 против имени хоста, из которого он выглядит согласно HELO он получает.
  • Если RDNS совпадает, это показывает, что вы являетесь ответственным администратором почтового сервера, и почта проходит эту конкретную проверку.
  • Быть в курсе что это всего лишь одна проверка, и ваше сообщение может подвести другие.

Пример из реальной жизни:

~ $ nslookup vps.vikingserv.net
Server:     192.168.50.11
Address:    192.168.50.11#53

Non-authoritative answer:
Name:   vps.vikingserv.net
Address: 31.3.251.12

~ $ nslookup 31.3.251.12
Server:     192.168.50.11
Address:    192.168.50.11#53

Non-authoritative answer:
12.251.3.31.in-addr.arpa    name = vps.vikingserv.net.