Sendmail: ที่อยู่ผู้ส่งถูกปฏิเสธ (ไม่พบโดเมน)


11

ฉันพบปัญหาในการส่งจดหมายบนเว็บเซิร์ฟเวอร์ของเรา อีเมลบางฉบับจะถูกส่งและส่งโดยไม่มีปัญหาใด ๆ (เช่น Gmail) ในขณะที่อีเมลอื่นถูกเลื่อนออกไปด้วย "ที่อยู่ผู้ส่งถูกปฏิเสธ: ไม่พบโดเมน"

ฉันเข้าใจว่านี่เป็นมาตรการป้องกันสแปมโดยทำการค้นหาในโดเมนที่ส่ง แต่โดเมนของเรามีระเบียน MX:

Server:     8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
premiumconnect.co.za    mail exchanger = 10 za-smtp-2.mimecast.co.za.
premiumconnect.co.za    mail exchanger = 10 za-smtp-1.mimecast.co.za.

Authoritative answers can be found from:    

(แยกกันทำไมเราไม่มีคำตอบที่เชื่อถือได้? นั่นอาจเป็นปัญหาได้)

เช่นเดียวกับบันทึก A:

Server:     8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
Name:   premiumconnect.co.za
Address: 196.28.97.202

นี่คือบันทึกสำหรับจดหมายบางฉบับที่พยายามจะส่ง:

Feb  5 12:07:52 premiumconnect sm-mta[2411]: s15C7qYp002411: from=<bookings@premiumconnect.co.za>, size=3522, class=0, nrcpts=1, msgid=<52f22998c2680@premiumconnect.co.za>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Feb  5 12:07:52 premiumconnect sendmail[2410]: s15C7q0o002410: to=*****@tott.co.za, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=33324, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (s15C7qYp002411 Message accepted for delivery)
Feb  5 12:07:52 premiumconnect sm-mta[2413]: s15C7qYp002411: to=<*****@tott.co.za>, delay=00:00:00, xdelay=00:00:00, mailer=esmtp, pri=123522, relay=antispam-vdc-01.gam.co.za. [41.0.5.44], dsn=4.1.8, stat=Deferred: 450 4.1.8 <bookings@debian70.vm>: Sender address rejected: Domain not found
Feb  5 12:07:53 premiumconnect sm-mta[2413]: s15C7qYp002411: to=<*****@tott.co.za>, delay=00:00:01, xdelay=00:00:01, mailer=esmtp, pri=123522, relay=mx-filter-01.gam.co.za. [41.0.5.131], dsn=4.1.8, stat=Deferred: 450 4.1.8 <bookings@debian70.vm>: Sender address rejected: Domain not found
Feb  5 12:12:46 premiumconnect sm-mta[2479]: s15C7qYp002411: to=<*****@tott.co.za>, delay=00:04:54, xdelay=00:00:00, mailer=esmtp, pri=213522, relay=mx-filter-01.gam.co.za. [41.0.5.131], dsn=4.1.8, stat=Deferred: 450 4.1.8 <bookings@debian70.vm>: Sender address rejected: Domain not found
Feb  5 12:12:46 premiumconnect sm-mta[2479]: s15C7qYp002411: to=<*****@tott.co.za>, delay=00:04:54, xdelay=00:00:00, mailer=esmtp, pri=213522, relay=antispam-vdc-01.gam.co.za. [41.0.5.44], dsn=4.1.8, stat=Deferred: 450 4.1.8 <bookings@debian70.vm>: Sender address rejected: Domain not found

ฉันมีประสบการณ์เล็กน้อยกับ Sendmail (หรือ MTA ทั่วไป) ไม่แน่ใจว่าข้อมูลอื่นใดที่อาจเป็นประโยชน์


หากคุณไม่ได้ให้คำตอบอย่างเป็นทางการคุณต้องตรวจสอบให้แน่ใจว่าผู้รับจดทะเบียนโดเมนของคุณมีเซิร์ฟเวอร์ NS ของคุณอยู่ในรายการ ..
NickW

บริษัท จดทะเบียนโดเมนของเราบังคับให้เราใช้เซิร์ฟเวอร์ชื่อของพวกเขาไม่สามารถเปลี่ยนได้หากฉันต้องการที่จะโชคร้าย ...
JonoCoetzee

ถ้าคุณถูกบังคับให้ใช้พวกเขาคุณต้องแน่ใจว่าเซิร์ฟเวอร์ NS ของพวกเขาคืนระเบียนที่คุณต้องการและรวมถึงระเบียน MX ที่เหมาะสม ตรวจสอบให้แน่ใจด้วยว่า ISP ของคุณหรือ บริษัท โฮสติ้งของคุณเผยแพร่เรคคอร์ด RDNS ที่เหมาะสมสำหรับเมลเซิร์ฟเวอร์ของคุณ
NickW

โอเคระเบียนที่ส่งคืนข้างต้นนั้นถูกต้องสำหรับโดเมนของเราและสิ่งที่ตั้งไว้ใน NS ที่มีสิทธิ์ (ที่ผู้รับจดทะเบียน) รวมถึงระเบียน MX ที่ชี้ไปที่เซิร์ฟเวอร์จดหมายภายนอก นอกจากนี้ mailserver (กำหนดไว้ในเรคคอร์ด MX) แก้ไขด้วยการค้นหา DNS ย้อนกลับ แม้ว่าโดเมน / เว็บเซิร์ฟเวอร์ไม่แน่ใจว่าจะมีผลกระทบต่อสิ่งนี้หรือไม่
JonoCoetzee

ดังนั้นเว็บเซิร์ฟเวอร์ของคุณจะถ่ายทอดผ่านโปรแกรมรับส่งเมลของคุณหรือไม่ นั่นจะเป็นวิธีที่ง่ายที่สุดเพื่อให้มั่นใจว่าจดหมายที่พวกเขาจะส่งจะผ่านไป ..
NickW

คำตอบ:


8

ข้อผิดพลาดนี้เกี่ยวกับที่อยู่ 'จาก' ไม่ใช่เซิร์ฟเวอร์อีเมลที่ส่ง ดังนั้นระเบียน MX จึงไม่เกี่ยวข้องและการตั้งค่า MTA ของคุณอาจไม่เกี่ยวข้องกัน

ปัญหาคือคุณกำลังส่งอีเมลจาก "reservations@debian70.vm" ซึ่งผู้รับอย่างถูกต้องกำหนดว่าไม่สามารถเป็นที่อยู่อีเมลที่ถูกต้องเนื่องจากโดเมน debian70.vm ไม่มีอยู่

โซลูชันจะขึ้นอยู่กับว่าคุณสร้างอีเมลเหล่านี้อย่างแน่นอน ทางเลือกหนึ่งคือการระบุที่อยู่ 'จาก' ที่ต้องการในซอฟต์แวร์ใดก็ตามที่กำลังสร้างอีเมลเหล่านี้

ในทางกลับกันดูเหมือนว่าคุณไม่ได้ระบุที่อยู่ 'จาก' แต่ให้ระบบสร้างที่อยู่ ในกรณีนั้นส่วนหลัง @ ถูกตั้งค่าตามสิ่งที่ระบบคิดว่าเป็นชื่อเมล Debian จะตรวจสอบ '/ etc / mailname' เพื่อตรวจสอบสิ่งนี้และหากไม่พบสิ่งใดก็จะใช้ชื่อโดเมนที่ผ่านการรับรองซึ่งในกรณีของคุณคือ 'debian70.vm' - ชื่อที่ใช้ได้สำหรับเครือข่ายภายในของคุณเท่านั้น อยู่ในโดเมนระดับบนสุด. vm

หากคุณแก้ไข / etc / mailname (สร้างหากจำเป็น) เพื่อพูดว่า 'premiumconnect.co.za' (โดยไม่ใส่เครื่องหมายอัญประกาศ) มันอาจจะแก้ปัญหาของคุณได้

ถ้าไม่เช่นนั้นอาจบ่งบอกว่า MTA กำลังสร้างที่อยู่ตามการกำหนดค่าอื่น ๆ ดังนั้นเราจะต้องทราบเพิ่มเติมเกี่ยวกับการตั้งค่า MTA ของคุณ


from=<bookings@premiumconnect.co.za>ฉันจะได้รับว่าถ้าคุณดูที่บรรทัดแรกในบันทึกคุณจะเห็นว่าว่าจากที่อยู่มีการตั้งค่า: ฉันได้ลองตั้งค่า / etc / mailname แล้ว อะไรจะทำให้สิ่งนี้ไม่ทำงาน
JonoCoetzee

ฉันทดสอบอีกครั้งด้วย Gmail และอีเมลยังคงดำเนินต่อไปในฐานะ reservations@debian70.vm? ฉันได้เริ่มบริการ sendmail ใหม่ แต่ไม่มีการเปลี่ยนแปลง
JonoCoetzee

ฉันมีAuthentication-Warning: premiumconnect.co.za: www-data set sender to bookings@premiumconnect.co.za using -fใน mail.log สิ่งนี้อาจเกี่ยวข้องกันไหม
JonoCoetzee

2

มันควรจะแก้ไขโดเมน debian70.vm อย่างไร? ดูเหมือนว่าฉันคุณกำลังใช้ reservations@debian70.vm เป็นที่อยู่ผู้ส่ง การตรวจสอบสแปมดำเนินการผ่าน debian70.vm ซึ่งไม่สามารถแก้ไขได้


@slm Nope นั่นคือคำตอบที่แท้จริง สำหรับฉันเขากำลังพยายามส่งอีเมลเป็น reservations@debian70.vm ซึ่งโดเมนไม่สามารถแก้ไขได้โดยเซิร์ฟเวอร์ระยะไกล ขออภัยถ้ามันไม่ชัดเจนฉันจะแก้ไขคำตอบของฉัน
เมา

Stoned เป็นสิทธิที่เป็นปัญหาหลัก .. รองหนึ่งอาจเป็นสาเหตุเซิร์ฟเวอร์การถ่ายทอดของเขาคือการยอมรับการอยู่เช่น :) ว่า
NickW

@stoned - การแก้ไขทำให้ดีขึ้นฉันได้ลบความคิดเห็นออกขอบคุณ
slm

@NickW ดูเหมือนจริงสำหรับฉันที่เขาใช้เครื่องท้องถิ่น (127.0.0.1) เพื่อส่งจดหมายดังนั้นจึงใช้งานได้ ฉันเดาว่าเขาไม่ได้ส่งเมลไปยังที่อื่นไม่เช่นนั้นเขาอาจได้รับเมลที่ล้มเหลวแทนที่จะบันทึกข้อผิดพลาด หากเป็นเช่นนั้นเขาจะมีปัญหากับตัวตรวจสอบสแปมอย่าง SpamAssassin แต่โดยปกติเขาจะไม่ได้รับคำติชมใด ๆ - ข้อความจะถูกลบทิ้งโดยเซิร์ฟเวอร์อีเมลของผู้รับ
เมา

ผมเห็นด้วยซึ่งเป็นเหตุผลที่อยู่เบื้องหลังความคิดเห็นล่าสุดของฉันภายใต้คำถามของเขา :)
NickW

1

ฉันพบปัญหาเมื่อฉันถูกชี้ไปในทิศทางที่ถูกต้องโดยคำตอบอื่น ๆ sendmail.mc (สร้างอัตโนมัติ) มีบรรทัดMASQUERADE_AS(`debian70.vm')dnlฉันเปลี่ยนมันเป็นMASQUERADE_AS(`premiumconnect.co.za')dnlและอีเมลจะถูกตั้งค่าอย่างถูกต้องตอนนี้ ขอบคุณสำหรับความเข้าใจ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.