sendmail: не доходит почта свой домен

Интересная ситуация: будь то хардкорный sendmail или exim – почта уходит в интернеты на ура – на разные домены, кроме своего. Предполагается, что вы используете чужую почту, будь то гугл или яндекс, или что нить ещё, привязанную на ваш домен.

Возникает обычно ошибка наподобие:

Feb 8 22:14:54 domain sendmail[14575]: p18JEqq8014575: to=rux@domain.com,
ctladdr=www-data (33/33), delay=00:00:02, xdelay=00:00:01,
mailer=relay, pri=30937, relay=[127.0.0.1] [127.0.0.1], dsn=5.1.1, stat=User unknown
Feb 8 22:14:55 domain sm-mta[14580]: p18JEstD014580: ... User unknown

А в чём собственно проблема? Почему не работает из каробки?

Я для себя уяснил следующие правила:

  • /etc/mailname – должен совпадать с доменом сервера [domain.com]
  • /etc/hostnameне должен совпадать с доменом сервера [domain.ru] – это может быть зеркало на другом домене или домен с префиксом
  • в случае с exim4 – выполните
    # dpkg-reconfigure exim4-config
    выбрав в конфигураторе первый пункт “internet site; mail is send and received directly using SMTP”
  • добавьте reverse-dns запись для имени, который указали в /etc/mailname [domain.com], разумеется, с айпи сервера – это отключит многие жёсткие спам-фильтры, заметил у мэйл.ру