Problemi di risoluzione di Sendmail e nslookup

Sul mio server di Ubuntu ho cercato di mettere in function la function PHP mail () installando sendmail (ho anche installato postfix, ma ho rinunciato ad esso). Tuttavia, quando cerco di submit la posta viene in coda con il seguente errore in /var/log/mail.log :

 sm-mta[xxx]: gethostbyaddr(xxxx) failed: x 

Quando ho eseguito un nslookup (ad esempio, nslookup gmail.com ) ha detto che non è stato ansible risolvere e la connessione è scaduta. Dopo aver passato tutto questo giorno e provando varie cose ho deciso di mettere i server di nome del mio dominio nel mio file di interfacce, come per: https://askubuntu.com/a/331636

Questo mitigava il problema che avevo con nslookup ma ricevo ancora lo stesso errore nei registri quando si tenta di submit la posta, tranne che il mio indirizzo IP pubblico non è mostrato, solo quello privato. per esempio

 sm-mta[xxx]: gethostbyaddr(178.xxx) failed: x # public IP error not showing anymore sm-mta[xxx]: gethostbyaddr(10.xxx) failed: x # private IP error still showing 

Ho guardato molte documentazioni su questo e non sono ancora sicuro di cosa sto facendo male. Ho controllato che sendmail sta utilizzando la port 25. Dal momento che sto solo inviando posta in output devo preoccuparmi dei record DNS relativi a MX per il mio server?


/etc/resolv.conf :

 # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 2001:4860:4860::8844 nameserver 2001:4860:4860::8888 nameserver 8.8.8.8 

/etc/dhcp/dhclient.conf :

 option rfc3442-classless-static-routes code 121 = arrays of unsigned integer 8; #send host-name "andare.fugue.com"; send host-name = gethostname(); #send dhcp-client-identifier 1:0:a0:24:ab:fb:9c; #send dhcp-lease-time 3600; #supersede domain-name "fugue.com home.vix.com"; #prepend domain-name-servers 127.0.0.1; request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, domain-search, host-name, dhcp6.name-servers, dhcp6.domain-search, netbios-name-servers, netbios-scope, interface-mtu, rfc3442-classless-static-routes, ntp-servers, dhcp6.fqdn, dhcp6.sntp-servers; #require subnet-mask, domain-name-servers; #timeout 60; #retry 60; #reboot 10; #select-timeout 5; #initial-interval 2; #script "/etc/dhcp3/dhclient-script"; #media "-link0 -link1 -link2", "link0 link1"; #reject 192.33.137.209; #alias { # interface "eth0"; # fixed-address 192.5.5.213; # option subnet-mask 255.255.255.255; #} #lease { # interface "eth0"; # fixed-address 192.33.137.200; # medium "link0 link1"; # option host-name "andare.swiftmedia.com"; # option subnet-mask 255.255.255.0; # option broadcast-address 192.33.137.255; # option routers 192.33.137.250; # option domain-name-servers 127.0.0.1; # renew 2 2000/1/12 00:00:01; # rebind 2 2000/1/12 00:00:01; # expire 2 2000/1/12 00:00:01; #} 

etc/hosts :

 # Your system has configured 'manage_etc_hosts' as True. # As a result, if you wish for changes to this file to persist # then you will need to either # a.) make changes to the master file in /etc/cloud/templates/hosts.tmpl # b.) change or remove the value of 'manage_etc_hosts' in # /etc/cloud/cloud.cfg or cloud-config from user-data 127.0.1.1 domain.name 127.0.0.1 localhost.localdomain localhost 178.xxx domain.name # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts 

  • Qual è la posta corretta impostata per più domini su un server?
  • Suggerimento del server di posta per le caselle di posta in entrata grandi
  • cofigure bind per google apps mx record
  • 3 Solutions collect form web for “Problemi di risoluzione di Sendmail e nslookup”

    Per quanto riesco a vedere, vuoi solo submit delle mail. In questo caso non è necessario impostare un record MX per il server, in quanto il server di posta elettronica non è responsabile di alcun dominio.

    Se capisco il tuo problema, vuoi davvero un MTA che trasmette le tue mail.

    La creazione di un server di posta elettronica a pieno titolo per questo scopo è overkill; quindi qui di seguito sono alcune alternative: https://unix.stackexchange.com/questions/1449/lightweight-outgoing-smtp-server

    Se vuoi avere un vero server di posta in each caso, il postfix sarebbe preferibile: https://askubuntu.com/questions/457003/setting-up-a-send-only-mail-server

    Tuttavia, il problema del DNS è probabilmente indipendente da questo.

    Ovviamente è auspicabile che tutti gli IP ei nomi host utilizzati sul server possano essere risolti. Per raggiungere questo objective, è necessario un nameserver locale per i tuoi indirizzi (e nomi) locali che inoltrano qualsiasi altra richiesta a un altro server di nomi.

    Ma ci potrebbe essere un modo più semplice: le ricerche DNS eseguite dal server di posta dovrebbero dipendere dai domini dei mittenti e dei destinatari di posta elettronica. Dovresti verificare se questi sono corretti e limitarsi a nomi, che possono essere risolti. Forse è stato configurato l'indirizzo From-point per indicare un dominio definito localmente?

    Per eseguire il debug, è ansible provare a submit messaggi dalla row di command innanzitutto e passare al mail di posta elettronica PHP non appena questo funziona.

    Una mail di esempio dalla coda potrebbe essere utile per controllare questo.

    E si potrebbe submit l'output di netstat -natp? Solo per vedere quali sono gli indirizzi IP inviati a sendmail.

    So che questa risposta non è completa, ma questo è quanto posso dire a questo punto.

    Mentre scrivi, whereva lavorare.

    user1316146 ha anche ragione: gethostbyaddr sta eseguendo ricerche di inverso, che non sono necessarie per l'invio di posta. Il problema non è qui, a mio parere.

    Penso che tu abbia semplicemente una networking rumorosa o un dns locale davvero non affidabile. Hai dovuto configurare il tuo sendmail per cercare di get il suo indirizzo di destinazione più agressivamente e molte volte.

    Oppure, forse dovresti installare un legame cachingonly locale per rendere tali problemi più chiari.

    Oppure, forse dovresti provare una MTA più robusta, il postfix è un buon modo.

    gethostbyaddr sta eseguendo DNS inversa, quindi è necessario disporre di record PTR per gli indirizzi IP in questione. È inoltre necessario disporre di quella fascia di indirizzi che ti è stata delegata per l'indirizzo pubblico.

    Se stai utilizzando 8.8.8.8 come il tuo DNS per la casella, non sarai in grado di disporre di record PTR per la networking 10.0.0.0/8.

    Questa ricerca si verifica solitamente solo perché la posta viene inviata al server in quanto il server di posta cerca di determinare il nome host del mittente per confrontarlo con il messaggio HELO inviato.

    A proposito, se stai solo cercando di submit posta, la configuration predefinita di postfix funziona perfettamente per quella in Ubuntu.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.