![如何限制 Postfix 仅接受特定外部电子邮件地址的本地电子邮件传递](https://linux22.com/image/761403/%E5%A6%82%E4%BD%95%E9%99%90%E5%88%B6%20Postfix%20%E4%BB%85%E6%8E%A5%E5%8F%97%E7%89%B9%E5%AE%9A%E5%A4%96%E9%83%A8%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%E5%9C%B0%E5%9D%80%E7%9A%84%E6%9C%AC%E5%9C%B0%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%E4%BC%A0%E9%80%92.png)
我有一个使用 postfix 的电子邮件系统,其中所有本地用户 ID 都有一个不同的“官方”电子邮件地址,格式为“[电子邮件保护]“。
使用虚拟用户或别名,我可以正确地重定向所有这些”[电子邮件保护]“到正确的本地“用户 ID”地址……
但是,我怎样才能防止电子邮件直接发送到“[电子邮件保护]“从外部?
显然,我需要保持本地电子邮件传递到实际用户 ID(在经过虚拟用户或别名转换之后),但我不希望来自外部直接发送给用户 ID。我想将所有这些直接发送的外部电子邮件重定向到“[电子邮件保护]“到另一个“catch all”别名..
提前致谢
编辑:在虚拟用户文件或别名文件中使用以下语法不起作用:
[电子邮件保护] 用户身份
[电子邮件保护] catchall_for_userids
因为它将所有电子邮件发送到“catchall_for_userids”地址(没有向真实用户提供正确的外部电子邮件地址的本地电子邮件传递...)
答案1
您可以使用smtpd_recipient_restrictions
与check_recipient_access
编写一个限制,以防止通过 SMTP 提交到[email protected]
。
也许是这样的:
/etc/postfix/main.cf
:
smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/recipient_access
/etc/postfix/recipient_access
:
[email protected] REJECT