web-dev-qa-db-fra.com

Postfix: erreur de service de nom pour nom = domaine.com Type = MX: hôte non trouvé, essayez à nouveau

Je suis bloqué avec un problème associé postfix mx.

Je viens de migrer un serveur très ancien Centos 5 vers V7, donc j'utilise postfix-2.10.1-7.el7.x86_64. J'ai mis à niveau la configuration Legacy Postfix (peut-être la cause de cet enfer) et d'autres éléments supplémentaires qui semblent fonctionner:

  • postfix-perl-scripts-2.10.1-7.el7.x86_64
  • postgrey-1.34-12.el7.Noarch
  • amavisd-New-2.11.1.1.EL7.NOARARCH
  • spamassassin-3.4.0-4.el7_5.x86_64
  • Perl-Mail-SPF-2.8.0-4.EL7.NOARARCH
  • Perl-Mail-dkim-0.39-8.el7.Noarch
  • dovecot-2.2.36-3.el7.x86_64

Après de nombreux tribulations, je pense avoir eu la majeure partie du système en cours d'exécution, à l'exception des problèmes liés à MX gênants, comme (à partir de/var/log/maillog):

Mar 28 14:26:48 tormento postfix/smtpd[1021]: warning: Unable to look up MX Host for spmailtechn.com: Host not found, try again
Mar 28 14:26:51 tormento postfix/smtpd[1052]: warning: Unable to look up MX Host for inlumine.ual.es: Host not found, try again
Mar 28 14:31:38 tormento postfix/smtpd[1442]: warning: Unable to look up MX Host for aol.com: Host not found, try again
Mar 28 13:07:53 tormento postfix/smtpd[26556]: warning: Unable to look up MX Host for hotmail.com: Host not found, try again
Mar 28 13:12:06 tormento postfix/smtpd[26650]: warning: Unable to look up MX Host for facebookmail.com: Host not found, try again
Mar 28 13:12:31 tormento postfix/smtpd[26650]: warning: Unable to look up MX Host for joker.com: Host not found, try again
Mar 28 13:13:02 tormento postfix/smtpd[26650]: warning: Unable to look up MX Host for bounce.linkedin.com: Host not found, try again

et:

Mar 28 14:50:36 tormento postfix/smtp[1700]: 7B6C69C6A2: to=<[email protected]>, orig_to=<[email protected]>, relay=none, delay=1142, delays=1142/0.07/0/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)
Mar 28 14:32:05 tormento postfix/smtp[1383]: 721A19C688: to=<[email protected]>, orig_to=<[email protected]>, relay=none, delay=4742, delays=4742/0/0/0, dsn=4.4.3, status=deferred (Host or domain name not found. Name service error for name=yahoo.com type=MX: Host not found, try again)

comme des exemples.

Le premier suspect est la résolution DNS, mais cela fonctionne à la fois à la fois à l'aide de serveurs DNS Hetztner (où la machine est hôte) ou 8.8.8.8 ou 9.9.9.9.

$ cat /etc/resolv.conf
; generated by /usr/sbin/dhclient-script
nameserver 213.133.100.100
nameserver 213.133.98.98
nameserver 213.133.99.99

et/etc/hosts:

195.201.24.84 tormento tormento.olea.org
127.0.0.1 localhost.localdomain localhost
127.0.0.1 localhost4.localdomain4 localhost4

# The following lines are desirable for IPv6 capable hosts
::1 tormento tormento.olea.org
::1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6

Je crains que je manque quelque chose de vraiment évident, mais j'ai été googling pendant deux jours à faire n'importe quelle quantité de tests et je ne sais maintenant pas ce que beaucoup à faire.

Puisque Serverfault a rejeté ma question originale en tant que spam, j'ai placé les détails du journal et de la configuration sur mon blog personnel: http://olea.org/diario/2019/03/28/postfix_mx_not_found.html

Merci d'avance.

3
Ismael Olea

Hum, ceci est embarrassant. Comme je prédit que mon problème a été causé par la raison la plus évidente et la plus triviale: manque d'accès en lecture à /etc/resolv.conf pour l'utilisateur postfix O_0

Comme vous connaissez probablement les sous-processus Postfix (SMTP, SMTPD, QMGR, etc.) s'exécute avec l'utilisateur Postfix. Tous les commentaires et suggestions que j'ai reçus ont été liés à des problèmes d'accès à la résolution des données DNS et les suspects habituels ont été SELINUX ou un postfix chrootté. Vous avez tous eu raison dans la dernière raison. Suite à un conseil et essayé:

# Sudo -u postfix -H cat /etc/resolv.conf
cat: /etc/resolv.conf: Permission denied

Et alors??

# ls -l /etc/resolv.conf
-rw-r-----. 1 root named 118 mar 28 20:34 /etc/resolv.conf

Omg! ... Puis après un chmod o + r et de redémarrage de postfix, tout le courrier électronique en attente peut être traité et envoyé et que le nouveau courrier est traité comme prévu.

Je doute que j'ai changé les autorisations de lecture resolv.conf, mais je ne peux pas être sûr à 100%. Alors, enfin le problème est corrigé et je suis vraiment désolé d'avoir attiré l'attention de tous pour cette raison ridicule. Merci à tous.

6
Ismael Olea

Étape 1. Je vérifie gmail.com pour avoir accès à un enregistrement MX sur mon serveur. J'ai d'abord installé le serveur de liaison à l'aide de yum install bind-utils et vérifier rhf gmail.com en suivant la commande suivante:

root@Host# Host -t mx gmail.com
;; connection timed out; no servers could be reached

donc, je change mon serveur DNS en 8.8.8.8 Utilisation de la commande NMTUI et redémarrez mon serveur ...

après redémarrage, j'exécute l'hôte -t ​​MX Gmail.com et mon expiré a été corrigé par Thsi Houtput:

root#Host# Host -t mx gmail.com
gmail.com mail is handled by 10 alt1.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 30 alt3.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 20 alt2.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 40 alt4.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 5 gmail-smtp-in.l.google.com.

Mais le problème principal n'est pas encore résolu pour moi ... Alors, j'ai fait l'étape 2 ...

étape 2. om mon serveur n'existe pas dossier etc dossier sur /var/spool/postfix/. Donc, j'ai créé le dossier etc manuellement ... alors, copiez trois fichiers dessus. /etc/Host.conf, /etc/resolv.conf and /etc/servoces

root@Host# mkdir /var/spool/postfix/etc
root@Host# cp /etc/Host.conf /var/spool/postfix/etc/
root@Host# cp /etc/resolv.conf /var/spool/postfix/etc/
root@Host# cp /etc/services /var/spool/postfix/etc/

Le problème principal de MX n'est pas encore résolu ...

étape 3. Je change le mode de /etc/resolv.conf et /var/pool/postfix/etc/* à 1777 et corrigé mon problème

root@Host# chmod 1777 /etc/resolve.conf
root@Host# chmod 1777 -R /var/spool/postfix/etc

enfin, je redémarre le service Postfix en utilisant systemctl restart postfix.service Et mon SMTP a fonctionné bien!

2
Richi