我正在CentOS 7上运行邮件服务器。所有程序和系统都是最新的。我的邮件传输代理是Postfix,它使用Dovecot SASL对用户进行身份验证。
在Postfix的配置中,我的受信任网络仅是localhost。因此,每个主机都必须在Dovecot SASL下进行身份验证才能发送消息。
例如,恶意用户是否可以访问帐户。他可以发送消息,就好像他是Ana,Bob等。我该如何预防?
换句话说,我希望仅当通过身份验证的用户在发件人标头中相同时才发送消息。存在任何工具吗?
您可能想reject_sender_login_mismatch
在smtpd_sender_restrictions
配置中使用该参数,因此您将获得以下内容:
smtpd_sender_restrictions =
permit_mynetworks,
reject_sender_login_mismatch,
permit_sasl_authenticated,
...
这将允许mynetworks
发送电子邮件,但是在允许SASL身份验证的客户端之前,它将检查发件人的登录名是否不匹配。
根据Postfix文档:
reject_sender_login_mismatch:当$ smtpd_sender_login_maps指定MAIL FROM地址的所有者但客户端未以该MAIL FROM地址所有者的身份(SASL)登录时,拒绝请求。或当客户端(SASL)登录时,但是根据$ smtpd_sender_login_maps,客户端登录名不拥有MAIL FROM地址。
这意味着为可以使用每个电子邮件地址(包括他们自己)的用户创建一个新的地图。因此,如果您有一个名为[email protected]的地址,则需要添加地图:
[email protected] [email protected]
为了允许[email protected]在验证后从该帐户发送电子邮件。
这也允许您创建身份,因此一个帐户可以有多个允许的发件人:
[email protected] [email protected]
这将使标识为[email protected]的任何人也可以发送具有[email protected]身份的消息。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句