Ce matin, afin de corriger un problème d'incompatibilité de nom dans le certificat de sécurité, j'ai suivi les étapes recommandées dans Comment réparer le serveur de messagerie SSL? , mais maintenant, lorsque je tente d'envoyer un courrier électronique à partir d'un client (dans ce cas, le client est Windows Mail), le message d'erreur suivant s'affiche.
L'adresse e-mail rejetée était "[email protected]". Sujet 'Ceci est un test. ', Compte:' mail.domain.com ', Serveur:' mail.domain.com ', Protocole: SMTP, Réponse du serveur:' 554 5.7.1: Accès par relais refusé ', Port: 25, Sécurisé (SSL): Non , Erreur du serveur: 554, Numéro d'erreur: 0x800CCC79
Modifier : je peux toujours récupérer des courriels à partir de ce compte et envoyer des courriels à d'autres comptes du même domaine. Je ne peux tout simplement pas envoyer d'e-mails à des destinataires extérieurs à notre domaine.
J'ai essayé de désactiver TLS mais pas de dés, je reçois toujours la même erreur.
Lorsque je vérifie le fichier mail.log
, je vois ce qui suit.
Jul 18 08:24:41 company imapd: LOGIN, [email protected], ip=[::ffff:111.111.11.11], protocol=IMAP
Jul 18 08:24:42 company imapd: DISCONNECTED, [email protected], ip=[::ffff:111.111.11.11], headers=0, body=0, rcvd=83, sent=409, time=1
Jul 18 08:25:19 company postfix/smtpd[29282]: connect from company.university.edu[111.111.11.11]
Jul 18 08:25:19 company postfix/smtpd[29282]: NOQUEUE: reject: RCPT from company.university.edu[111.111.11.11]: 554 5.7.1 <[email protected]>: Relay access denied; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<UserPC>
Jul 18 08:25:19 company postfix/smtpd[29282]: disconnect from company.university.edu[111.111.11.11]
Jul 18 08:25:22 company imapd: DISCONNECTED, [email protected], ip=[::ffff:111.111.11.11], headers=13, body=142579, rcvd=3289, sent=215892, time=79
Le fichier main.cf
ressemble à ceci:
#
# Postfix MTA Manager Main Configuration File;
#
# Please do NOT edit this file manually;
#
#
# Postfix directory settings; These are critical for normal Postfix MTA functionallity;
#
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
program_directory = /usr/lib/postfix
#
# Some common configuration parameters;
#
inet_interfaces = all
mynetworks = 127.0.0.0/8
mynetworks_style = host
myhostname = mail.domain.com
mydomain = domain.com
myorigin = $mydomain
smtpd_banner = $myhostname ESMTP 2.4.7.1 (Debian/GNU)
setgid_group = postdrop
#
# Receiving messages parameters;
#
mydestination = localhost, company
append_dot_mydomain = no
append_at_myorigin = yes
transport_maps = mysql:/etc/postfix/transport.cf
#
# Delivering local messages parameters;
#
mail_spool_directory = /var/spool/mail
mailbox_size_limit = 0
mailbox_command = procmail -a "$EXTENSION"
biff = no
alias_database = hash:/etc/aliases
local_recipient_maps =
#
# Delivering virtual messages parameters;
#
virtual_mailbox_maps=mysql:/etc/postfix/mysql_virt.cf
virtual_uid_maps=mysql:/etc/postfix/uids.cf
virtual_gid_maps=mysql:/etc/postfix/gids.cf
virtual_mailbox_base=/usr/local/virtual
virtual_maps=mysql:/etc/postfix/virtual.cf
virtual_mailbox_domains=mysql:/etc/postfix/virtual_domains.cf
#
# SASL paramters;
#
smtp_use_tls = yes
smtpd_use_tls = yes
smtpd_tls_auth_only = yes
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
smtp_tls_CAfile = /etc/postfix/ssl/smptd.pem
smtp_tls_cert_file = /etc/postfix/ssl/smptd.crt
smtp_tls_key_file = /etc/postfix/ssl/smptd.key
smtpd_tls_CAfile = /etc/postfix/ssl/smptd.pem
smtpd_tls_cert_file = /etc/postfix/ssl/smptd.crt
smtpd_tls_key_file = /etc/postfix/ssl/smptd.key
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain =
broken_sasl_auth_clients = yes
smtpd_sender_restrictions =
permit_sasl_authenticated
permit_mynetworks
smtpd_recipient_restrictions =
permit_sasl_authenticated
check_recipient_access hash:/etc/postfix/filtered_domains
permit_mynetworks
reject_unauth_destination
En passant, mon employeur veut pouvoir envoyer des courriels de clients (Thunderbird et Outlook) à la fois à partir de notre réseau local et à l'extérieur de celui-ci.
Réponses:
TLS n'active que le cryptage sur la session smtp et n'affecte pas directement si Postfix sera autorisé ou non à relayer un message.
Le message de relais refusé se produit car les règles smtpd_recipient_restrictions ne correspondaient pas. Une de ces conditions doit être remplie pour que le message puisse passer:
Pour expliquer ces règles:
autorise les expéditeurs authentifiés via SASL. Cela sera nécessaire pour authentifier les utilisateurs en dehors de votre réseau qui sont normalement bloqués.
Cela fera que postfix cherchera dans / etc / postfix / filter_domains des règles basées sur l'adresse du destinataire. (À en juger par le nom de fichier indiqué, il s’agit probablement de bloquer des domaines spécifiques ... Vérifiez si gmail.com est répertorié ici?)
Cela autorisera les hôtes par adresse IP correspondant aux plages IP spécifiées dans $ mynetworks. Dans le fichier main.cf que vous avez posté, $ mynetworks a été défini sur 127.0.0.1, de sorte que seuls les courriers électroniques générés par le serveur seront relayés.
En fonction de cette configuration, votre client de messagerie devra utiliser l'authentification SMTP avant de pouvoir relayer des messages. Je ne suis pas sûr de la base de données utilisée par SASL. Cela est spécifié dans /usr/lib/sasl2/smtpd.conf Il utilise probablement la même base de données que vos boîtes aux lettres virtuelles. Vous devriez donc pouvoir activer l'authentification SMTP dans votre client de messagerie et être configuré.
la source
Vous avez désactivé TLS. Vous devez maintenant autoriser votre réseau local en l'ajoutant à
mynetworks
. Par exemple,Cela corrigera l'envoi depuis votre réseau local uniquement. Pour envoyer des courriers électroniques en dehors de votre réseau local, vous devez activer l'authentification TLS.
la source
Je pense que vous manquez domain.com dans mydestination, car la valeur par défaut
relay_domains=$mydestination
vous permet de vous annexer à la configuration de la ligne:ou:
N'oubliez pas de redémarrer le serveur postfix (
service postfix restart
) chaque fois que vous éditez le fichier de configuration postfix.la source
J'avais le même problème dans Outlook (avec pigeonnier et postfix) et j'ai passé deux jours à chercher une solution et à peaufiner mes fichiers de configuration. Tout ce que je devais faire était de cocher "Le serveur requiert une authentification" dans l'onglet "Sortant" des paramètres de messagerie dans Outlook et mes messages sont maintenant envoyés à gmail. Voir les instructions détaillées pour savoir comment trouver le paramètre ici http://support.bluetie.com/node/440 .
la source
Ce problème me dérangeait depuis un moment. J'essayais de me connecter depuis server1.domain.com à server2.domain.com.
Voici comment j'ai résolu ça -
Vous devez également vous assurer que vous avez défini correctement les fichiers / etc / hosts et / etc / hostname et que vous exécutez les opérations suivantes après les modifications apportées à la mise en réseau -
et les suivants après les changements de configuration postfix
la source
Pour moi: je devais ajouter
localhost
àmynetworks
quel que soit le fait127.0.0.0/8
était déjà là. Alors, maintenant il semble:mynetworks = 1.1.1.1/32, 127.0.0.0/8, localhost
la source