จะทราบได้อย่างไรว่าผู้ใช้รายใดส่งอีเมลเฉพาะพร้อม postfix?


9

เรามีเซิร์ฟเวอร์ postfix ที่ต้องการการตรวจสอบสิทธิ์เพื่อถ่ายทอดผ่าน SMTP เราใช้กล่องจดหมายเสมือนในฐานข้อมูล MySQL

ข้อความถูกถ่ายทอดผ่านระบบของเราและเราต้องตรวจสอบว่าบัญชีผู้ใช้ของเราบัญชีใดที่ใช้ส่ง

ส่วนหัวของข้อความประกอบด้วย:

Received: from User (c-76-109-241-139.hsd1.fl.comcast.net [xx.109.xxx.139]) 
    by ourserver.com (Postfix) with ESMTPA id 7BA184B4AD4; 
    Tue,  3 Jul 2012 05:42:59 -0400 (EDT)

เราไม่มีผู้ใช้ชื่อ "ผู้ใช้" และที่อยู่ IP ไม่ใช่ที่เราจะส่งจดหมายจาก ฉันต้องการค้นหาว่าผู้ใช้คนใดที่บัญชีผู้ใช้ของเราได้รับการรับรองความถูกต้องเมื่อส่งข้อความ

มีวิธีติดตามสิ่งนี้หรือไม่?


ในด้านบนUserคือชื่อโฮสต์ของเมลเซิร์ฟเวอร์ของคุณ คุณเห็นอะไรเช่นนี้Authenticated sender:?
quanta

คำตอบ:


15

หากคุณ grep สำหรับ ID ข้อความ (7BA184B4AD4 ในกรณีของคุณ) ในคุณควรจะหาสายล็อกระบุ/var/log/mail.log sasl_usernameตัวอย่างเช่น:

% zgrep 07A1753F /var/log/mail.log*
Jul  4 19:47:58 mammon postfix/smtpd[4936]: 07A1753F: client=c-69-181-123-456.hsd1.ca.comcast.net[69.181.123.456], sasl_method=PLAIN, sasl_username=mgorven

แก้ไข:หากคุณตั้งค่าsmtpd_sasl_authenticated_header ตัวเลือกใน/etc/postfix/main.cfPostfix จะเพิ่มชื่อผู้ใช้ SASL ไปยังReceivedส่วนหัวในอีเมล โปรดทราบว่าส่วนหัวนี้สามารถแก้ไขได้ดังนั้นวิธีการข้างต้นจึงเป็นวิธีเดียวที่เชื่อถือได้ในการพิจารณาว่าผู้ใช้คนใดที่ส่งข้อความ

smtpd_sasl_authenticated_header = yes

1
ฉันไม่เห็นสิ่งนี้ในบันทึกของฉันรายการทั้งหมดเหล่านี้มีลูกค้า = xxx และไม่มีข้อมูล sasl ไม่ว่าจะใช้ sasl หรือไม่ ฉันเดาว่านี่เป็นเพราะฉันใช้ Dovecot สำหรับการพิสูจน์ตัวตน sasl ไม่ใช่ Cyrus SASL ฉันสามารถให้ Dovecot บันทึกข้อมูลการตรวจสอบสิทธิ์ของตนเองได้ แต่สิ่งเหล่านี้ยากที่จะเทียบได้กับข้อความบันทึกของ postfix
gogoud

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