Iptables防火墙string模块扩展匹配规则

Iptables防火墙string模块扩展匹配规则

String模块的作用是来匹配请求报文中指定的字符串,经常应用于拦截用户访问某些网站的场景,将防火墙当做路由器使用,例如上班时间不允许用户访问淘宝网站等等场景。

String模块的常用参数:

--string pattern:指定要匹配的字符串。

! --string pattern:反向匹配。

--algo:指定匹配的查询算法,有bm和kmp两种算法。

可以在参数前面加!号表示去反。

案例:当用户请求的数据报文中包含taobao.com,则拒绝通行,其余的正常放行。

用户通过防火墙流出然后访问目标端,因此需要在OUTPUT链添加规则。

1)首先来准备含有taobao.com数据报文的WEB网站。

1.安装httpd
[root@jxl-1 ~]# yum -y install httpd
[root@jxl-1 ~]# echo hahaha > /var/www/html/ha.html
[root@jxl-1 ~]# echo taobao.com > /var/www/html/taobao.html
[root@jxl-1 ~]# systemctl restart httpd
2.正常的两个页面
[root@jxl-1 ~]# curl 127.0.0.1/ha.html
hahaha
[root@jxl-1 ~]# curl 127.0.0.1/taobao.html
taobao.com

2)编写防火墙规则,拒绝数据包中包含taobao.com内容的数据包。

[root@jxl-1 ~]# iptables -t filter -I OUTPUT -p tcp -m string --string "taobao.com" --algo bm -j DROP

3)查看设置的防火墙规则。

[root@jxl-1 ~]# iptables -L -n -v --line-number
Chain INPUT (policy ACCEPT 7011 packets, 6693K bytes)
num   pkts bytes target     prot opt in     out     source               destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
Chain OUTPUT (policy ACCEPT 7310 packets, 11M bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            STRING match  "taobao.com" ALGO name bm TO 65535

4)测试效果,发现hahaha的页面可以正常访问,taobao.com页面的请求将被拦截。

以上就是Iptables防火墙string模块扩展匹配规则的详细内容,更多关于Iptables防火墙string模块的资料请关注我们其它相关文章!

(0)

相关推荐

  • Iptables防火墙四表五链概念及使用技巧详解

    目录 1.链的概念 2.Iptables五种链的概念 3.Iptables数据流向经过的表 4.Iptables防火墙四种表的概念 5.Iptables防火墙表与链之间的优先级概念 6.Iptables防火墙表和链之间的使用技巧 **问题1:** **问题2:** 结论: 7.Iptables防火墙几种动作 1.链的概念 在防火墙中,用户想要成功进入内网环境,就需要发送请求报文,请求报文要和防火墙设置的各种规则进行匹配和判断,最后执行相应的动作(放行或者拒绝),一个防火墙中通常针对不同的来源设置

  • Iptables防火墙自定义链表实现方式

    目录 1.为什么要自定义链 2.自定义链的基本应用 3.删除自定义的链 1.为什么要自定义链 为什么需要自定义链呢?默认的四表五链不满足基本使用吗?其实并不是,四表五链完全满足使用,但是当我们同一类程序有很多个防火墙规则时,例如都写在INPUT链中,那么当我们要对其中的一条规则进行调整了,就会发现上下有关联性,修改起来不是那么容器,因为这个INPUT链中还有其他的服务规则. 基于这种情况,我们就可以去自定义一张新的链,在这个链中,只定义这一类程序的防火墙规则. 自定义链的规则优先级: 请求首先到

  • Iptables防火墙tcp-flags模块扩展匹配规则详解

    目录 Iptables防火墙tcp-flags模块扩展匹配规则 **案例:** 1)编写具体的防火墙规则 2)查看设置的防火墙规则 3)查看效果 Iptables防火墙tcp-flags模块扩展匹配规则 tcp-flags模块的作用是判断TCP协议数据报文标志位的返回值的,在TCP的三次握手中,第一次握手客户端向服务器发送syn=1的数据报文,第二次握手服务端向客户端发送sync和ack=1的报文,第三次握手客户端向服务端发送ack=1的报文. tcp-flags模块就是来判断发送报文中指定的标

  • Iptables防火墙iprange模块扩展匹配规则详解

    目录 Iptables防火墙iprange模块扩展匹配规则 案例: 1)编写防火墙规则 2)查看添加的规则 3)测试效果 Iptables防火墙iprange模块扩展匹配规则 iprange模块可以同时设置多个IP或者设置IP的某一段连续的范围,通过iprange模块可以对多个来源地址同时设置策略. iprange模块的参数: --src-range:指定源地址范围. --dst-range:指定目标地址范围. ! --src-range:非指定的源地址. ! --dst-range:非指定的目

  • Iptables防火墙基本匹配条件应用详解

    目录 引言 基本匹配条件案例一 **需求:** 1)实现该需求的防火墙规则如下 2)查看设置的防火墙规则 3)测试结果 基本匹配条件案例二 1)实现该需求的防火墙规则如下 2)查看设置的防火墙规则 3)测试结果 基本匹配条件案例三 1)实现该需求的防火墙规则如下 2)查看设置的防火墙规则 3)测试结果 引言 @[TOC] 应用匹配条件时,经常会用到以下几个参数. -p:指定要操作的协议类型,不指定-p参数声明是那种协议,默认是all,也就是所有协议. -s:指定源地址. -d:指定目标地址. -

  • Iptables防火墙limit模块扩展匹配规则详解

    目录 Iptables防火墙limit模块扩展匹配规则 @[TOC] 1.限制每分钟接收10个ICMP数据报文 2.允许10个数据报文快速通过,然后限制每分钟接收1个个ICMP数据报文 3.限速案例,限制网络传输的带宽不可以超过500k/s Iptables防火墙limit模块扩展匹配规则 @[TOC] limit模块的作用是针对报文的速率进行限制,限制的单位有秒.分钟.小时.天等,例如一分钟内只接收10个请求报文,多余的报文则会被丢弃. limit模块的常用参数: --limit rate[/

  • Iptables防火墙string模块扩展匹配规则

    Iptables防火墙string模块扩展匹配规则 String模块的作用是来匹配请求报文中指定的字符串,经常应用于拦截用户访问某些网站的场景,将防火墙当做路由器使用,例如上班时间不允许用户访问淘宝网站等等场景. String模块的常用参数: --string pattern:指定要匹配的字符串. ! --string pattern:反向匹配. --algo:指定匹配的查询算法,有bm和kmp两种算法. 可以在参数前面加!号表示去反. 案例:当用户请求的数据报文中包含taobao.com,则拒

  • Iptables防火墙connlimit与time模块扩展匹配规则

    目录 Iptables防火墙connlimit模块扩展匹配规则 connlimit模块常用参数: Iptables防火墙time模块扩展匹配规则 time模块的常用参数: Iptables防火墙connlimit模块扩展匹配规则 connlimit模块的作用是限制请求报文对特定服务的并发连接数限制的,例如Telnet服务,默认情况下没有并发连接数的限制,可以允许n个客户端同时连接,如果应用了connlimit模块,可以对并发连接数进行限制. connlimit模块常用参数: --connlimi

  • linux iptables防火墙中的工作常用命令

    目录 linux iptables防火墙-工作常用命令 Linux之iptables防火墙基础 iptables命令行配置方法 查看iptables防火墙规则 关闭某个端口(注意同时添加ip或接口的限制)\iptables 配置只能本地ip访问某端口 防火墙规则放开自己的ip,让自己的ip可以访问 iptables永久生效 报错:The service command supports only basic LSB actions (start, stop, restart, try-resta

  • python中string模块各属性以及函数的用法介绍

    任何语言都离不开字符,那就会涉及对字符的操作,尤其是脚本语言更是频繁,不管是生产环境还是面试考验都要面对字符串的操作. python的字符串操作通过2部分的方法函数基本上就可以解决所有的字符串操作需求: • python的字符串属性函数 • python的string模块 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1.字符串属性函数  系统版本:CentOS release 6.2 (Final)2.6.32-220.

随机推荐