linux – 使用iptables登录,用户正在向端口25发送电子邮件
因为我们在CBL上列入黑名单,所以我使用iptables设置了以下防火墙规则:
#!/bin/bash iptables -A OUTPUT -d 127.0.0.1 -p tcp -m tcp --dport 25 -j ACCEPT iptables -A OUTPUT -p tcp -m tcp --dport 25 -m owner --gid-owner mail -j ACCEPT iptables -A OUTPUT -p tcp -m tcp --dport 25 -m owner --uid-owner root -j ACCEPT iptables -A OUTPUT -p tcp -m tcp --dport 25 -m owner --uid-owner Debian-exim -j ACCEPT iptables -A OUTPUT -p tcp -m limit --limit 15/minute -m tcp --dport 25 -j LOG --log-prefix "LOCAL_DROPPED_SPAM" iptables -A OUTPUT -p tcp -m tcp --dport 25 -j REJECT --reject-with icmp-port-unreachable 我无法通过localhost与root用户或邮件组成员之外的其他用户连接到端口25 – >所以它似乎工作. 还有一些问题依旧: >您对此规则集的评级有效,以防止来自服务器上托管的错误PHP脚本的垃圾邮件? 解决方法
将OUTPUT表的策略设置为DROP然后显式打开相关端口等可能会更好,但这对您的环境非常具体,因此是OP的练习.
您可以使用-m multiport来匹配最多15个端口,例如 iptables -A OUTPUT -p tcp -m multiport --dports 25,587 -m owner --gid-owner mail -j ACCEPT 允许组邮件在两个端口上发送或 您可以像这样记录新的出站连接 iptables -A OUTPUT -p tcp -m multiport --dports 25,587 -m state --state NEW -j LOG --log-uid --log-prefix "LOCAL_DROPPED_SPAM " 你得到这样的消息
iptables -A OUTPUT -p tcp -m multiport --dports 25,587 -j DROP 最终删除两个端口上的所有出站连接. 请记住,iptables操作按照它们在表中的顺序进行规则,并且第一次匹配获胜 >首先放置您的ALLOW规则>按照LOG规则进行操作>然后DROP (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |