Iptables 扩展模块 string|time 模块

string 模块,可以指定要匹配的字符串,如果报文中包含对应的字符串,则符合匹配条件。

  • --algo 【bm | kmp】∶字符匹配的查询算法
  • --string pattern∶字符匹配的字符串

比如要访问腾讯,那么我就要去匹配这个字符串,一请求我就给你拒绝掉。 

示例∶应用返回的报文中包含字符"hello",我们就丢弃当前报文,其余正常通过。

服务器上面有些站点,站点里面有些关键字video,用户在请求我的时候,请求里面携带video,那么就拒绝掉,这个应该在filter表中的output链上面做。

因为请求经过prerouting送input,input构建响应报文,构建了通过output出去,构建响应报文里面带的关键字有video,那么我要在output上将其关闭掉,这样你去请求video是永远没有办法访问的。

访问本机的video的时候拒绝掉,和穿过我访问video,配置手法是一样,只不过操作的链不一样,一个是output链,一个是forward链。(使用路由器,上面使用IP tables做路由策略,当用户请求时候必须经过路由器穿过去,如果访问jd.com就将其屏蔽掉)

在请求我的时候做不了任何的策略,但是在响应的时候可以做策略和规则的匹配。

示例∶应用返回的报文中包含字符"hello",我们就丢弃当前报文,其余正常通过。

[root@localhost ~]# iptables -t filter -I OUTPUT -p tcp -m string --algo kmp --string "video" -j DROP
[root@localhost ~]# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy DROP)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0            STRING match  "video" ALGO name kmp TO 65535

---------------------------------------------------------------------------------------------------------------------------

路由器实现iptables做规则策略,当用户要请求的时候必须经过路由器穿过去,我要做些限制,如果要访问jd.com,那么就屏蔽掉,这个很明显在filter中做。首先进来的是prerouting,prerouting上做不了,因为它有可能不请求JD,有可能请求本机。所以prerouting就送给forward,那么就在forward上面做策略,如果符合JD那么就拒绝,到不了postingrouting上面去,那么这样就到不了服务器,这就是基于关键字做条件判断,如果符合预期则允许。

[root@localhost ~]# iptables -t filter -I OUTPUT -p tcp -m string --algo kmp --string "jd" -j DROP

 

 

time模块


time 模块,可以根据时间段区匹配报文,如果报文到达的时间在指定的时间范围内,则符合匹配条件。

--timestart hh∶mm【∶ss】∶开始时间

--timestop hh∶mm【∶ss】∶结束时间

【!】--monthdays day【,day..】∶指定一个月的某一天

【!】--weekdays day【,day..】∶指定周一到周天

--kerneltz∶使用内核时区而不是uTc时间

示例∶拒绝每天8∶30~12∶30(00∶30~04∶30)、13∶30~18∶30(05∶30~10∶30),任何主机发送icmp协议

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值