iptables命令详解

iptables
语法:
iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> --sport 源端口 <-d 目标IP/目标子网> --dport 目标端口 -j 动作
iptables [-t table] {-A|-C|-D} chain rule-specification
       ip6tables [-t table] {-A|-C|-D} chain rule-specification
       iptables [-t table] -I chain [rulenum] rule-specification
       iptables [-t table] -R chain rulenum rule-specification
       iptables [-t table] -D chain rulenum
       iptables [-t table] -S [chain [rulenum]]
       iptables [-t table] {-F|-L|-Z} [chain [rulenum]] [options...]
       iptables [-t table] -N chain
       iptables [-t table] -X [chain]
       iptables [-t table] -P chain target
       iptables [-t table] -E old-chain-name new-chain-name
       rule-specification = [matches...] [target]
       match = -m matchname [per-match-options]
       target = -j targetname [per-target-options]
表名:
filter:包过滤,用于防火墙规则。这是默认的表名。
nat:地址转换,用于网关路由器。
mangle:数据包修改(QOS),用于实现服务质量。
raw:高级功能,如:网址过滤。
security:MAC网络规则。
规则链名:
PREROUTING:在进行路由选择前处理数据包。
INPUT:处理流入的数据包。
OUTPUT:处理流出的数据包。
FORWARD:处理转发的数据包。
POSTROUTING:在进行路由选择后处理数据包。
动作:
ACCEPT:接收数据包。
DROP:丢弃数据包。
RETRUN:阻止穿过这个规则链,继续下一条规则。
选项:
命令:
-A:在指定的规则链中添加1个或者多个新的规则。
-C:检查规则是否在指定的规则链中。
-D:删除规则链。可以是一个规则,或者是一个规则号。
-I:在指定的规则链中插入一个或多个规则。默认插入到最前面。
-R:在指定的规则链中替换规则。如果源地址、目标地址可以解析成多个地址,该命令将执行失败。
-L:在指定的规则链中罗列所有的规则。如果没有指定规则链,则把全部的规则罗列出来。默认是filter数据表。常常与其它参数组合使用,如iptables -n -L或者iptables -L -v。
-S:输出指定规则链中的所有规则。默认是filter数据表。
-F:删除指定规则链中的规则。
-Z:清空规则链中的数据包计算器和字节计数器。
-N:使用指定的名称创建一个新的自定义的规则链。
-X:删除一个自定义的规则链。
-P:对指定的目标设置规则策略。
-E:将原有的规则链名称命名为新的名称。
参数:
-4:ipv4,这个参数对iptables和iptables-restore命令不起作用。对于iptables-restore和ip6tables-restore命令,这个选项允许将规则放到一个规则文件中。
-6:ipv6,在使用iptables-restore,如果规则中使用了这个参数,它将默认被忽略掉。其它时候使用时,将抛出来错误。iptables-restore和ip6tables-restore命令可以使用该参数,将ipv4和ipv6的规则放到单独的规则文件中。该参数对于ip6tables和ip6tables-restore命令不起作用。(该命令的解释,前后有矛盾)
[!]-p:检查规则或者包的协议。协议可能是tcp,udp,udplite,icmp,icmpv6,esp,ah,sctp,mh。“!”表示起相反的作用。
[!]-s:源地址可以是一个网络名称,主机名,网络IP地址或者一个普通IP地址。
[!]-d:目标地址的说明。--dst是这个参数的别名。
-m:指定一个匹配。
-j:说明规则的目标内容(即哪项动作)。
-g:这个参数使得该进程在自定义规则链中继续执行。而不是像jump参数,在规则链中返回后不将继续执行。
[!]-i:指定接收数据包的接口,即指定数据包进入本机的网络接口。
[!]-o:指定发送数据包的接口,即指定数据包要离开本机所使用的网络接口。
-c:设置包、字节的容量大小。
其它选项:
-v:冗长输出。
-w:为了预防多个实例,等待获得xtable的锁。
-n:IP地址和端口号使用数字形式输出。
-x:显示详细的包、字节数量。
--line-numbers:显示序号。

转载于:https://www.cnblogs.com/apromise/p/8520552.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值