คำตอบสั้น ๆ: 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 ตั้งไม่ตรง
ขั้นตอนที่ 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 ที่ได้ผลบ่อยที่สุด ใช้เวลาไม่ถึงสองนาที
- ไปที่ File > Account Settings > Account Settings เลือกบัญชี IMAP หรือ POP แล้วคลิก Change
- คลิก More Settings แล้วเปิดแท็บ Outgoing Server
- ติ๊ก My outgoing server (SMTP) requires authentication และเลือก Use same settings as my incoming mail server
- ถ้าผู้ให้บริการกำหนดชื่อผู้ใช้ SMTP แยกจากขาเข้า ให้เลือก Log on using แล้วใส่ชื่อผู้ใช้และรหัสผ่านที่ได้รับแทน
- คลิก OK แล้วคลิก Next Outlook จะทดสอบการตั้งค่าและส่งอีเมลทดสอบให้ จากนั้นคลิก Done
วิธีตรวจว่าแก้แล้ว: ส่งอีเมลทดสอบไปที่อีเมลภายนอก เช่น Gmail ส่วนตัว ถ้าส่งออกได้และไม่มีอีเมลตีกลับ Relaying Denied แก้แล้ว ไม่ต้องทำขั้นต่อไป อีเมลที่ตีกลับก่อนหน้านี้ต้องส่งใหม่เอง
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