iptables命令基本用法(2)

iptables 命令详解

iptables命令基本用法(2)

iptables [-t table] {-A|-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

  1. -t table:

filter, nat, mangle, raw

例如:

[root@localhost ~]# iptables -t nat -L –n

  1. 链管理:

-F:flush,清空规则链;省略链,表示清空指定表上的所有的链;

例如:

[root@localhost ~]# iptables -F FORWARD

        -N:new, 创建新的自定义规则链;

例如:

[root@localhost ~]# iptables -t filter -N TEST

例如:

-X:drop, 删除用户自定义的空的规则链;

[root@localhost ~]# iptables -t filter -X TEST

-Z:zero,清零,置零规则计数器;

例如:

[root@localhost ~]# iptables -t filter -Z

-P:Policy,为指定链设置默认策略;对filter表中的链而言,默认策略通常有ACCEPT, DROP, REJECT;

例如:

[root@CactiEZ ~]# iptables -t filter -P INPUT DROP

-E: rEname,重命令自定义链;引用计数不为0的自定义链,无法改名,也无法删除;

例如:

[root@CactiEZ ~]# iptables -t filter -N TEST

[root@CactiEZ ~]# iptables -t filter -E TEST test1

[root@CactiEZ ~]# iptales -L -nv

  1. 规则管理:

-A:append,将新规则追加于指定链的尾部;

例如:

[root@CactiEZ ~]# iptables -A INPUT -p tcp -m state –state ESTABLISHED -j ACCEPT

-I:insert,将新规则插入至指定链的指定位置;

例如:

[root@CactiEZ ~]#-I INPUT 3 -d 11.100.45.65 -p tcp -m state –state RELATED -j ACCEPT

        -D:delete,删除指定链上的指定规则;

例如:

[root@CactiEZ ~]# iptables -D OUTPUT 2

有两种指定方式:

(1) 指定匹配条件;

(2) 指定规则编号;

-R:replace,替换指定链上的指定规则;

例如:

[root@CactiEZ ~]# iptables -R OUTPUT 1 -m state –state RELATED,ESTABLISHED -j ACCEPT

  1. 查看:

-L:list,列出指定链上的所有规则;

-n: numberic,以数字格式显示地址和端口号;

-v: verbose,显示详细信息;

-vv, -vvv

–line-numbers:显示规则编号;

-x: exactly, 显示计数器计数结果的精确值;

例如:

[root@CactiEZ ~]# iptables -L -nv –line-numbers

  1. 匹配条件:
    1. 基本匹配:

[!] -s, –src, –source IP|Netaddr:检查报文中源IP地址是否符合此处指定的地址范围;

例如:

[!] -d, –dst, –destination IP|Netaddr:检查报文中源IP地址是否符合此处指定的地址范围;

例如:

[root@CactiEZ ~]#iptables -I INPUT 3 -d 11.100.45.65 -p tcp -m state –state RELATED -j ACCEPT

-p, –protocol {tcp|udp|icmp}:检查报文中的协议,即ip首部中的protocols所标识的协议;

例如:

iptables -I INPUT 2 -p tcp -d 11.100.45.65 -m multiport –dports 80,22,21 -m state –state NEW,ESTABLISHED -j ACCEPT

-i, –in-interface IFACE:数据报文的流入接口;仅能用于PREROUTING, INPUT及FORWARD链上;

例如:

[root@CactiEZ ~]# iptables -R INPUT 1 -m state –state RELATED,ESTABLISHED -i eth0 -j ACCEPT

-o, –out-interface IFACE:数据报文的流出接口;仅能用于FORWARD, OUTPUT及POSTROUTING链上;

[root@CactiEZ ~]# iptables -R OUTPUT 1 -m state –state RELATED,ESTABLISHED -o eth0 -j ACCEPT

  1. 扩展匹配:-m macth_name –spec_options

例如:-m tcp –dport 22

[root@CactiEZ ~]# iptables -A FORWARD -s 172.16.31.125/32 -p udp -m udp –dport 123 -j ACCEPT

  1. 隐式扩展:对-p protocol指明的协议进行的扩展,可省略-m选项;

-p tcp

–dport PORT[-PORT]:目标端口,可以是单个端口或连续多个端口;

例如:

[root@CactiEZ ~]#iptables -I INPUT 2 -p tcp -d 11.100.45.65 -m multiport –dports 80,22,21 -m state –state NEW,ESTABLISHED -j ACCEPT

–sport PORT[-PORT]

例如:

-[root@CactiEZ ~]#iptables -A FORWARD -d 172.16.31.125/32 -p tcp -m tcp –sports 873 -j ACCEPT

–tcp-flags LIST1 LIST2:检查LIST1所指明的所有标志位,且这其中,LIST2所表示出的所有标记位必须为1,而余下的必须为0;没有LIST1中指明的,不作检查;

SYN, ACK, FIN, RST, PSH, URG

–tcp-flags SYN,ACK,FIN,RST SYN === –syn:

–syn

例如:

-[root@CactiEZ ~]#iptables -A OUTPUT -d 172.16.31.125/32 -p tcp -m multiport –dports 53,80 -m tcp –tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT

    -p udp

–dport PORT[-PORT]:目标端口,可以是单个端口或连续多个端口;

–sport PORT[-PORT]:源端口,可以是单个端口或连续多个端口;

例如:

[root@localhost ~]#iptables -A OUTPUT -d 172.16.31.125/32 -p udp -m multiport –dports 53 -m state –state NEW -j ACCEPT

    -p icmp

–icmp-typ可用数字表示其类型:

0:echo-reply

8: echo-request

例如:

[root@localhost ~]#iptables -A INPUT -d 11.100.45.65/32 -p icmp -m icmp –icmp-type 8 -j ACCEPT

  1. 显式扩展: 必须使用-m选项指定使用的扩展;
  1. 目标:

-j TARGET:jump至指定的TARGET

ACCEPT: 接受

DROP: 丢弃

REJECT: 拒绝

RETURN: 返回调用链

REDIRECT:端口重定向

LOG: 记录日志

MARK:做防火墙标记

DNAT:目标地址转换

SNAT:源地址转换

MASQUERADE:地址伪装

自定义链:由自定义链上的规则进行匹配检查

例如:

[root@localhost ~]#iptables -A OUTPUT -s 11.100.45.65/32 -p udp -m multiport –dports 161 -j ACCEPT

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值