参数 -p, --protocol
范例 iptables -A INPUT -p tcp
说明 匹配通讯协议类型是否相符,可以使用 ! 运算符进行反向匹配,例如:
-p !tcp
意思是指除 tcp 以外的其它类型,如udp、icmp ...等。
如果要匹配所有类型,则可以使用 all 关键词,例如:
-p all

参数 -s, --src, --source
范例 iptables -A INPUT -s 192.168.1.1
说明 用来匹配封包的来源 IP,可以匹配单机或网络,匹配网络时请用数字来表示 子网掩码,例如:
-s 192.168.0.0/24
匹配 IP 时可以使用 ! 运算符进行反向匹配,例如:
-s !192.168.0.0/24。

参数 -d, --dst, --destination
范例 iptables -A INPUT -d 192.168.1.1
说明 用来匹配封包的目的地 IP,设定方式同上。

参数 -i, --in-interface
范例 iptables -A INPUT -i eth0
说明 用来匹配封包是从哪块网卡进入,可以使用通配字符 + 来做大范围匹配,例如:
-i eth+
表示所有的 ethernet 网卡
也可以使用 ! 运算符进行反向匹配,例如:
-i !eth0

参数 -o, --out-interface
范例 iptables -A FORWARD -o eth0
说明 用来匹配封包要从哪 块网卡送出,设定方式同上。

参数 --sport, --source-port
范例 iptables -A INPUT -p tcp --sport 22
说明 用来匹配封包的源端口,可以匹配单一端口,或是一个范围,例如:
--sport 22:80
表示从 22 到 80 端口之间都算是符合条件,如果要匹配不连续的多个端口,则必须使用 --multiport 参数,详见后文。匹配端口号时,可以使用 ! 运算符进行反向匹配。

参数 --dport, --destination-port
范例 iptables -A INPUT -p tcp --dport 22
说明 用来匹配封包的目的地端口号,设定方式同上

参数 --tcp-flags
范例 iptables -p tcp --tcp-flags SYN,FIN,ACK SYN
说明匹配 TCP 封包的状态标志,参数分为两个部分,第一个部分列举出想 匹配的标志,第二部分则列举前述标志中哪些有被设置,未被列举的标志必须是空的。TCP 状态标志包括:SYN(同步)、ACK(应答)、FIN(结束)、RST(重设)、URG(紧急)
、PSH(强迫推送) 等均可使用于参数中,除此之外还可以使用关键词 ALL 和 NONE 进行匹配。匹配标志时,可以使用 ! 运算符行反向匹配。

参数 --syn
范例 iptables -p tcp --syn
说明 用来表示TCP通信协议中,SYN位被打开,而ACK与FIN位关闭的分组,即TCP的初始连接,与 iptables -p tcp --tcp-flags SYN,FIN,ACK SYN 的作用完全相同,如果使用 !运算符,可用来 匹配非要求连接封包。

参数 -m multiport --source-port
范例 iptables -A INPUT -p tcp -m multiport --source-port
22,53,80,110
说明用来匹配不连续的多个源端口,一次最多可以匹配 15 个端口,可以使用 ! 运算符进行反向匹配。

参数 -m multiport --destination-port
范例 iptables -A INPUT -p tcp -m multiport
--destination-port 22,53,80,110
说明用来 匹配不连续的多个目的地端口号,设定方式同上

参数 -m multiport --port
范例 iptables -A INPUT -p tcp -m multiport --port
22,53,80,110
说明 这个参数比较特殊,用来匹配源端口和目的端口号相同的封包,设定方式同上。注意:在本范例中,如果来源端口号为
80目的地端口号为 110,这种封包并不算符合条件。

参数 --icmp-type
范例 iptables -A INPUT -p icmp --icmp-type 8
说明用来匹配 ICMP 的类型编号,可以使用代码或数字编号来进行 匹配。请打 iptables -p icmp --help 来查看有哪些代码可用。

参数 -m limit --limit
范例 iptables -A INPUT -m limit --limit 3/hour
说明 用来匹配某段时间内封包的平均流量,上面的例子是用来 匹配:每小时平均流量是否超过一次 3 个封包。
除了每小时平均次外,也可以每秒钟、每分钟或每天平均一次,默认值为每小时平均一次,参数如后: /second、 /minute、/day。 除了进行封 包数量的匹配外,设定这个参数也会在条件达成时,暂停封包的匹配动作,以避免因骇客使用洪水攻击法,导致服务被阻断。

参数 --limit-burst
范例 iptables -A INPUT -m limit --limit-burst 5
说明 用来匹配瞬间大量封包的数量,上面的例子是用来匹配一次同时涌入的封包是否超过 5 个(这是默认值),超过此上限的封包将被直接丢弃。使用效果同上。

参数 -m mac --mac-source
范例 iptables -A INPUT -m mac --mac-source
00:00:00:00:00:01
说明 用来匹配封包来源网络接口的硬件地址,这个参数不能用在 OUTPUT 和 POSTROUTING 规则链上,这是因为封包要送到网 卡后,才能由网卡驱动程序透过
ARP 通讯协议查出目的地的 MAC 地址,所以
iptables 在进行封包匹配时,并不知道封包会送到哪个网络接口去。

参数 --mark
范例 iptables -t mangle -A INPUT -m mark --mark 1
说明 用来匹配封包是否被表示某个号码,当封包被 匹配成功时,我们可以透过 MARK 处理动作,将该封包标示一个号码,号码最大不可以超过 4294967296。

参数 -m owner --uid-owner
范例
iptables -A OUTPUT -m owner --uid-owner 500
说明 用来匹配来自本机的封包,是否为某特定使用者所产生的,这样可以避免服务器使用 root 或其它身分将敏感数据传送出,可以降低系统被骇的损失。可惜这个功能无法
匹配出来自其它主机的封包。

参数 -m owner --gid-owner
范例 iptables -A OUTPUT -m owner --gid-owner 0
说明 用来匹配来自本机的封包,是否为某特定使用者群组所产生的,使用时机同上。

参数 -m owner --pid-owner
范例
iptables -A OUTPUT -m owner --pid-owner 78
说明 用来匹配来自本机的封包,是否为某特定进程所产生的,使用时机同上。

参数 -m owner --sid-owner
范例
iptables -A OUTPUT -m owner --sid-owner 100
说明 用来匹配来自本机的封包,是否为某特定 连接(Session ID)的响应封包,使用时机同上。

参数 -m state --state
范例
iptables -A INPUT -m state --state RELATED,ESTABLISHED
说明 用来匹配连接状态, 连接状态共有四种:INVALID、ESTABLISHED、NEW 和 RELATED。
INVALID 表示该封包的连接编号(Session ID)无法辨识或编号不正确。
ESTABLISHED 表示该封包属于某个已经建立的连接。
NEW 表示该封包想要起始一个连接(重设连接或将连接重导向)。
RELATED 表示该封包是属于某个已经建立的连接,所建立的新连接。例如:FTP-DATA 连接必定是源自某个 FTP 连接。

iptables [match] 常用封包匹配参数的更多相关文章

  1. Django ORM中常用字段和参数

    一些说明: 表myapp_person的名称是自动生成的,如果你要自定义表名,需要在model的Meta类中指定 db_table 参数,强烈建议使用小写表名,特别是使用MySQL作为后端数据库时. ...

  2. Django框架(九) Django之ORM常用字段和参数

    ORM字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型,范 ...

  3. Django ORM常用字段和参数

    常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型,范围 ...

  4. python3开发进阶-Django框架的ORM常用字段和参数

    阅读目录 常用字段 字段合集 自定义字段 字段参数 关系参数 多对多的关联关系的三种方式 一.常用字段 AutoField int自增列,必须填入参数 primary_key=True.当model中 ...

  5. Django框架 之 ORM 常用字段和参数

    Django框架 之 ORM 常用字段和参数 浏览目录 常用字段 字段合集 自定义字段 字段参数 DateField和DateTimeField 关系字段 ForeignKey OneToOneFie ...

  6. Django框架(十一)—— 常用字段、参数、元信息、多对多关联关系

    目录 常用字段和参数 一.ORM字段 二.ORM参数 三.关系字段 1.ForeignKey 2.OneToOneFiled 3.ManyToManyField 四.元信息 五.多对多关联关系的三种方 ...

  7. re 模块 常用正则表达式符号 最常用的匹配语法

      常用正则表达式符号1 '.'     默认匹配除\n之外的任意一个字符,若指定flag DOTALL,则匹配任意字符,包括换行 '^'     匹配字符开头,若指定flags MULTILINE, ...

  8. Django框架(十)--常用字段、参数、元信息、多对多关联关系

    一.ORM字段 # AutoField() int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列 # IntegerField() ...

  9. day07 ORM中常用字段和参数

    day07 ORM中常用字段和参数 今日内容 常用字段 关联字段 测试环境准备 查询关键字 查看ORM内部SQL语句 神奇的双下划线查询 多表查询前提准备 常用字段 字段类型 AutoField in ...

随机推荐

  1. QT应用qmake添加应用图标

    总体解决方案: 1.搜索 [Setting the Application Icon]帮助 2.http://doc.qt.io/qt-5/appicon.html 3.可以在主pro文件中加入如下语 ...

  2. web前端学习(二)html学习笔记部分(7)--web存储2

    1.2.20  web存储 1.2.20.1  Web存储-客户端存储数据新方法 1.两种方式 1)localStorage - 没有时间限制的数据存储 2)针对一个sessionStorage - ...

  3. python学习笔记10--协程、IO、IO多路复用

    本节内容 一.协程 1.1.协程概念 1.2.greenlet 1.3.Gevent 1.4.协程之爬虫 1.5.协程之socket 二.论事件驱动与异步IO 三.IO 3.1.概念说明 3.2.IO ...

  4. Junit测试类

    1.当前工程下--右键bulid path add libraries-Junit4 import org.junit.Test;//导入这个类public class TestJunit { pub ...

  5. Docker Remote API使用准备

    1 修改配置文件 CentOS: /etc/sysconfig/docker Ubuntu: /etc/init/docker.conf 1.添加: DOCKER_OPTS='-H tcp://0.0 ...

  6. MUI - myStorage在ios safari无痕浏览模式下的解决方案

    myStorage在ios safari无痕浏览模式下的解决方案 今天看到了这个帖子LocalStorage 在 Private Browsing 下的一个限制, 吓尿了,如果用户开启了无痕浏览,ap ...

  7. 微信小程序组件——bindtap和catchtap的区别

    了解知识点 DOM模型是一个树形结构,在DOM模型中,HTML元素是有层次的.当一个HTML元素上产生一个事件时,该事件会在DOM树中元素节点与根节点之间按特定的顺序传播,路径所经过的节点都会收到该事 ...

  8. 系统重装后,Mysql数据库重装加载原来数据库

    相信不只我一个人因为重新装了系统后,导致mysql数据库无法使用的问题.尽管可以重新安装一个mysql服务端程序在自己的电脑上,但是要如何才能够将之前的数据库也一并重新恢复呢? 今天,我找到了解决之道 ...

  9. SQL左连接查询 left join ... on

    左连接查询 保留左边主表的所有行(即使在右表没有匹配的行),右表输出满足 on 条件的行,不满足的输出null   示例:组合两个表 - 力扣 表1: Person +--------------+- ...

  10. day15 web前端之css

    css的概念以及初体验 概念: CSS(cascading style sheet)也就是层叠样式表:它是一种网页设计的新技术,现在已经被大多数浏览器所支持,层位网页设计必不可少的工具之一.优点:   ...