|
#23:使用防火墙限制传出连接
攻击者会使用wget之类的工具从你的Web服务器下载文件。使用iptables来阻挡Apache用户的传出连接。ipt_owner模块会为本地数据包的生成者分配不同角色。它只对OUTPUT chain有效。下面指令允许vivek用户通过80端口进行外部访问:- /sbin/iptables -A OUTPUT -o eth0 -m owner --uid-owner vivek -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
复制代码 下面的样例则是阻挡所有Apache用户的传出连接,只允许smtp服务及spam识别API服务通过:- 01 # ....
- 02 /sbin/iptables --new-chain apache_user
- 03 /sbin/iptables --append OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
- 04 /sbin/iptables --append OUTPUT -m owner --uid-owner apache -j apache_user
- 05 # allow apache user to connec to our smtp server
- 06 /sbin/iptables --append apache_user -p tcp --syn -d 192.168.1.100 --dport 25 -j RETURN
- 07 # Allow apache user to connec to api server for spam validation
- 08 /sbin/iptables --append apache_user -p tcp --syn -d 66.135.58.62 --dport 80 -j RETURN
- 09 /sbin/iptables --append apache_user -p tcp --syn -d 66.135.58.61 --dport 80 -j RETURN
- 10 /sbin/iptables --append apache_user -p tcp --syn -d 72.233.69.89 --dport 80 -j RETURN
- 11 /sbin/iptables --append apache_user -p tcp --syn -d 72.233.69.88 --dport 80 -j RETURN
- 12 #########################
- 13 ## Add more rules here ##
- 14 #########################
- 15 # No editing below
- 16 # Drop everything for apache outgoing connection
- 17 /sbin/iptables --append apache_user -j REJECT
复制代码 |
|