SMTP 客户端在向其他域(中继)发送电子邮件之前需要通过用户身份验证。我们可以smtpd_sender_restrictions用来确保 MAIL FROM 地址与经过身份验证的用户匹配。但是如何确保邮件头中的 From 地址与 MAIL FROM 地址匹配呢?我们还想限制 Reply-To 标头,因此垃圾邮件发件人几乎无法使用我们的 SMTP 服务器,即使他们破解了一些用户密码。
结构描述
尝试伪造发件人时会发生什么
mail -s "This is a Subject" -a "From: forged_address@example.net"会导致成功发送邮件观察到的差异
通过增加 postfix'smtpd 的详细程度观察到以下情况
FROM:可接受的值服务器 B 以相同的方式启动,但随后设法更改FROM:标头。这在 postfix smtpd 日志文件中看不到,但在最终发送的邮件中看不到:
Return-Path: <valid_address@example.com>
Delivered-To: herrhannes@example.com
Received: from mail.example.com
by mail.example.com (Dovecot) with LMTP id UuV2IVaP3lvdKAAAEby5rg
for <herrhannes@example.com>; Sun, 04 Nov 2018 07:19:02 +0100 …Run Code Online (Sandbox Code Playgroud)