1 votes

2 VPS identiques (Ubuntu 18.04) : Postfix - Les alertes de Monit vers Google mail ne fonctionnent pas

Commençons par le début. J'ai deux serveurs VPS identiques avec Ubuntu 18.04 OS et Monit installé sur les deux. J'ai configuré mailserver sur la configuration de monit (pour l'envoi d'alertes) en tant que localhost sur les deux. Le problème est que sur un serveur tout fonctionne bien et sur l'autre je reçois une erreur : NOQUEUE : reject : RCPT de localhost [127.0.0.1] : 550 5.1.1 : L'adresse du destinataire est rejetée : Utilisateur inconnu dans la table des alias virtuels

Je n'ai pas configuré Dovecot et Postfix spécialement, donc cela devrait fonctionner avec les configurations par défaut. J'ai comparé les configurations du serveur postfix qui fonctionne et du serveur postfix qui ne fonctionne pas et il semble qu'elles soient plus ou moins les mêmes. Les voici :

Serveur de travail :

    # See /usr/share/postfix/main.cf.dist for a commented, more complete version

# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

readme_directory = no

# See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
# fresh installs.
compatibility_level = 2

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = sub.domain.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, sub.domain.com, localhost.domain.com, , localhost
relayhost = 
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
virtual_alias_maps = hash:/etc/postfix/virtual
sender_bcc_maps = hash:/etc/postfix/bcc
mailbox_command = /usr/bin/procmail-wrapper -o -a $DOMAIN -d $LOGNAME
home_mailbox = Maildir/
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination
smtp_tls_security_level = may
allow_percent_hack = no

et sur ce serveur tout fonctionne bien sans rien configurer de plus, juste en mettant localhost comme mailserver dans la configuration de monit.

Le serveur ne fonctionne pas :

# See /usr/share/postfix/main.cf.dist for a commented, more complete version

# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

readme_directory = no

# See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
# fresh installs.
compatibility_level = 2

# TLS parameters
smtpd_tls_cert_file = /etc/postfix/postfix.cert.pem
smtpd_tls_key_file = /etc/postfix/postfix.key.pem
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = sub2.domain.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, sub2.domain.com, localhost.domain.com, ,localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
virtual_alias_maps = hash:/etc/postfix/virtual
sender_bcc_maps = hash:/etc/postfix/bcc
mailbox_command = /usr/bin/procmail-wrapper -o -a $DOMAIN -d $LOGNAME
home_mailbox = Maildir/
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination
smtp_tls_security_level = dane
allow_percent_hack = no
smtpd_tls_CAfile = /etc/postfix/postfix.ca.pem
smtpd_tls_security_level = may
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1

Ce serveur génère l'erreur mentionnée ci-dessus.

Le courrier de destination a un domaine différent de celui de ces serveurs et la boîte aux lettres se trouve dans Google. Après avoir vérifié nslookup NX, il semble que le problème soit résolu correctement :

Non-authoritative answer:
maildomain.com  mail exchanger = 5 alt2.aspmx.l.google.com.
maildomain.com  mail exchanger = 10 alt4.aspmx.l.google.com.
maildomain.com  mail exchanger = 10 alt3.aspmx.l.google.com.
maildomain.com  mail exchanger = 5 alt1.aspmx.l.google.com.
maildomain.com  mail exchanger = 1 aspmx.l.google.com.

Une autre chose est que sur le serveur qui ne fonctionne pas, il y a apache avec le site web configuré maildomain.com et je pense qu'il peut confondre un serveur pour envoyer du courrier électronique. Il est possible qu'il ne recherche qu'une adresse mail localement et qu'il reçoive cette erreur : RCPT de localhost [127.0.0.1] : 550 5.1.1 : L'adresse du destinataire est rejetée : Utilisateur inconnu dans la table des alias virtuels

Je ne sais pas si j'ai une idée sur la façon de le faire fonctionner et sur ce qui pourrait être défectueux, mais c'est parfait. Je vous remercie d'avance !

0voto

Martin Weil Points 151

Je crains de ne pas pouvoir faire de commentaire pour l'instant, donc il s'agit forcément d'une réponse...

Il semble que postfix ne puisse pas trouver l'utilisateur dans sa base de données locale, donc l'utilisateur ne semble pas être un utilisateur local et l'utilisateur ne semble pas être dans le fichier /etc/aliases. Ou, et vous devriez essayer ceci. Vous n'avez pas exécuté la commande newaliases.

Pour obtenir de l'aide, il serait utile de fournir un peu plus d'informations :

  • Destinataire du courriel

  • Contenu des fichiers /etc/aliases respectifs

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X