正如您如何检测networking上的垃圾邮件一样? 我怎样才能设置防火墙规则,只允许Postifx在端口25上使用SMTP发送邮件,并且不允许所有其他应用程序在端口25上发送?
我想控制单机的邮件服务器。
这里正在讨论一些相关的东西,但是不知道Iptables的规则。
做两件事:
在自己的用户帐户下运行Postfix。 它应该已经这样做了,在任何一个健全的系统上。
设置一个与该帐户的uid匹配的iptables规则,该规则阻止传出stream量到达目标端口25而不是来自该用户。
例如:在这里,我们假定用户名是postfix ,尽pipe它可能在你的系统上有所不同。
iptables -I OUTPUT -m owner ! --uid-owner postfix -m tcp -p tcp --dport 25 -j REJECT --reject-with icmp-admin-prohibited ip6tables -I OUTPUT -m owner ! --uid-owner postfix -m tcp -p tcp --dport 25 -j REJECT --reject-with icmp6-adm-prohibited
请注意,保存规则时,用户名将被转换为数字uid。
@ MichaelHampton的答案是非常好的,如果你只是试图调节一个单一的Linux系统的行为。 链接的服务器默认页面的标题是指networking。 从你的文章中不清楚,如果这是你需要做的一部分。
您可以通过限制发送到您的networking外部的端口25来解决这个问题,因此只能通过该networking中的单个IP访问。 该IP可以与locking系统(可能是虚拟的或集装箱的)相关联,该系统只运行邮件中继。 另一方面,如果你有不可信的进程可以从IP发送,然后回到@ MichaelHampton的答案如何locking。