Linux中关键字屏蔽域名

华盟原创文章投稿奖励计划

教程思想:一些企业中为了方便的管理员工的电脑,让员工工作更专心,限制PC的浏览访问,比如taobao iqiyi v.qq这些网站。和一些端口限制,不让用某些软件而阻挡软件端口的方法。当然,这些前提下你要让全部的PC连到你的网络中。你在网关和管理机上做一些策略。

目前市场上的大部分软件可以解决这些问题。但是可能有误伤的情况。所以想要在根本解决这些问题,还有什么比较好的方法呢?

教程思路:通过linux中的iptables来控制网络域中链接的用户的上网规则。

什么是iptables?

Iptables是Linux中的防火墙 可以做NAT,将内网IP转为公网IP。可以根据IP,MAC地址,端口,协议,来丢弃一些数据包。负载均衡,放轻微DDOS攻击等。

今天我们主要是利用iptables中string模块。这个模块是限制域名的网址。

String模块原理:在规则中设置好后,PC链接到网络后,如果PC访问被限制的域名。那么string会判断是否符合要求,符合就会把数据包挡在外面。数据包进不来就自然起到了限制域名访问的功能。

我在这里就写一行屏蔽的规则,然后我会把规则中的各种参数的意思在下面注释给大家。

iptables -I OUTPUT -m string --string "baidu.com" --algo bm --to 11782 -j DROP

// -I 写入iptables规则,如果把-I换成-D就是删除规则。

//-m string 使用string模块;

// --string”baidu.com” 限制的域名;

// --algo bm 设置字符匹配的查询算法,一般默认使用bm算法效果就可以了,另外还可以设置kmp算法,那是一种更复杂的算法,详细内容可自行参见高等数学里的资料。(bm = Boyer-Moore, kmp = Knuth-Pratt-Morris)

// --to11782 这里根据需求写端口

// -j DROP 丢弃数据包

OK,这样可以限制网页访问了。其他用途请自行研究。

本文原创,作者:congtou,其版权均为华盟网所有。如需转载,请注明出处:https://www.77169.net/html/253784.html