Postfix не отправляет почту, жалуясь на «Хост или имя домена не найдено»

10

Я следовал этим инструкциям для отправки почты, и вот журнал Postfix:

Sep 26 00:46:24 tshepang postfix/smtpd[5728]: 8EE2464931: client=localhost[127.0.0.1]
Sep 26 00:47:44 tshepang postfix/cleanup[5810]: 8EE2464931: message-id=<20110925224624.8EE2464931@tshepang>
Sep 26 00:47:44 tshepang postfix/qmgr[5772]: 8EE2464931: from=<tshepang@gmail.com>, size=350, nrcpt=1 (queue active)
Sep 26 00:48:04 tshepang postfix/smtp[5859]: 8EE2464931: to=<tshepang.test@gmail.com>, relay=none, delay=127, delays=107/0.01/20/0, dsn=4.4.3, status=deferred (Host or domain name not found. Name service error for name=gmail.com type=MX: Host not found, try again)
Sep 26 00:48:39 tshepang postfix/smtpd[5728]: disconnect from localhost[127.0.0.1]

Также это может быть актуально (из " /etc/postfix/main.cf "):

myhostname = tshepang
mydestination = tshepang, localhost
relayhost = 
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
inet_interfaces = all
inet_protocols = all

Я запускаю это на Debian 6.

tshepang
источник
Проверьте ваш на /etc/resolv.confналичие недействительных / неотвечающих распознавателей. Попробуй сделать host gmail.com; посмотрим, получишь ли ты результаты.
laebshade
host gmail.comдает gmail.com has address 74.125.233.24на линии, а затем ;; connection timed out; no servers could be reachedна второй. Но это странно, потому что я могу пинговать это.
Чепанг
3
Как насчет host -t mx gmail.com? Вы правы, хотя, это несколько странно.
Шадур
1
Еще одна мысль: можете ли вы добавить свой /etc/resolv.conf к вопросу?
Шадур
1
Да уж. Знаки указывают на хитрость resolv.conf, возможно, из-за network-managerили resolvconfне совсем игры в мяч.
Шадур

Ответы:

4

Повышение пара вопросов, упомянутых в комментариях, которые могут помочь выяснить, что происходит:

  • Можете ли вы добавить свой /etc/resolv.confвопрос? Вывод, который вы описываете host gmail.com, немного подозрительный и может указывать на проблему с вашим сервером имен.

  • Какой ответ, если таковой имеется, вы получаете от команды host -t mx gmail.com?

  • Вы успешно отправляли почту на другие системы с этого компьютера?

  • Есть ли у вашего интернет-провайдера какая-то явная политика, которая требует от вас использовать его сервер в качестве ретранслятора почты? Если они это сделают, брандмауэр, блокирующий запросы поиска MX, может объяснить странное поведение host gmail.comтайм-аута после получения частично правильного результата.

Shadur
источник
Я согласен с этим. Это больше похоже на проблему с DNS, чем на проблему с Postifx (особенно из-за no servers could be reachedошибки от host).
Багамат
4

Раньше у меня была такая же проблема:

root@medusa:~# postqueue -p
-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
079AC700080B      357 Wed Apr  3 13:47:47  root@medusa.yyyy.cz
(Host or domain name not found. Name service error for name=xxxx.cz type=MX: Host not found, try again)
                                         hmls@xxxx.cz

..

root@medusa:~# host -t MX xxxx.cz
xxxx.cz mail is handled by 10 e2sgw01.xxxx.cz.
xxxx.cz mail is handled by 10 e2sgw02.xxxx.cz.

..

root@medusa:~# telnet e2sgw01.xxxx.cz. 25
Trying 217.77.161.168...
Connected to e2sgw01.xxxx.cz.
Escape character is '^]'.
220 e2sgw01.xxxx.cz ESMTP Postfix

Проблема была в /var/spool/postfix/etc/resolv.conf файле (в изолированном). Посмотри на это.

tloudev
источник
1

Попробуйте отключить свойство chroot, чтобы оно не изменялось /etc/postfix/master.cfкак описано здесь.

# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       -       -       -       smtpd

в

# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       n       -       -       smtpd
Филипп Гачу
источник
0

Похоже, что вы находитесь за прокси: адрес gmail.com разрешен, но команда ping не выполняется. Вы можете попробовать напрямую подключиться к SMTP в gmail:

nc -w 1 gmail.com 25 ; echo $?

если он отображает «1», вы не можете подключиться, возможно, это связано с фильтрацией безопасности.

Arcadien
источник
0

Как отметил @Shadur, эта проблема может быть связана с вашим провайдером (или сетью, в которой установлен ваш сервер). Если есть ограничения безопасности для порта SMTP (порт № 25), серверы MX не могут быть достигнуты через этот порт.

Вместо этого вы можете попробовать использовать SMTP через SSL-порт (ssmtp, номер порта 465). Для этого отредактируйте /etc/postfix/master.cfфайл, закомментируйте строку smtp и добавьте вместо нее строку ssmtp:

# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
#smtp      inet  n       -       -       -       -       smtpd
ssmtp      inet  n       -       -       -       -       smtpd

Чтобы проверить, распознается ли этот пост с этим именем на вашем компьютере, вы можете сделать:

$>cat /etc/services | grep smtp
smtp        25/tcp      mail
ssmtp       465/tcp     smtps       # SMTP over SSL
Фабьен Кватраво
источник