Exchange Online Connector: Relay อีเมลจากเซิร์ฟเวอร์บริษัท

ตั้ง Exchange Online Connector ให้เซิร์ฟเวอร์และเครื่องสแกนของบริษัทส่งอีเมลผ่าน Microsoft 365 ด้วย IP คงที่หรือใบรับรอง TLS แก้ SPF และทดสอบผ่านพอร์ต 25

โดย ทีมงาน THAI DATA CLOUD อ่าน 14 นาที

แชร์FacebookXLINELinkedIn
Exchange Online Connector — Exchange Online Connector: Relay อีเมลจากเซิร์ฟเวอร์บริษัท
Exchange Online Connector: Relay อีเมลจากเซิร์ฟเวอร์บริษัท

คำตอบสั้น ๆ: ตั้ง Exchange Online Connector ให้เซิร์ฟเวอร์และเครื่องสแกนของบริษัทส่งอีเมลผ่าน Microsoft 365 ด้วย IP คงที่หรือใบรับรอง TLS แก้ SPF และทดสอบผ่านพอร์ต 25

คู่มือนี้อธิบาย Exchange Online Connector ทีละขั้นตอน พร้อมคำสั่งที่ใช้ได้จริงและปัญหาที่พบบ่อย

Exchange Online Connector ในคู่มือนี้คือ inbound connector ชนิด Your organization's email server ใน Exchange admin center ซึ่งบอก Microsoft 365 ว่าอีเมลที่มาจาก IP สาธารณะหรือใบรับรอง TLS ที่ระบุไว้เป็นของบริษัทจริง เมื่อเซิร์ฟเวอร์ ERP เว็บแอป หรือเครื่องสแกนส่งอีเมลผ่าน Exchange Online Connector ระบบจะ relay ถึงผู้รับทั้งในและนอกองค์กร โดยไม่ต้องใช้รหัสผ่านของกล่องจดหมายใด และที่อยู่ผู้ส่งอย่าง [email protected] ไม่ต้องมีไลเซนส์

คู่มือนี้เหมาะกับผู้ดูแลระบบที่มีเซิร์ฟเวอร์หรืออุปกรณ์ในบริษัทซึ่งต้องส่งอีเมลแจ้งเตือนหรือไฟล์สแกน เมื่อทำครบ คุณจะสร้าง connector ได้ทั้งจากหน้าเว็บและ PowerShell ตั้งเซิร์ฟเวอร์ให้ส่งไปที่ MX endpoint ทางพอร์ต 25 แก้ระเบียน SPF และทดสอบจนเห็นผลใน Message Trace

สิ่งที่ต้องเตรียม

  • บัญชีที่มีบทบาท Exchange Administrator ขึ้นไป
  • IP สาธารณะแบบคงที่ (IPv4) ที่บริษัทใช้คนเดียว Microsoft ไม่รองรับ IP แบบ dynamic หรือใบรับรอง TLS จากผู้ออกใบรับรองสาธารณะที่ช่อง Subject หรือ SAN มีโดเมนของบริษัท ซึ่ง Microsoft แนะนำมากกว่าการใช้ IP
  • โดเมนที่ verify แล้วใน Microsoft 365 (accepted domain) ที่อยู่ผู้ส่งทุกฉบับต้องอยู่ในโดเมนนี้
  • พอร์ต TCP 25 ขาออกจากเซิร์ฟเวอร์ต้องเปิด และมีสิทธิ์แก้ DNS ของโดเมนเพื่อแก้ SPF

ข้อจำกัดที่ต้องรู้: Microsoft ระบุว่า SMTP relay ผ่าน Exchange Online Connector ไม่รองรับการส่งจากบริการที่โฮสต์โดยผู้ให้บริการภายนอก โดยยกตัวอย่าง Microsoft Azure วิธีนี้จึงเหมาะกับเซิร์ฟเวอร์ที่บริษัทควบคุมเองบน IP ของบริษัท เช่น เซิร์ฟเวอร์ในสำนักงาน ถ้าแอปอยู่บนคลาวด์ ให้พิจารณา SMTP AUTH สำหรับแอปและอุปกรณ์ ก่อน

แผนภาพเซิร์ฟเวอร์ web-01 และเครื่องสแกนส่งอีเมลไปที่ MX endpoint แล้ว Exchange Online Connector ตรวจ IP หรือใบรับรองก่อนส่งถึงผู้รับ
connector ยอม relay เฉพาะอีเมลที่มาจาก IP หรือใบรับรองที่ลงทะเบียนไว้ ผู้รับภายนอกจึงได้รับด้วย

ขั้นตอนที่ 1: เลือกวิธีที่ Exchange Online Connector ใช้ยืนยันเซิร์ฟเวอร์

  • ใบรับรอง TLS (แนะนำ): Exchange Online Connector ตรวจชื่อในใบรับรองที่เซิร์ฟเวอร์ส่งมาตอน STARTTLS ย้าย IP ได้โดยไม่ต้องแก้ค่า แต่ต้องต่ออายุใบรับรองให้ทัน และซอฟต์แวร์ต้องส่ง client certificate ได้ ซึ่ง Postfix และ Exchange Server ทำได้ แต่เครื่องสแกนส่วนใหญ่ทำไม่ได้
  • IP สาธารณะ: ตั้งง่ายและใช้กับอุปกรณ์รุ่นเก่าได้ แต่ถ้าคนอื่นได้ IP เดียวกันไปใช้ เขาจะส่งอีเมลในนามโดเมนของคุณผ่าน Exchange Online Connector ได้ทันที

ถ้าเลือกแบบ IP ให้รันคำสั่งนี้บนเซิร์ฟเวอร์ที่จะส่งอีเมลจริง ค่าที่ได้ต้องตรงกับ IP คงที่ที่ผู้ให้บริการอินเทอร์เน็ตแจ้งไว้ ถ้าสำนักงานมีอินเทอร์เน็ตหลายเส้นแบบ load balance ให้ตรวจทุกเส้น ไม่เช่นนั้นอีเมลบางฉบับจะถูกปฏิเสธเป็นช่วง ๆ

dig +short myip.opendns.com @resolver1.opendns.com

ขั้นตอนที่ 2: หา MX endpoint และทดสอบพอร์ต 25

อุปกรณ์ต้องส่งไปที่ MX endpoint ของโดเมน ไม่ใช่ smtp.office365.com ซึ่งเป็นปลายทางของ SMTP AUTH เปิด Microsoft 365 admin center ไปที่ Settings > Domains ตรวจว่าโดเมนมีสถานะ Healthy คลิกชื่อโดเมน เลือกแท็บ DNS records ในส่วน Microsoft Exchange คลิกระเบียน MX แล้วคัดลอก Points to address or value ซึ่งส่วนใหญ่อยู่ในรูป example-com.mail.protection.outlook.com ใช้ค่าจากหน้านี้เสมอ เพราะถ้า MX ชี้ไประบบกรองอีเมลรายอื่น ค่าใน DNS จะไม่ใช่ของ Microsoft

dig +short MX example.com
nc -vz example-com.mail.protection.outlook.com 25

nc ควรแจ้งว่าเชื่อมต่อสำเร็จ (คำว่า succeeded หรือ Connected แล้วแต่รุ่นของ nc) ถ้าขึ้น timed out แปลว่าพอร์ต 25 ขาออกถูกปิดที่ไฟร์วอลล์หรือที่ผู้ให้บริการเครือข่าย ให้แก้จุดนี้ก่อน

ขั้นตอนที่ 3: สร้าง Exchange Online Connector ใน Exchange admin center

  1. เปิด https://admin.cloud.microsoft/exchange#/connectors (เมนู Mail flow > Connectors) แล้วคลิก Add a connector
  2. ที่ Connection from เลือก Your organization's email server ช่อง Connection to จะเป็น Office 365 เอง คลิก Next
  3. ตั้งชื่อที่บอกที่มา เช่น Relay from web-01 203.0.113.10 ให้ Turn it on ถูกเลือก และ Retain internal Exchange email headers ไม่ถูกเลือก คลิก Next
  4. หน้า Authenticating sent email: แบบใบรับรอง เลือกตัวเลือกแรก (By verifying that the subject name on the certificate…) แล้วใส่โดเมนที่ตรงกับใบรับรอง เช่น *.example.com แบบ IP เลือก By verifying that the IP address of the sending server matches one of the following IP addresses which belong exclusively to your organization แล้วเพิ่ม IP
  5. ตรวจหน้า Review connector แล้วคลิก Create connector

ถ้ามี Exchange Online Connector ที่สร้างโดย Hybrid Configuration Wizard อยู่แล้ว ให้ตรวจว่าครอบคลุมเซิร์ฟเวอร์นี้หรือไม่ก่อนสร้างใหม่ การมีหลาย connector ที่ครอบคลุม IP เดียวกันทำให้หาสาเหตุยากเวลาอีเมลถูกปฏิเสธ

หน้าจอจำลองขั้น Authenticating sent email ของการสร้าง Exchange Online Connector เลือกยืนยันด้วย IP 203.0.113.10
เลือกวิธียืนยันให้ตรงกับเซิร์ฟเวอร์ และใส่เฉพาะ IP ที่เป็นของบริษัทเท่านั้น (ภาพจำลอง)

สร้างด้วย Exchange Online PowerShell

Exchange Online Connector แบบ IP สร้างด้วย PowerShell ได้ ค่า -ConnectorType OnPremises ตรงกับ Your organization's email server ส่วน -SenderIPAddresses รับ IPv4 หรือช่วง CIDR ตั้งแต่ /24 ถึง /32

Connect-ExchangeOnline -UserPrincipalName [email protected]
New-InboundConnector -Name "Relay from web-01 203.0.113.10" -ConnectorType OnPremises `
  -SenderDomains "*" -SenderIPAddresses 203.0.113.10
Get-InboundConnector | Format-List Name,ConnectorType,SenderIPAddresses,Enabled

ขั้นตอนที่ 4: ตั้งเซิร์ฟเวอร์ให้ส่งผ่าน Exchange Online Connector

  • Smart host: MX endpoint จากขั้นตอนที่ 2 ห้ามใส่เป็นเลข IP
  • Port: 25 เท่านั้น
  • STARTTLS: เปิด (TLS 1.2 ขึ้นไป) แบบใบรับรองต้องเปิด แบบ IP ควรเปิด
  • Authentication: ไม่ใส่ username และ password
  • From: ที่อยู่ใดก็ได้ใน accepted domain เช่น [email protected]

ตัวอย่างสำหรับ Postfix ให้สำรองไฟล์ก่อนด้วย cp /etc/postfix/main.cf /etc/postfix/main.cf.bak แล้วเพิ่มค่าต่อไปนี้ใน /etc/postfix/main.cf สองบรรทัดสุดท้ายใช้เฉพาะ connector แบบใบรับรอง

relayhost = [example-com.mail.protection.outlook.com]:25
smtp_tls_security_level = encrypt
smtp_tls_cert_file = /etc/ssl/certs/mail.example.com.fullchain.pem
smtp_tls_key_file = /etc/ssl/private/mail.example.com.key

จากนั้นรัน postfix check && systemctl reload postfix ขั้นตอนติดตั้ง Postfix แบบส่งอย่างเดียวอยู่ใน Postfix: ส่งอีเมลแจ้งเตือนจากเซิร์ฟเวอร์ผ่าน SMTP Relay

ขั้นตอนที่ 5: เพิ่ม IP ของเซิร์ฟเวอร์ในระเบียน SPF

อีเมลถึงผู้รับในองค์กรจะถูกตรวจ SPF เทียบกับ IP ของเซิร์ฟเวอร์ที่ส่งเข้ามา ส่วนอีเมลที่ออกนอกองค์กรจะออกจากเซิร์ฟเวอร์ของ Microsoft ซึ่งครอบคลุมด้วย include:spf.protection.outlook.com แล้ว Microsoft จึงแนะนำให้เพิ่ม IP ของเซิร์ฟเวอร์ใน SPF ด้วย

example.com.  3600  IN  TXT  "v=spf1 ip4:203.0.113.10 include:spf.protection.outlook.com -all"

โดเมนหนึ่งมี SPF ได้ระเบียนเดียว ให้แก้ระเบียนเดิม ค่า ip4: ไม่นับเป็น DNS lookup ภาพรวมของ SPF DKIM และ DMARC อยู่ใน ตั้งค่า SPF, DKIM และ DMARC เพื่อลดโอกาสอีเมลเข้า Spam

ขั้นตอนที่ 6: ทดสอบและตามรอยใน Message Trace

ทดสอบจากเซิร์ฟเวอร์ด้วย swaks ซึ่งแสดงบทสนทนา SMTP ทุกบรรทัด ส่งสองฉบับ ฉบับแรกถึงผู้รับในองค์กร ฉบับที่สองถึงบัญชีภายนอก เช่น [email protected] เพื่อยืนยันว่า Exchange Online Connector relay ออกนอกองค์กรได้จริง

swaks --server example-com.mail.protection.outlook.com --port 25 --tls \
  --from [email protected] --to [email protected]

ผลที่ถูกต้องจบด้วย 250 2.6.0 และ Queued mail for delivery จากนั้นเปิด Mail flow > Message trace ค้นด้วยผู้ส่ง [email protected] เพื่อยืนยันว่าส่งถึงจริง วิธีอ่านผลอยู่ใน Message Trace: ตามหาอีเมลที่หายใน Exchange admin center

ผลคำสั่ง swaks ทดสอบส่งอีเมลผ่าน Exchange Online Connector ด้วย STARTTLS จนได้รหัส 250 Queued mail for delivery
ได้ 250 2.6.0 แปลว่า Exchange Online รับอีเมลแล้ว จากนั้นยืนยันผลใน Message Trace

อ่านข้อความผิดพลาดของ Exchange Online Connector

  • 550 5.7.64 TenantAttribution; Relay Access Denied: อีเมลไม่จับคู่กับ Exchange Online Connector ส่วนใหญ่เพราะ IP ที่ออกจริงไม่ตรงกับที่ลงทะเบียน หรือชื่อในใบรับรองไม่ตรง
  • 550 5.7.68 TenantInboundAttribution: องค์กรเปิด Set-OrganizationConfig -RejectDirectSend $true ไว้ อีเมลที่ใช้โดเมนบริษัทแต่ไม่ผ่าน connector จึงถูกปฏิเสธ แก้ให้อีเมลจับคู่กับ Exchange Online Connector แทนการปิดค่านี้
  • timed out: พอร์ต 25 ขาออกถูกปิด
  • ส่งถึงแต่เข้า Junk Email: ตรวจ SPF และที่อยู่ผู้ส่ง

Exchange Online Connector กับวิธีส่งแบบอื่น

Exchange Online Connector ไม่ใช่คำตอบเดียว ถ้าอุปกรณ์รองรับ OAuth การส่งผ่านกล่องจดหมายด้วย SMTP AUTH อาจง่ายกว่าและเก็บสำเนาใน Sent Items ได้ แต่มีเพดานผู้รับต่อวัน ส่วน Direct Send และ High Volume Email ส่งได้เฉพาะผู้รับในองค์กร Microsoft ประกาศว่าจะปิด Basic authentication ของ SMTP AUTH เป็นค่าเริ่มต้นสำหรับ tenant เดิมปลายเดือนธันวาคม 2026 โดยผู้ดูแลยังเปิดกลับได้ชั่วคราว และจะประกาศวันเลิกใช้ถาวรในครึ่งหลังของปี 2027 อุปกรณ์ที่ใส่รหัสผ่านตรง ๆ จึงควรย้ายไป OAuth หรือ Exchange Online Connector ก่อนถึงกำหนด รายละเอียดทุกวิธีอยู่ในเอกสาร How to set up a multifunction device or application to send email using Microsoft 365

ตารางเปรียบเทียบ Exchange Online Connector กับ SMTP AUTH, Direct Send และ High Volume Email ตามพอร์ต วิธียืนยันตัวตน และการส่งออกนอกองค์กร
ถ้าต้องส่งถึงผู้รับภายนอกโดยไม่ใช้รหัสผ่าน connector เป็นทางที่ตรงที่สุด

ปัญหาที่พบบ่อยเกี่ยวกับ Exchange Online Connector

ต้องซื้อไลเซนส์ให้ที่อยู่ noreply หรือไม่?

ไม่ต้อง การส่งผ่าน Exchange Online Connector ไม่ใช้กล่องจดหมาย แต่ถ้าอยากให้ผู้รับตอบกลับได้ ให้ตั้งที่อยู่นั้นเป็น shared mailbox หรือ alias ของคนที่ดูแล ไม่เช่นนั้นอีเมลตอบกลับจะตีกลับ

อีเมลที่ส่งผ่าน Exchange Online Connector อยู่ใน Sent Items หรือไม่?

ไม่อยู่ เพราะไม่ได้ส่งจากกล่องจดหมาย ตรวจย้อนหลังได้ด้วย Message Trace หรือ log ฝั่งเซิร์ฟเวอร์ เช่น /var/log/mail.log ของ Postfix

ใช้ส่งอีเมลการตลาดจำนวนมากได้หรือไม่?

ไม่ควร Microsoft ระบุว่าวิธีนี้มีเพดานแบบ reasonable limits และห้ามใช้ส่งสแปมหรืออีเมลจำนวนมาก จดหมายข่าวควรใช้บริการส่งอีเมลจำนวนมากแยกจากระบบอีเมลหลัก

IP ของสำนักงานเปลี่ยน ต้องแก้อะไรบ้าง?

แก้ IP ใน Exchange Online Connector และใน SPF พร้อมกัน ระหว่างย้ายให้ใส่ทั้ง IP เก่าและใหม่ไว้ชั่วคราว แล้วลบ IP เก่าเมื่อเสร็จ ถ้า IP เปลี่ยนบ่อย ให้เปลี่ยนไปใช้ Exchange Online Connector แบบใบรับรองแทน

ถ้าต้องการให้ช่วยวางเส้นทางอีเมลจากเซิร์ฟเวอร์และอุปกรณ์ในบริษัท หรือตรวจว่าทำไมอีเมลจาก connector ถูกปฏิเสธ ติดต่อทีมงาน THAI DATA CLOUD ได้ องค์กรที่ต้องการจัดหาไลเซนส์หรือให้ทีมงานช่วยดูแลระบบอีเมล Microsoft 365 ดูรายละเอียดได้ที่หน้าบริการของเรา

อ่านเพิ่มเติมเกี่ยวกับ Exchange Online Connector

แชร์FacebookXLINELinkedIn

มีคำถามเรื่องบริการ? ติดต่อทีมงาน