Relay Postfix ke Office365


8

Saya mencoba mengatur server Postfix pada kotak Linux untuk menyampaikan semua email ke server mail Office365 (Exchange, yang dihosting oleh Microsoft) kami, tetapi, saya terus mendapatkan kesalahan mengenai alamat pengiriman:

BB338140DC1: to = relay = pod51010.outlook.com [157.56.234.118]: 587, delay = 7.6, penundaan = 0.01 / 0 / 2.5 / 5.1, dsn = 5.7.1, status = memantul (host pod51010.outlook.com [ 157.56.234.118] mengatakan: 550 5.7.1 Klien tidak memiliki izin untuk mengirim sebagai pengirim ini (sebagai balasan untuk mengakhiri perintah DATA))

Office 365 mensyaratkan bahwa alamat pengiriman di header MAIL FROM dan From: sama dengan alamat yang digunakan untuk otentikasi. Saya telah mencoba semua yang dapat saya pikirkan dalam konfigurasi untuk membuatnya bekerja. Sayapostconf -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                address@mydomain.com
root                    address@mydomain.com
www-data@localhost      address@mydomain.com
root@localhost          address@mydomain.com

Juga, sasl_passwddisetel ke kredensial yang benar (mengujinya menggunakan swaks beberapa kali.) Otentikasi berfungsi, dan mengirim pesan ketika header dari benar (juga diuji menggunakan swaks , yang berfungsi)

Email berasal dari PHP, jadi saya juga mencoba mengubah jalur sendmail php.iniuntuk menggunakan pass yang benar dari alamat via -f

Jadi, untuk beberapa alasan, surat yang berasal dari www-data dan root tidak memiliki bidang dari yang ditulis ulang untuk kepuasan Office 365, dan itu tidak akan mengirim pesan.

Adakah guru postfix di luar sana yang dapat membantu saya mengatur relay ini?

Jawaban:


3

Untuk berjaga-jaga kalau ada yang menemukan ini nanti. SAYA akhirnya mendapatkan relai email yang tepat. Masalahnya terkait dengan menggunakan versi postfix yang lebih lama, yang memformat elemen "FROM" di dalam amplop dengan cara yang tidak disukai Office 365. Memperbarui Postfix ke 2.9 atau lebih besar (dan menggunakan konfigurasi seperti yang di atas) menyelesaikan masalah.


Saya telah menghabiskan 3 hari terakhir mencoba mengatur relay ini dengan sendmail, ssmtp dan sekarang postfix. Bisakah Anda jelaskan kepada saya sedikit lebih dalam tentang sender_canonical Anda? Apakah perlu agar relay ini berfungsi? Dengan pengaturan saya, saya dapatkanJan 9 11:03:11 isvahlrtk01 postfix/smtp[12841]: connect to pod51017.outlook.com[157.56.250.182]:587: Connection timed out
Rhyuk

dari mana Anda mendapatkan smtp_tls_CAfile untuk outlook.com?
pjz

Saya tidak pernah membutuhkannya, ini bagus dengan apa yang datang dengan server Ubuntu.
woodsbw

2

Larutan:

  1. Jangan mengirim email ke Office365 sebagai pengguna dari domain email yang dihosting Office365 Anda. Gunakan subdomain sebagai gantinya, misalnya address@services.mydomain.com alih-alih address@mydomain.com. Tidak ada salahnya untuk membuat catatan SPF untuk services.mydomain.com atau apa pun yang Anda putuskan untuk digunakan.

  2. Jangan mengautentikasi terhadap mail.messaging.microsoft.com sebagai pengguna Office365. Cukup sambungkan pada port 25 dan kirimkan email ke domain Anda seperti yang dilakukan agen SMTP asing.


Cukup adil. Saya berharap agar semua email kami melalui titik pusat ... tetapi setelah menghabiskan 12 jam mencoba agar relay ini berfungsi, saya akan menerimanya :)
woodsbw

0

Saya telah menemukan bahwa beberapa modul auth SASL hilang. Berikut ini memperbaikinya:

yum install cyrus-sasl-plain  cyrus-sasl-scram cyrus-sasl-md5  cyrus-sasl-ntlm

( modul polos mungkin cukup)

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.