我正在尝试构建一个系统来分析收到的电子邮件并自动删除永久失败的电子邮件。但我从未收到过向无效地址发送电子邮件时通常会收到的那些电子邮件。
为了测试我的系统我使用命令
mail -s "test mail" [email protected]
我回复[电子邮件保护]打个招呼,然后我在 myserverdomain.com 上收到了电子邮件。
然后我尝试这个:
mail -s "test mail" [email protected]
但我从来没有收到过告知你这不是一个有效地址的电子邮件。
如果我从“经典”电子邮件客户端(例如 gmail)发送电子邮件到[电子邮件保护],我几乎立即收到这封电子邮件告诉我这不是一个有效的地址。
所以我是不是遗漏了什么?我想是的。
我在 Debian 上使用 Postfix 最新版本。它配置在端口 6666(实际上不是 25)。我在同一台机器上使用端口 25 上的另一个 smtp 服务器,它是一个接收外部电子邮件并对其进行分析的 python 脚本。
答案1
好的,我已让它工作了。
以下是对所发生事件的解释:
- 当我使用 postfix 发送电子邮件时,postfix 会联系接收者电子邮件地址中域的 smtp 服务器。
- SMTP 服务器回复该帐户无效。
- Postfix 准备一封错误电子邮件,发送到电子邮件的“返回路径”字段,[电子邮件保护]
- Postfix 认为这是一个本地电子邮件地址,因此他使用自己的 SMTP 服务器发送此电子邮件。我为在此服务器上接收电子邮件而构建的 python SMTP 服务器被绕过,我从未在我的 python 脚本中看到过此错误电子邮件。
为了解决这个问题,我在 Postfix 配置中添加了一个别名:(debian)
vi /etc/aliases
在文件中添加这个新别名
root: [email protected]
然后修补别名数据并重新启动 python
newaliases
postfix reload