iptables防火墙
一篇基础iptables防火墙规则配置文章:http://www.jb51.net/os/Ubuntu/45291.html
1.查看所有规则 :iptables -L
2. 四种包的状态:ESTABLISHED 、 INVALID 、 NEW 和 RELATED
状态 ESTABLISHED 指出该信息包属于已建立的连接,该连接一直用于发送和接收信息包并且完全有效。 INVALID 状态指出该信息包与任何已知的流或连接都不相关联,它可能包含错误的数据或头。状态 NEW 意味着该信息包已经或将启动新的连接,或者它与尚未用于发送和接收信息包的连接相关联。最后, RELATED 表示该信息包正在启动新连接,以及它与已建立的连接相关联。
3. TARGETS
防火墙的规则指定所检查包的特征,和目标。如果包不匹配,将送往该链中下一条规则检查;如果匹配,那么下一条规则由目标值确定.该目标值可以是用户定义的链名,或是某个专用值,如ACCEPT[通过], DROP[删除], QUEUE[排队], 或者 RETURN[返回]。
ACCEPT 表示让这个包通过。DROP表示将这个包丢弃。QUEUE表示把这个包传递到用户空间。RETURN表示停止这条链的匹配,到前一个链的规则重新开始。如果到达了一个内建的链(的末端),或者遇到内建链的规则是RETURN,包的命运将由链准则指定的目标决定。
4.linux ubuntu下默认不过滤所有流量
5.iptables 可执行文件在/sbin/iptables
6.iptables -F 关闭iptables防火墙
7.查看所有防火墙iptables规则:iptables -F
8.iptables -A INPUT -j ACCEPT #iptables不过滤所有流量 ,以下命令需要获得root权限
9.iptables -I INPUT 1 -p tcp -i eth0 --dport 22 -j DROP #阻塞所有通过22端口的以太网卡的tcp流量
10.iptables -I INPUT 1 -i lo -j ACCEPT #允许回环流量
iptables -I INPUT 2 -m limit --limit 5/min -j LOG --log-prefix "iptables denied:" --log-level 7 #限制链接为每分钟5次,并且记录到系统日志中
11.iptables-save -c > /etc/iptables_rule #将iptables防火墙规则定向到/etc/iptables_rule文件中
12.iptables-restore < /etc/iptables_rule #从文件中恢复iptables防火墙规则
13.开机启动,iptables防火墙的规则会丢失,若要自动加载,可以在/etc/network/interfaces 添加如下两句:
pre-up iptables-restore < /etc/iptables_rule
14.ubuntu启动iptables 防火墙 modprobe ip_tables
15.ubuntu关闭iptables防火墙
iptables -F
iptables -X
iptables -Z
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
modprobe -r ip_tables