9-家长控制-儿童上网

文章介绍了如何使用iptables的time扩展模块在Linux系统中实现家长控制功能,通过设置特定的时间段禁止或允许特定设备(通过IP或MAC地址识别)上网。这包括在FORWARD和INPUT链中添加规则,以及指定工作日和时间范围来限制网络访问。
摘要由CSDN通过智能技术生成

家长控制或者儿童上网,说的都是可以指定某个设备可以在某个时间段允许上网,或者某个时间断不允许上网。

1、禁止上网

禁止上网比较直接,当检测在当前时间断,则将包丢弃

使用iptables的time扩展模块,进行时间检测。

在FORWARD链DROP掉数据包,

例如19:00-21:00禁止IP上网:

iptables -I FORWARD -s 192.168.1.103  -m time --timestart 19:00 --timestop 21:30 --kerneltz -j DROP

这边的kerneltz代表使用内核上的时区,而非默认的UTC

又或者19:00-21:00禁止mac地址上网:

iptables -I FORWARD -m mac --mac-source 48:A9:22:71:8B:13  -m time --timestart 19:00 --timestop 21:00 --kerneltz -j DROP

另外时间后面可以指定礼拜几–weekdays,比如:

iptables -I FORWARD -s 192.168.1.103 -m time --timestart 5:00 --timestop 6:30 --weekdays 1,2,3,4,5 -j DROP

或者使用英文:

iptables -I FORWARD -s 192.168.1.103  -m time --timestart 5:00 --timestop 6:30 --weekdays Mon,Tue,Wed,Thu,Fri,Sat,Sun -j DROP

openwrt利用防火墙规则禁止某个ip或者mac规定时间,规定日子禁止上网,而局域网能访问的iptables规则

也可以直接在INPUT链上面禁止,这样设备就连局域网也无法访问

iptables -I INPUT -s 192.168.1.103  -m time --timestart 5:00 --timestop 6:30 --days Mon,Tue,Wed,Thu,Fri,Sat,Sun -j DROP
2、允许上网

禁止上网是直接DROP,允许上网的话,则是这一段时间断ACCEPT,其他时间段都DROP,所以我们只需要确保ACCECP在DROP之前即可

例如19:00-21:00允许IP上网,其他时间段不允许:

iptables -I FORWARD -s 192.168.1.103  -m time --timestart 19:00 --timestop 21:30 --kerneltz -j ACCEPT
iptables -I FORWARD -s 192.168.1.103 -j DROP

如果有多个时间断的话,也必须确保所有的ACCECT再最后的DROP之前

如礼拜一到礼拜五20:00到21:00允许上网,周末17:00到21:30允许上网。

iptables -I FORWARD -s 192.168.1.103  -m time --timestart 20:00 --timestop 21:00 --weekdays 1,2,3,4,5 --kerneltz -j ACCEPT
iptables -I FORWARD -s 192.168.1.103  -m time --timestart 19:00 --timestop 21:30 --weekdays 6,7 --kerneltz -j ACCEPT
iptables -I FORWARD -s 192.168.1.103 -j DROP

http://www.zsythink.net/archives/1564

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值