如何在DD-WRT路由器上阻止特定的URL?


9

我一直在到处寻找这个。有谁知道如何在DD-WRT路由器上阻止特定的URL?例如,我想阻止website.com/whatever,但没有website.comblah.website.comwebsite.com/blah。有没有办法做到这一点,还是只能阻止整个域?

我尝试在DD-WRT配置中的“访问限制”下添加有问题的URL,但似乎没有任何效果。这是我的设置:

在此处输入图片说明

这是客户列表:

在此处输入图片说明

我仍然可以在IP地址为192.168.1.146的主PC上轻松浏览至google.com/imghp和google.com/images(重定向到google.com/imghp)。

在DD-WRT Wiki的此页面上,显示“在通过URL地址阻止网站下,输入要阻止的域名(如果有)”。除了DD-WRT论坛上的帖子外,这给我的印象是,您只能在DD-WRT设置中的“访问限制”下阻止域。

我开始怀疑是否必须使用iptables解决此问题,或者可能通过在路由器本身上安装代理服务器来解决。

编辑

DD-WRT论坛上的goli用户对此事有这样的看法(链接):

DD-WRT上的Privoxy版本运行良好。我刚刚安装了它。

Privoxy具有参数“ accept-intercepted-requests 1”,可以将其用作透明代理。

我添加了一个iptables规则,该规则将一些Web流量请求传递到代理,而不是直接路由它:

iptables -t nat -A PREROUTING -i br0 -p tcp --dport 80 -s 192.168.0.128/255.255.255.224 -j DNAT --to 192.168.0.1:8118 

Privoxy具有所谓的“动作文件”。这些定义了当请求URL匹配给定的正则表达式时该怎么做。可能的动作之一是“阻止”。

从那时起,我一直在研究如何在路由器上安装Privoxy。这相当复杂,特别是因为我没有足够的备用闪存来使用ipkg通过SSH安装它。(有关超级用户,请参阅此问题。)

我的第二种方法是使用固件修改套件,您可以在此处阅读有关内容。我在刷新自定义版本时遇到了一些困难,但是一旦所有问题都整理妥当,我将在这里发布结果。


网址请求路径是https请求加密部分的一部分,路由器不应看到该路径。
haventcheck

Answers:


3

不幸的是,我从DD-WRT论坛获得的印象是,您只能在DD-WRT设置中的“访问限制”下阻止域。

相反,我决定设置一台安装了DansGuardian的专用代理服务器,这将使我获得更好的控制权,并使用OpenWrt中的iptables阻止任何未通过路由器上的代理的请求。


2

按着这些次序:

  • 转到dd-wrt网络界面中的“访问限制”标签
  • 启用政策
  • 设置名称(例如“阻止YouTube”)
  • 编辑客户端列表,以指定应阻止哪些计算机访问YouTube

    要阻止所有计算机,请使用底部的“ IP范围”来指定除路由器(通常为.1)和广播(.255)之外的所有IP。

  • 设置要阻止的天/小时,或设置“每天”以始终阻止
  • 在“按URL地址阻止网站”下,输入 facebook.com
  • 单击“保存”,然后单击“应用设置”

有一个YouTube视频可以显示您需要的每个步骤。


1
h!我没有意识到我必须启用该策略。如果您不愿意填写详细信息,我很乐意将您的答案标记为正确的答案。
Big McLargeHuge 2012年

仅仅接受视频链接绝对不能作为答案。它可能是答案的基础,但是您必须用言语解释。
吉尔(Gilles)'所以

@ davidkennedy85现在应该不错
迈克尔·莫罗泽克

2
等等...我将策略1设置为启用,每天24小时,IP范围192.168.1.2-192.168.1.254命名,添加了google.com/images和google.com/imghp,但它们仍然不是受阻。
Big McLargeHuge 2012年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.