Iptables是Linux的静态防火墙。
CONTENTS
查看规则:
root@cstriker1407-ubuntu:~# iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination
默认的,当前只有三条规则链:INPUT、OUTPU、FORWARD。
INPUT规则链包含进站数据包的规则。
OUTPUT规则链包含出站数据包规则
FORWARD规则链包含转发数据包到其它主机的规则。
Iptables大多数用来配置处理从网络进入Linux服务器的数据包,所以INPUT规则链经常会到用到。当有数据包通过Linux核心,下面几个指令会决定数据包被匹配之后如何处理。
ACCEPT: 数据包允许通过其到达目的地。
REJECT: 数据包被拒绝并返回给发数据包的主机一个简单的解释。
DROP: 数据包被拒绝不返回任何信息。
添加修改规则:
【 http://www.vpser.net/security/linux-iptables.html 】
【 http://www.cnblogs.com/JemBai/archive/2009/03/19/1416364.html 】
【 http://cert.sjtu.edu.cn/doc/linux/s1-fireall-ipt-act.html 】
最近被黑了,这里笔记下一份最简单的iptables配置:
参考
【 http://www.nigesb.com/setting-up-standard-web-server-iptables.html 】
【 http://zshou.is-programmer.com/posts/38730.html 】
iptables -F #清除预设表filter中的所有规则链的规则 iptables -X #清除预设表filter中使用者自定链中的规则 iptables -A FORWARD -p tcp --dport SSH端口 -j ACCEPT #允许SSH端口数据转发,注意这里是dport iptables -A INPUT -p tcp --dport SSH端口 -j ACCEPT #允许SSH端口数据进入,注意这里是dport iptables -A OUTPUT -p tcp --sport SSH端口 -j ACCEPT #允许SSH端口数据发出,注意这里是sport iptables -A FORWARD -p tcp --dport 80 -j ACCEPT #允许WEB 80端口数据转发,注意这里是dport iptables -A INPUT -p tcp --dport 80 -m limit --limit 500/minute --limit-burst 2000 -j ACCEPT #允许WEB 80端口数据进入,注意这里是dport,并且进行限速处理 iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT #允许WEB 80端口数据发出,注意这里是sport iptables -P FORWARD DROP #默认转发数据全部DROP iptables -P INPUT DROP #默认进入数据全部DROP iptables -P OUTPUT DROP #默认发出数据全部DROP iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p udp --sport 53 -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -p udp --dport 53 -j ACCEPT iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -i ppp+ -j ACCEPT iptables -A OUTPUT -o ppp+ -j ACCEPT iptables -A INPUT -p tcp --dport 1723 -j ACCEPT iptables -A INPUT -p 47 -j ACCEPT iptables -A OUTPUT -p 47 -j ACCEPT iptables -F FORWARD iptables -A FORWARD -j ACCEPT iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE iptables -A POSTROUTING -t nat -o ppp+ -j MASQUERADE service iptables save #保存iptables service iptables restart #重启iptables,防止数据丢失
发表评论