我使用 postfix/dovecot 托管自己的邮件服务器。最近,我收到了几封“电子邮件被拒绝”的电子邮件,就好像我的服务器从一个不存在的帐户发送了垃圾邮件。我搜索了/var/log/mail.log
该帐户名称的任何出现位置,或接收服务器的名称等,但什么也没找到。所以我能想到的可能性是:
- 这些是出于某种原因发送给我的虚假拒绝邮件
- 我没有在日志中搜索正确的内容,或者没有搜索正确的日志等
- 我的服务器不知何故发送电子邮件而不记录它
有什么方法可以真正确认是哪一种情况吗?我不想我的主机因为我不知情地转发垃圾邮件而生我的气
作为参考,我尝试过如下命令:
cat mail.log |grep -v "relay=local" |grep "relay=" |grep "status=sent"
cat mail.log | grep submission
grep -o 'to=<[^@]@.[^>]' /var/log/mail.log
cat mail.log | grep <HOST URL>
cat mail.log | grep <SENDER USER NAME>
我还添加default_transport = error: This server sends mail only locally.
了我的postfix/main.cf
文件,据称可以禁用所有外发邮件,但第二天仍然收到另一封“电子邮件被拒绝”类型的邮件
Postfix 应该记录每条已处理的消息 ID。您收到的退回邮件/NDR 应该(至少)引用原始消息 ID - 将其与您的日志进行比较,可以告诉您所谓的邮件是否来自您的服务器或是否是伪造的。正如 @dave_thompson 指出的那样,整个 NDR 也可能是假的。
使用 SPF、DKIM 和/或 DMARC 等方案可以“保护”您的域名免遭垃圾邮件发送者的滥用 - 如果您还没有这样做,您可能需要研究一下。