J'essaie de configurer un serveur Postfix sur une boîte Linux pour relayer tout le courrier vers notre serveur de messagerie Office365 (Exchange, hébergé par Microsoft), mais je reçois toujours une erreur concernant l'adresse d'envoi:
BB338140DC1: to = relay = pod51010.outlook.com [157.56.234.118]: 587, délai = 7,6, délais = 0,01 / 0 / 2,5 / 5,1, dsn = 5,7,1, état = rebondi (hôte pod51010.outlook.com [ 157.56.234.118] a déclaré: 550 5.7.1 Le client n'a pas l'autorisation d'envoyer en tant qu'expéditeur (en réponse à la fin de la commande DATA))
Office 365 requiert que l'adresse d'envoi dans l'en-tête MAIL FROM et From: soit la même que l'adresse utilisée pour l'authentification. J'ai essayé tout ce que je peux penser dans la configuration pour que cela fonctionne. mapostconf -n:
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
debug_peer_list = 127.0.0.1
inet_interfaces = loopback-only
inet_protocols = all
mailbox_size_limit = 0
mydestination = xxxxx, localhost.localdomain, localhost
myhostname = localhost
mynetworks = 127.0.0.0/8
recipient_delimiter = +
relay_domains = our.doamin
relayhost = [pod51010.outlook.com]:587
sender_canonical_classes = envelope_sender
sender_canonical_maps = hash:/etc/postfix/sender_canonical
smtp_always_send_ehlo = yes
smtp_sasl_auth_enable = yes
smtp_sasl_mechanism_filter = login
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_tls_loglevel = 1
smtp_tls_security_level = may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
/etc/postfix/sender_canonical
:
www-data [email protected]
root [email protected]
www-data@localhost [email protected]
root@localhost [email protected]
En outre, il sasl_passwd
est défini sur les informations d'identification correctes (testées à l'aide de swaks plusieurs fois.) L'authentification fonctionne et envoie le message lorsque les en-têtes from sont corrects (également testé à l'aide de swaks , ce qui fonctionne)
Les e-mails proviennent de PHP, j'ai donc également essayé de modifier le chemin sendmail php.ini
pour utiliser la bonne adresse depuis via -f
Ainsi, pour une raison quelconque, les messages provenant de www-data et root ne sont pas réécrits à la satisfaction d'Office 365, et ils n'enverront pas le message.
Y a-t-il des gourous du suffixe qui peuvent m'aider à configurer ce relais?
la source
Jan 9 11:03:11 isvahlrtk01 postfix/smtp[12841]: connect to pod51017.outlook.com[157.56.250.182]:587: Connection timed out
Solution:
N'envoyez pas de courrier à Office365 en tant qu'utilisateur à partir de votre domaine de messagerie hébergé par Office365. Utilisez plutôt un sous-domaine, par exemple, [email protected] au lieu de [email protected]. Cela ne ferait pas de mal de configurer un enregistrement SPF pour services.mydomain.com ou tout ce que vous décidez d'utiliser.
Ne vous authentifiez pas contre mail.messaging.microsoft.com en tant qu'utilisateur Office365. Connectez-vous simplement sur le port 25 et envoyez le courrier à votre domaine comme le ferait n'importe quel agent SMTP étranger.
la source
J'ai constaté que certains modules d'authentification SASL étaient manquants. Ce qui suit l'a corrigé:
( module simple était probablement suffisant)
la source