Postfix nie wysyła poczty, narzekając na „Nie znaleziono nazwy hosta lub domeny”


10

Postępowałem zgodnie z tymi instrukcjami , aby wysłać pocztę, a oto dziennik 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]

Może to być również istotne (z „ /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

Używam tego na Debianie 6.


Sprawdź, czy nie ma /etc/resolv.confniepoprawnych / niereagujących resolwerów. Spróbuj zrobić host gmail.com; sprawdź, czy uzyskasz wyniki.
laebshade

host gmail.comdaje gmail.com has address 74.125.233.24na linii, a następnie ;; connection timed out; no servers could be reachedna drugim. Ale to dziwne, ponieważ mogę pingować.
tshepang

3
Jak o host -t mx gmail.com? Masz rację, to trochę dziwne.
Shadur

1
Kolejna myśl: czy możesz dodać swój plik /etc/resolv.conf do pytania?
Shadur

1
Tak. Znaki wskazują na podejrzaną resolv.conf, prawdopodobnie z powodu network-managerlub resolvconfniezupełnie gry w piłkę.
Shadur

Odpowiedzi:


4

Ulepszając kilka pytań wymienionych w komentarzach, które mogą pomóc dowiedzieć się, co się dzieje:

  • Czy możesz dodać swoje /etc/resolv.confpytanie? Dane wyjściowe, które opisujesz, host gmail.comsą nieco podejrzane i mogą wskazywać na problem z serwerem nazw.

  • Jaką odpowiedź otrzymujesz z polecenia host -t mx gmail.com?

  • Czy pomyślnie wysłałeś pocztę do innych systemów z tego komputera?

  • Czy twój dostawca usług internetowych ma jakieś wyraźne zasady, które wymagają, abyś używał swojego serwera jako przekaźnika poczty? Jeśli tak, zapora blokująca żądania wyszukiwania MX może wyjaśnić dziwne zachowanie przekroczenia limitu host gmail.comczasu po uzyskaniu częściowego poprawnego wyniku.


Zgadzam się z tym. Wygląda bardziej na problem DNS niż na problem z Postifx (szczególnie z powodu no servers could be reachedbłędu z host).
bahamat

4

Miałem ten sam problem:

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

Problem był w pliku /var/spool/postfix/etc/resolv.conf (chrootowany). Spójrz na to.


1

Spróbuj wyłączyć właściwość chroot, aby nie została zmieniona w sposób /etc/postfix/master.cfopisany tutaj

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

do

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

0

Wygląda na to, że jesteś za serwerem proxy: adres gmail.com został rozwiązany, ale polecenie ping nie powiodło się. Możesz spróbować połączyć się bezpośrednio z SMTP Gmaila za pomocą:

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

jeśli echo „1”, nie można się połączyć, prawdopodobnie z powodu filtrowania zabezpieczeń.


0

Jak wskazał @Shadur, ten problem może być spowodowany przez twojego usługodawcę internetowego (lub sieć, w której jest zainstalowany serwer). Jeśli istnieją ograniczenia bezpieczeństwa na porcie SMTP (numer portu 25), serwery MX nie mogą być osiągnięte przez ten port.

Możesz zamiast tego spróbować użyć SMTP przez port SSL (ssmtp, numer portu 465). Aby to zrobić, edytuj /etc/postfix/master.cfplik, skomentuj linię smtp i dodaj zamiast niej linię ssmtp:

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

Aby sprawdzić, czy ten post jest rozpoznawany z tą nazwą na twoim komputerze, możesz:

$>cat /etc/services | grep smtp
smtp        25/tcp      mail
ssmtp       465/tcp     smtps       # SMTP over SSL
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.