iptables语法

10.14 iptables语法

iptavles -nvL 查看规则

/etc/sysconfig/iptables    规则保存路径

iptables -F  清空规则  注:清空规则之后,使用命令 iptables -nvL,就看不到默认规则了,但是配置文件 /etc/sysconfig/iptables 里面的内容没有改变。也就是说,想要把当前的规则保存到配置文件里,还需要执行一个命令 service iptables save ,这样清空的规则才会生效。如果不保存的话,可以重启 iptables ,再加载回来

也就是说,重启服务器或是重启 iptables 规则,都会去加载配置文件上的规则。
这些默认的规则都在 filter 这个表上,-t 是指定表,不使用 -t 的话,默认就是 filter 这个表。nat 表里面都是没有规则的,见下图,

service iptables save 保存规则。当我们把规则写完之后,仅仅在当前内存中生效。想要重启后还依然生效,就要做这个保存规则的操作。

iptables -Z  可以把计数器清零

现在给filter表增加一条规则,

iptables命令选项输入顺序:

iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> --sport 源端口 <-d 目标IP/目标子网> --dport 目标端口 -j 动作

输入命令 iptables -A INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -j DROP 

这条命令省略了 -t ,默认为 filter 表;-A 表示增加一条规则,另外还有-I (大写的i)表示插入一条规则,-D删除一条规则;INPUT 表示针对的链,还可以是OUTPUT或者FORWORD;-s 表示后面跟着指定的来源IP,-p 表示协议(tcp, udp, icmp),--sport/--dport 后跟来源端口/目标端口;-d 后跟目的IP(主要针对内网或者外网);-j 后跟动作(DROP即把包丢掉,REJECT即包拒绝;ACCEPT即允许包)。上图中,最下面的红色框框内容就是刚刚增加上去的规则。
总结一下各个选项的作用:
-A/-D :增加删除一条规则;
-I :插入一条规则,其实跟-A的效果一样;
-p :指定协议,可以是tcp,udp或者icmp;
--dport :跟-p一起使用,指定目标端口;
--sport :跟-p一起使用,指定源端口;
-s :指定源IP(可以是一个ip段);
-d :指定目的IP(可以是一个ip段);
-j :后跟动作,其中ACCEPT表示允许包,DROP表示丢掉包,REJECT表示拒绝包;
-i :指定网卡(不常用,但有时候能用到);
还有一种用法 -I(大写的i),输入命令 iptables -I INPUT -p tcp --dport 80 -j DROP ,回车,见下图,

可以看到使用 -I 选项,规则就插入到第一行了。
既然可以增加和插入,肯定也可以删除,使用选项 -D ,输入命令 iptables -D INPUT -p tcp --dport 80 -j DROP 

iptables -nvL --line-number   查看规则行号

输入命令 iptables -D INPUT 7    根据行号删除规则

还有一个选项 -P(大写), 表示预设策略,这是默认的规则,在PuTTY上远程登录的话,输入命令 iptables -P OUTPUT DROP ,回车,会发现整个断掉了,什么也执行不了,只能重启。-P后面跟链名,策略内容或者为DROP或者为ACCEPT,默认是ACCEPT。

表名包括:

  • raw:高级功能,如:网址过滤。
  • mangle:数据包修改(QOS),用于实现服务质量。
  • net:地址转换,用于网关路由器。
  • filter:包过滤,用于防火墙规则。

规则链名包括:

  • INPUT链:处理输入数据包。
  • OUTPUT链:处理输出数据包。
  • PORWARD链:处理转发数据包。
  • PREROUTING链:用于目标地址转换(DNAT)。
  • POSTOUTING链:用于源地址转换(SNAT)。

动作包括:

  • accept:接收数据包。
  • DROP:丢弃数据包。
  • REDIRECT:重定向、映射、透明代理。
  • SNAT:源地址转换。
  • DNAT:目标地址转换。
  • MASQUERADE:IP伪装(NAT),用于ADSL。
  • LOG:日志记录。

猜你喜欢

转载自my.oschina.net/u/3803395/blog/1807438