我的工作服务器是 Centos 6.5。
我允许 SMTP 的传入和传出流量,如下所示,但如果 iptables 已打开,我将无法从服务器发送邮件。
我的 IPtables 文件规则如下
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [28:2028]
#Input
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
-A INPUT -d 0/0 -p tcp -m tcp --sport 1024:65535 --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -d 0/0 -p tcp -m tcp --sport 443 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
-A INPUT -d 0/0 -p tcp -m tcp --sport 1024:65535 --dport 25 -m state --state NEW,ESTABLISHED
-j ACCEPT
#Output
-A OUTPUT -o eth0 -p tcp -m tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -s 0/0 -p tcp -m tcp --sport 443 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -s 0/0 -p tcp -m tcp --sport 1024:65535 --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -s 0/0 -p tcp -m tcp --sport 25 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
COMMIT
请指教。
答案1
你不允许任何一个出站 SMTP 数据包或者(取决于您的 DNS 配置)任何 DNS 查找。需要进行一些更改。
在我继续之前,你有一个商业需要过滤出站流量,还是只是货物崇拜编程?
编辑:如果对此没有任何回应,我认为你应该这样做:
将链上的策略更改
OUTPUT
为ACCEPT
;我看不出有任何理由限制该流量摆脱
OUTPUT
链条上的所有规则在链中添加规则
INPUT
,说明-A INPUT -i eth0 -p tcp --sport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p udp --sport 53 -m state --state NEW,ESTABLISHED -j ACCEPT