Relaying Denied: แก้ Outlook ส่งอีเมลออกนอกโดเมนไม่ได้

Relaying Denied หรือ 550 5.7.1 Unable to relay เกิดเมื่อเซิร์ฟเวอร์ SMTP ไม่รู้ว่าคุณเป็นใคร ติ๊ก My outgoing server (SMTP) requires authentication แล้วส่งใหม่

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

แชร์FacebookXLINELinkedIn
Relaying Denied — Relaying Denied: แก้ Outlook ส่งอีเมลออกนอกโดเมนไม่ได้
Relaying Denied: แก้ Outlook ส่งอีเมลออกนอกโดเมนไม่ได้

คำตอบสั้น ๆ: Relaying Denied หรือ 550 5.7.1 Unable to relay เกิดเมื่อเซิร์ฟเวอร์ SMTP ไม่รู้ว่าคุณเป็นใคร ติ๊ก My outgoing server (SMTP) requires authentication แล้วส่งใหม่

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

Relaying Denied คือ error ที่เซิร์ฟเวอร์อีเมลขาออกปฏิเสธไม่ส่งอีเมลต่อไปยังโดเมนอื่น อาการที่ผู้ใช้เห็นคือส่งหาเพื่อนร่วมงานในบริษัทได้ แต่ส่งหาลูกค้าภายนอกไม่ได้ Outlook ขึ้น error หมายเลข 0x800CCC79 หรือได้อีเมลตีกลับพร้อมข้อความจากเซิร์ฟเวอร์ เช่น 550 5.7.1 Unable to relay, 554 5.7.1 Relay access denied หรือ 550 Relaying denied สาเหตุที่พบบ่อยที่สุดคือ Outlook ส่งอีเมลโดยไม่ได้ล็อกอินกับเซิร์ฟเวอร์ SMTP เซิร์ฟเวอร์จึงไม่รู้ว่าผู้ส่งเป็นใคร วิธีที่ได้ผลบ่อยที่สุดคือติ๊ก My outgoing server (SMTP) requires authentication ในการตั้งค่าบัญชี แล้วส่งใหม่

ที่ส่งในบริษัทได้แต่ส่งออกไม่ได้ เป็นเพราะเซิร์ฟเวอร์อีเมลรับอีเมลที่ส่งถึงโดเมนของตัวเองจากใครก็ได้ (มันคือปลายทาง) แต่การส่งต่อไปโดเมนอื่น หรือที่เรียกว่า relay ต้องยืนยันตัวตนก่อน ไม่อย่างนั้นใครก็ใช้เซิร์ฟเวอร์ของคุณส่งสแปมได้ คู่มือนี้เขียนสำหรับผู้ใช้ classic Outlook for Windows, new Outlook และ Outlook for Mac ที่ใช้อีเมลบริษัทแบบ IMAP/POP ซึ่งส่งผ่าน SMTP และมีส่วนสำหรับผู้ดูแลเซิร์ฟเวอร์กับ Microsoft 365 เมื่อทำครบ คุณจะแก้ Relaying Denied ได้โดยไม่ต้องเปิดเซิร์ฟเวอร์เป็น open relay

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

เตรียมข้อมูลต่อไปนี้ก่อนแก้ Relaying Denied

  • ข้อความ error ทั้งหมดที่ Outlook แสดง หรืออีเมลตีกลับ (Undeliverable) ทั้งฉบับ
  • ชื่อเซิร์ฟเวอร์ขาเข้าและขาออก พอร์ต และชนิดการเข้ารหัสที่ผู้ให้บริการอีเมลให้มา ในคู่มือนี้ใช้ mail.example.com เป็นตัวอย่าง ให้ใช้ชื่อเซิร์ฟเวอร์และพอร์ตที่ผู้ให้บริการอีเมลให้มาจริง
  • ชื่อผู้ใช้และรหัสผ่านอีเมลปัจจุบัน เช่น [email protected]
  • รู้ว่าใช้ Outlook แบบไหน classic Outlook มีเมนู File ส่วน new Outlook มีสวิตช์ New Outlook และไอคอนเฟือง ผู้ดูแลเซิร์ฟเวอร์ต้องอ่าน log ของ SMTP ได้

สาเหตุของ Relaying Denied

ข้อความ Relaying Denied ต่างกันตามซอฟต์แวร์ของเซิร์ฟเวอร์ แต่ทุกข้อความแปลว่าเซิร์ฟเวอร์ไม่ยอมเป็นทางผ่านให้ผู้ส่งที่มันไม่รู้จัก สาเหตุเรียงจากพบบ่อยไปน้อย

  • ไม่ได้เปิด SMTP authentication ใน Outlook เกิดบ่อยกับบัญชีที่ตั้งค่าเองแบบ manual หรือย้ายมาจาก Outlook รุ่นเก่า
  • ใช้เซิร์ฟเวอร์ขาออกผิดตัว เช่น ยังใช้ SMTP ของผู้ให้บริการเดิมหลังย้ายระบบอีเมล หรือใช้ SMTP ของผู้ให้บริการอินเทอร์เน็ต
  • ส่งจากที่อยู่ที่บัญชีไม่มีสิทธิ์ เช่น ตั้ง From เป็น alias หรืออีเมลของโดเมนอื่นที่เซิร์ฟเวอร์ไม่ได้ดูแล
  • รหัสผ่านหรือการยืนยันตัวตนไม่ผ่าน เช่น เพิ่งเปลี่ยนรหัสที่เว็บเมล หรือผู้ดูแลปิดการส่งผ่าน SMTP ของบัญชีนั้น
  • กฎ relay ของเซิร์ฟเวอร์ ตั้งผิด เช่น ไม่อนุญาตผู้ใช้ที่ยืนยันตัวตนแล้ว หรือ connector ของ Microsoft 365 ตั้งไม่ตรง
ตารางข้อความ error แบบ Relaying Denied ที่ Outlook ได้รับจากเซิร์ฟเวอร์แต่ละชนิด พร้อมความหมายและจุดที่ต้องแก้
ข้อความต่างกันตามซอฟต์แวร์เซิร์ฟเวอร์ แต่ความหมายเดียวกัน คือเซิร์ฟเวอร์ไม่ยอมส่งต่อให้

ขั้นตอนที่ 1: อ่านข้อความ Relaying Denied ให้ครบก่อนแก้

เปิดอีเมลตีกลับหรือหน้าต่าง error แล้วหาสามอย่าง อย่างแรกคือชื่อเซิร์ฟเวอร์ที่ปฏิเสธ ถ้าเป็นเซิร์ฟเวอร์ขาออกของคุณเอง เช่น mail.example.com แปลว่า Outlook ส่งไม่ผ่านตั้งแต่ด่านแรก ให้ทำขั้นตอนที่ 2 ถึง 5 อย่างที่สองคือผู้รับที่ถูกปฏิเสธ ถ้าปฏิเสธเฉพาะผู้รับภายนอกแต่ผู้รับในบริษัทผ่าน นี่คืออาการ Relaying Denied แบบคลาสสิก อย่างที่สามคือรหัสสถานะ รหัสขึ้นต้นด้วย 5 เป็นการปฏิเสธถาวร ส่วนขึ้นต้นด้วย 4 เช่น 454 4.7.1 Relay access denied เป็นการปฏิเสธชั่วคราว แต่สาเหตุเดียวกัน

ถ้าอีเมลตีกลับมาจากเซิร์ฟเวอร์ของผู้รับ ไม่ใช่ของคุณ และข้อความเป็น Unable to relay อาจแปลว่าระเบียน MX ของผู้รับชี้ไปเซิร์ฟเวอร์ที่ไม่ได้รับอีเมลให้โดเมนนั้นแล้ว Relaying Denied แบบนี้แก้ที่ Outlook ของคุณไม่ได้ ให้แจ้งผู้รับพร้อมแนบอีเมลตีกลับ วิธีอ่านรหัสอื่นอยู่ในคู่มือ Bounce และ SMTP Error Code

ขั้นตอนที่ 2: เปิด SMTP authentication เพื่อแก้ Relaying Denied

classic Outlook for Windows

นี่คือวิธีแก้ Relaying Denied ที่ได้ผลบ่อยที่สุด ใช้เวลาไม่ถึงสองนาที

  1. ไปที่ File > Account Settings > Account Settings เลือกบัญชี IMAP หรือ POP แล้วคลิก Change
  2. คลิก More Settings แล้วเปิดแท็บ Outgoing Server
  3. ติ๊ก My outgoing server (SMTP) requires authentication และเลือก Use same settings as my incoming mail server
  4. ถ้าผู้ให้บริการกำหนดชื่อผู้ใช้ SMTP แยกจากขาเข้า ให้เลือก Log on using แล้วใส่ชื่อผู้ใช้และรหัสผ่านที่ได้รับแทน
  5. คลิก OK แล้วคลิก Next Outlook จะทดสอบการตั้งค่าและส่งอีเมลทดสอบให้ จากนั้นคลิก Done

วิธีตรวจว่าแก้แล้ว: ส่งอีเมลทดสอบไปที่อีเมลภายนอก เช่น Gmail ส่วนตัว ถ้าส่งออกได้และไม่มีอีเมลตีกลับ Relaying Denied แก้แล้ว ไม่ต้องทำขั้นต่อไป อีเมลที่ตีกลับก่อนหน้านี้ต้องส่งใหม่เอง

หน้าจอจำลองแท็บ Outgoing Server ใน classic Outlook ที่ติ๊ก My outgoing server (SMTP) requires authentication เพื่อแก้ Relaying Denied
ตัวเลือกนี้ทำให้ Outlook ล็อกอินก่อนส่ง เซิร์ฟเวอร์จึงยอมส่งออกนอกโดเมน (ภาพจำลอง)

new Outlook และ Outlook for Mac

new Outlook ไม่มีหน้าต่าง More Settings แบบ classic การตั้งค่า SMTP ของบัญชี IMAP กรอกตอนเพิ่มบัญชี ถ้าเจอ Relaying Denied ให้ลบบัญชีที่ Settings > Accounts > Email accounts แล้วเพิ่มใหม่ ตอนเพิ่มให้เปิดส่วนตั้งค่าเพิ่มเติมและกรอกชื่อผู้ใช้ รหัสผ่าน เซิร์ฟเวอร์ และพอร์ตของ SMTP ให้ตรงกับที่ผู้ให้บริการกำหนด ขั้นตอนละเอียดอยู่ในคู่มือตั้งค่า IMAP บน new Outlook ส่วน Outlook for Mac ให้ตรวจในการตั้งค่าบัญชีว่าเซิร์ฟเวอร์ขาออกตั้งการยืนยันตัวตนไว้ ไม่ได้ปล่อยเป็นไม่ยืนยันตัวตน

ขั้นตอนที่ 3: ตรวจชื่อเซิร์ฟเวอร์ขาออก พอร์ต และการเข้ารหัส

ในหน้าต่าง Change ของบัญชี ดูช่อง Outgoing mail server (SMTP) ต้องเป็นเซิร์ฟเวอร์ของผู้ให้บริการอีเมลปัจจุบัน ถ้าบริษัทเพิ่งย้ายระบบอีเมล เครื่องที่ตั้งค่าไว้นานอาจยังชี้ไปเซิร์ฟเวอร์เดิม ซึ่งไม่รู้จักบัญชีของคุณแล้ว จึงตอบ Relaying Denied

คลิก More Settings > แท็บ Advanced ตรวจพอร์ตและการเข้ารหัสให้เป็นคู่ที่ถูกต้อง

  • พอร์ต 465 คู่กับ SSL/TLS
  • พอร์ต 587 คู่กับ STARTTLS
  • พอร์ต 25 ใช้สำหรับเซิร์ฟเวอร์ส่งหาเซิร์ฟเวอร์ ไม่ควรใช้ส่งจาก Outlook เพราะหลายเครือข่ายบล็อกไว้ และบางเซิร์ฟเวอร์ไม่เปิดการยืนยันตัวตนบนพอร์ตนี้

ทดสอบว่าเครื่องต่อพอร์ตขาออกได้ด้วย PowerShell ถ้า TcpTestSucceeded เป็น False แปลว่าเครือข่ายหรือไฟร์วอลล์กั้นอยู่ ซึ่งมักขึ้นเป็น error เชื่อมต่อไม่ได้มากกว่า Relaying Denied หลังแก้ชื่อเซิร์ฟเวอร์หรือพอร์ต ให้ส่งทดสอบไปอีเมลภายนอกอีกครั้ง ถ้าไม่มีอีเมลตีกลับแสดงว่าแก้แล้ว

Test-NetConnection mail.example.com -Port 587
Test-NetConnection mail.example.com -Port 465
ผลคำสั่ง Test-NetConnection ทดสอบพอร์ต 587 และ 25 ของ mail.example.com ก่อนแก้ Relaying Denied ในการตั้งค่า Outlook
พอร์ต 587 ต่อได้แต่ 25 ต่อไม่ได้ เป็นเรื่องปกติของเครือข่ายที่บล็อกพอร์ต 25 ให้ใช้ 587 หรือ 465

ขั้นตอนที่ 4: ตรวจว่าที่อยู่ผู้ส่งเป็นของบัญชีนี้

เซิร์ฟเวอร์อีเมลส่วนใหญ่ตรวจว่าที่อยู่ในช่อง From เป็นของบัญชีที่ล็อกอิน ถ้าคุณล็อกอินด้วย [email protected] แต่ตั้ง From เป็นอีเมลของโดเมนอื่น หรือเป็น alias ที่ยังไม่ได้ผูกกับบัญชี เซิร์ฟเวอร์อาจตอบ Relaying Denied หรือข้อความว่าผู้ส่งไม่ใช่เจ้าของที่อยู่

  • ใน classic Outlook ที่มีหลายบัญชี ให้ดูปุ่ม From ในหน้าต่างเขียนอีเมลว่าเลือกบัญชีที่ถูกต้อง Outlook ส่งผ่านเซิร์ฟเวอร์ของบัญชีที่เลือกใน From
  • ตรวจช่อง Email Address ในหน้าต่าง Change ของบัญชี ต้องตรงกับอีเมลจริง พิมพ์ผิดตัวเดียวก็ทำให้ถูกปฏิเสธได้
  • ถ้าต้องส่งในนาม alias หรืออีเมลกลาง ให้ผู้ดูแลเพิ่ม alias นั้นให้บัญชีของคุณบนเซิร์ฟเวอร์ก่อน บัญชี Microsoft 365 ต้องได้สิทธิ์ Send As ดูคู่มือแก้ Send As

วิธีตรวจว่าแก้แล้ว: ส่งอีเมลจากที่อยู่หลักของบัญชีไปภายนอกก่อน ถ้าผ่านแต่ส่งจาก alias แล้วเจอ Relaying Denied แปลว่าสาเหตุคือสิทธิ์ของที่อยู่ผู้ส่ง

ขั้นตอนที่ 5: ตรวจรหัสผ่านและนโยบายการส่งผ่าน SMTP

ถ้าเปิด SMTP authentication แล้วแต่ยังเจอ Relaying Denied ให้ตรวจว่าการล็อกอินผ่านจริง บางเซิร์ฟเวอร์ปฏิเสธด้วยข้อความ relay แม้สาเหตุจริงคือรหัสผ่านผิด

  • เปลี่ยนรหัสผ่านในหน้าต่าง Change ให้ตรงกับรหัสปัจจุบัน แล้วลบรหัสเก่าที่จำไว้ใน Credential Manager ของ Windows ถ้า Outlook ยังใช้รหัสเดิม
  • ลองล็อกอินเว็บเมลด้วยรหัสเดียวกัน ถ้าเว็บเมลเข้าไม่ได้ บัญชีอาจถูกล็อกหรือรหัสหมดอายุ
  • ถ้าผู้ให้บริการกำหนดให้ใช้ App password สำหรับโปรแกรมอีเมล ให้สร้างและใช้รหัสนั้นแทน
  • บัญชี Microsoft 365 ที่ตั้งเป็น IMAP/SMTP ใน Outlook ควรลบแล้วเพิ่มใหม่เป็นบัญชี Exchange ซึ่งไม่ต้องใช้ SMTP เลย ส่วนแอปหรือเครื่องพิมพ์ที่ต้องส่งผ่าน smtp.office365.com ต้องให้ผู้ดูแลเปิด SMTP AUTH ของกล่องจดหมายนั้น ดูคู่มือ SMTP AUTH บน Microsoft 365

ส่งทดสอบอีกครั้งหลังแก้รหัสผ่าน ถ้ายังเจอ Relaying Denied ทั้งที่ล็อกอินเว็บเมลได้ ให้ส่งข้อความ error และเวลาที่ส่งให้ผู้ดูแลทำขั้นตอนที่ 6

ลำดับการไล่แก้ Relaying Denied จากอ่าน error เปิด SMTP authentication ตรวจเซิร์ฟเวอร์และพอร์ต ตรวจที่อยู่ผู้ส่ง จนถึงผู้ดูแลตรวจเซิร์ฟเวอร์
ส่วนใหญ่จบที่ขั้นตอนที่ 2 ขั้นท้าย ๆ เป็นงานของผู้ดูแลเซิร์ฟเวอร์อีเมล

ขั้นตอนที่ 6: ผู้ดูแลตรวจกฎ relay บนเซิร์ฟเวอร์

ถ้าผู้ใช้หลายคนเจอ Relaying Denied พร้อมกันหลังเปลี่ยนการตั้งค่าเซิร์ฟเวอร์ ปัญหาอยู่ที่เซิร์ฟเวอร์มากกว่าที่ Outlook ให้ดู log ของ SMTP ที่เวลาที่ผู้ใช้ส่ง บน Postfix ให้ค้นคำว่า Relay access denied ใน log (Debian/Ubuntu มักอยู่ที่ /var/log/mail.log ส่วน RHEL และตระกูลเดียวกันมักอยู่ที่ /var/log/maillog) แล้วดูกฎ relay ที่ใช้อยู่

grep "Relay access denied" /var/log/mail.log | tail -n 5
postconf smtpd_relay_restrictions smtpd_sasl_auth_enable

บรรทัด log ที่ขึ้น NOQUEUE: reject: RCPT from ... โดยไม่มีชื่อผู้ใช้ SASL แปลว่าไคลเอนต์ไม่ได้ล็อกอิน ปัญหาอยู่ที่ Outlook ตามขั้นตอนที่ 2 ถ้า smtpd_relay_restrictions ไม่มี permit_sasl_authenticated หรือ smtpd_sasl_auth_enable เป็น no ผู้ใช้ที่ล็อกอินถูกก็ยังโดน Relaying Denied ให้แก้ที่เซิร์ฟเวอร์ ห้ามแก้ด้วยการเพิ่มเครือข่ายทั้งอินเทอร์เน็ตเข้า mynetworks หรืออนุญาต relay โดยไม่ยืนยันตัวตน เพราะจะกลายเป็น open relay ที่ถูกใช้ส่งสแปมและทำให้ IP ของเซิร์ฟเวอร์ติด blacklist

สำหรับ Microsoft 365 รหัส 5.7.64 TenantAttribution; Relay Access Denied เกิดกับอีเมลที่ส่งผ่าน inbound connector จากระบบในองค์กร เมื่อการตั้งค่าฝั่งองค์กรเปลี่ยน เช่น IP หรือใบรับรองของเซิร์ฟเวอร์ที่ส่ง ไม่ใช่ Relaying Denied ที่แก้ได้ใน Outlook ผู้ดูแลต้องตรวจ connector ใน Exchange admin center ความหมายของรหัสเหล่านี้อยู่ในเอกสาร Email nondelivery reports and SMTP errors in Exchange Online ของ Microsoft

ปัญหาที่พบบ่อยเกี่ยวกับ Relaying Denied

ทำไมส่งหาคนในบริษัทได้ แต่ส่งออกนอกไม่ได้?

เซิร์ฟเวอร์รับอีเมลถึงโดเมนของตัวเองโดยไม่ต้องล็อกอิน เพราะมันเป็นปลายทาง แต่การส่งต่อไปโดเมนอื่นต้องยืนยันตัวตน ถ้า Outlook ไม่ได้เปิด SMTP authentication อีเมลภายในจะผ่าน ส่วนอีเมลภายนอกจะโดน Relaying Denied

ผู้ดูแลเปิดให้ relay ได้ทุกคนเพื่อแก้ Relaying Denied ได้ไหม?

ไม่ควรทำ เซิร์ฟเวอร์ที่ relay ให้ทุกคนโดยไม่ยืนยันตัวตนคือ open relay ผู้ส่งสแปมจะสแกนเจอและใช้ส่งอีเมลจำนวนมาก IP ของบริษัทมีโอกาสติด blacklist สูง และอีเมลปกติของทุกคนจะส่งไม่ออก ทางที่ถูกคือให้ผู้ใช้ยืนยันตัวตนก่อนส่ง

อยู่บ้านส่งได้ แต่มาใช้ Wi-Fi โรงแรมแล้วส่งไม่ได้ เกิดจากอะไร?

เครือข่ายสาธารณะมักบล็อกพอร์ต 25 หรือดักทราฟฟิก SMTP ให้เปลี่ยนไปใช้พอร์ต 587 แบบ STARTTLS หรือ 465 แบบ SSL/TLS พร้อมเปิด SMTP authentication ถ้าเซิร์ฟเวอร์ของคุณอนุญาต relay ตาม IP ออฟฟิศอย่างเดียว อยู่นอกออฟฟิศจะโดน Relaying Denied ทันที ต้องให้ผู้ดูแลเปิดการยืนยันตัวตน

Relaying Denied เกิดกับบัญชี Microsoft 365 ใน Outlook ได้ไหม?

บัญชี Microsoft 365 ที่ตั้งเป็นชนิด Microsoft Exchange ไม่ส่งผ่าน SMTP จาก Outlook จึงไม่เจอ error นี้ ถ้าเจอ แปลว่าบัญชีถูกตั้งเป็น IMAP/SMTP ให้ลบแล้วเพิ่มใหม่เป็น Exchange ส่วนแอปหรืออุปกรณ์ที่ส่งผ่าน connector อาจเจอรหัส 5.7.64 ซึ่งผู้ดูแลต้องแก้

แก้แล้ว อีเมลที่ตีกลับก่อนหน้าจะส่งออกเองไหม?

ไม่ อีเมลที่ถูกปฏิเสธไปแล้วจบแค่นั้น ให้เปิดอีเมลตีกลับแล้วใช้ Send Again ใน classic Outlook หรือเปิดฉบับเดิมจาก Sent Items แล้วส่งต่อใหม่ ถ้าอีเมลยังค้างอยู่ใน Outbox ให้ย้ายไป Drafts แล้วกดส่งใหม่

ถ้าผู้ใช้หลายคนในบริษัทเจอ Relaying Denied พร้อมกัน หรือต้องการให้ช่วยตรวจการตั้งค่า SMTP และกฎ relay ของเซิร์ฟเวอร์อีเมล ติดต่อทีมงาน THAI DATA CLOUD ได้ทันที และดูบริการ Private Mail Server สำหรับองค์กรที่ต้องการเซิร์ฟเวอร์อีเมลของตัวเองพร้อมทีมดูแล

อ่านเพิ่มเติมเกี่ยวกับ Relaying Denied

แชร์FacebookXLINELinkedIn

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