linux-iptables匹配条件总结

Posted yuuuukii

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux-iptables匹配条件总结相关的知识,希望对你有一定的参考价值。

指定单个ip,示例如下:
iptables -A INPUT -s 192.168.2.85 -j ACCEPT
![](https://img2018.cnblogs.com/blog/1890094/201912/1890094-20191216163441045-892107764.png)
指定多个源地址,用“逗号”隔开即可,示例如下:
iptables -t filter -I INPUT -s 192.168.2.85,192.168.2.235,192.168.2.102 -j DROP
![](https://img2018.cnblogs.com/blog/1890094/201912/1890094-20191216164218824-1648904363.png)
指定某个网段,示例如下:
iptables -t filter -I INPUT -s 192.168.1.0/24 -j DROP
![](https://img2018.cnblogs.com/blog/1890094/201912/1890094-20191216164547870-659931074.png)
对匹配条件取反:
iptables -t filter -A INPUT ! -s 192.168.2.85 -j ACCEPTv
![](https://img2018.cnblogs.com/blog/1890094/201912/1890094-20191216165546127-1306967151.png)
匹配目标ip地址:
iptables -t filter -I INPUT -s 192.168.2.85 -d 192.168.2.93 -j DROP
![](https://img2018.cnblogs.com/blog/1890094/201912/1890094-20191216170629015-1670602614.png)
-d 指定目标地址,也可与!连用,表示取
匹配协议类型:
-p 指定需要匹配的报文协议类型
例:拒绝来自85主机的tcp类型的请求
iptables -t filter -I INPUT -s 192.168.2.85 -d 192.168.2.93 -p tcp -j REJECT
![](https://img2018.cnblogs.com/blog/1890094/201912/1890094-20191216171739753-1582479690.png)
防火墙拒绝了来自85主机的tcp报文发往93主机,现在在85主机上使用ssh连接93主机(ssh协议的传输层协议属于tcp协议类型)
![](https://img2018.cnblogs.com/blog/1890094/201912/1890094-20191216172026398-1623890568.png)
匹配网卡接口:
当本机有多个网卡时,我们可以使用-i选项去匹配报文时通过哪块网卡流入本机的
iptables -t filter -I INPUT -i eth0 -p icmp -j DROP
![](https://img2018.cnblogs.com/blog/1890094/201912/1890094-20191216173601485-855315771.png)
-i 指定网卡名称,上例表示丢弃由eth4网卡流入的icmp类型的报文
-o 指定报文时从哪个网卡流出的
-i 只能用于FORWARD、OUTPUT、POSTROUTING链
-o 只能用于FORWARD、OUTPUT、POSTROUTING链

以上是关于linux-iptables匹配条件总结的主要内容,如果未能解决你的问题,请参考以下文章

四表五链 Linux-iptables 防火墙

4.3 合并重复的条件执行片段

linux-iptables

Linux-Iptables/Firewall服务

Linux-iptables详解

iptables详解:iptables匹配条件总结之一