ROUTEROS 中只允许访问部分域名的设置思路 ros

2016年3月5日 0 条评论 8.26k 次阅读 2 人点赞

OS中设置NO_internet组允许访问微信的方法及只允许访问某个域名的思路:

对于NO_internet组的ros设置通常为除了允许访问以Server_ip组中的服务器为目标地址外,其余的都不允许访问,在ROS中匹配Content属性并不能允许某个域名可以访问,只能通过Content禁止某个域名,通常的设置为

允许NO_internet组访问Server_ip

ROUTEROS 中只允许访问部分域名的设置思路 ros

丢弃NO_internet组的所有访问

ROUTEROS 中只允许访问部分域名的设置思路 ros

针对NO_internet组,添加的基础访问防火墙设置如上,现在要求将cc组开启可以访问web微信
的权限,尝试了在accept规则中添加各种设置(协议、端口等等,对应drop修改),均不能达到只允许访问WEB微信
的效果,查看Bytes中的流量,发现根本没有匹配到accept的规则,直接跳到了最底下drop

有注意到http://wx.qq.com 正常访问 后会跳到https,于是针对44380端口做了规则,同样还是不行,drop优先级还是高于accept

感觉ROUTEROSfirewall规则里面,如果不指定目标IP而是用域名匹配的话,没有指定Content的最底下这个规则优先级很高,于是想到将地下的drop规则 添加Content,采用了一个英文点号“.”作为drop总规则的Content,此时在规则流量中可以看到accept wx.qq.com的那条规则有流量,但是还是打不开wx.qq.com,左思右想,花了很多时间做些测试,更改Content的内容均无效,后来想到,打开浏览器调试模式,看到wx.qq.com中不仅仅只有wx.qq.com这个域名(不用qq.com这个作为Content,因为这样所有的qq.com就能访问了),于是关掉所有规则正常访问wx.qq.com并记录下所有用到的域名,加入accept中(一个域名一条规则),测试之后,有23个域名有丁点流量,还是无法正常打开wx.qq.com,完全没搞明白为什么不行,只好尝试其他的action,然后看到有一个action的规则是add dst to address list,于是想到可以先将这几个域名用此action把所有对应域名解析出来的ip加到address list里面然后在所有域名之后加一条dst
address list
收集的地址列表,这样便可以达到效果了,设置如下:

ROUTEROS 中只允许访问部分域名的设置思路 ros

address list中加一个wx的空列表,访问了wx.qq.com之后会出现如下:

ROUTEROS 中只允许访问部分域名的设置思路 ros

左侧D表示动态,就是之前acceptadd dst to address list访问域名之后自动添加的ip

但是有一点比较奇怪, 前台用web方式放音乐的QQ音乐网页版(y.qq.com),同样用F12观察了之后有很多域名,但是只要加y.qq.com就可以访问了。

Sevenfal

这个人太懒什么东西都没留下

文章评论(0)