OpenWrt 路由器过滤广告的N种方法
路由器已经成为每个家庭不可缺少的角色,手机、电脑、电视,凡是需要互联网的设备都要用到它。那么路由器除了给我们的网络设备分发网络外,还有其他用途吗?
现在很多人家里都用着智能路由器,智能路由器究竟怎么智能,各个厂家卖点不一样,有些是支持安装插件,有些是 USB 延伸出来的扩展功能,归根结底,都离不开一个系统: OpenWrt (以下简称:OP)。
OP 是适用于嵌入式设备的 Linux 发行版,大多数智能路由器运行的系统都是基于 OP ,比如:小米、极路由、Newifi 这些,软件包是 OP 的一大特色,开发者可以基于 OP 来开发软件包,也就是俗称的插件。这些插件里,最常用的可能就是广告过滤,看视频终于不用等待长达几十秒和那些无节操的广告,只要连接 WiFi,就可以过滤广告,非常方便。
今天就教大家如何在 OP 系列系统上过滤广告,此教程不适用上面提到的智能路由,只适用没有原版 OP 固件,如:OpenWrt、LEDE、PandoraBox 等。
准备工作
- 一台运行 OpenWrt 的设备
- SSH 连接工具,为了登陆到系统终端,可以使用 PuTTY 等 SSH 工具,下载地址:PuTTY
使用方法参考《OpenWrt/LEDE 新手指南》
1 . Hosts
Hosts 是每个系统都会有的一个文件,它的作用就是将域名指向指定 IP,如果把广告域名指向一个无法访问的 IP,是不是就可以达到过滤广告的需求了。
优点:占用空间少,不需要依赖,可以过滤大多数网盟和视频广告
缺点:容易误杀(有些域名不一定都是广告),过滤视频广告效果不是 100%,无法去除广告占位符。
适用于一些低性能和剩余空间不多的设备,根据小山测试,可以过滤掉手机端大多数视频广告、PC 端可能还会被检测出来。
配置方法
- 输入
cp /etc/hosts /etc/hosts.bak
备份原有 Hosts - 输入
wget https://raw.githubusercontent.com/vokins/yhosts/master/hosts -O /etc/hosts --no-check-certificate
下载屏蔽广告 Hosts - 输入
/etc/init.d/dnsmasq restart
重启 Dnsmasq 使 Hosts 生效 - 浏览器打开路由器管理页面,依次点击 [系统] → [计划任务],在新的一行填写
0 4 * * * wget https://raw.githubusercontent.com/vokins/yhosts/master/hosts -O /etc/hosts --no-check-certificate && /etc/init.d/dnsmasq restart # 每天4点自动更新 Hosts
解决方法
- 输入
opkg update && opkg install wget
安装完整 wget 重新执行上面的命令。 - 将下载源替换为小山的镜像,这个镜像不是缓存,是 cURL 源地址,同时可以加速下载,GitHub 在国内速度并不是多好,地址:http://x.mivm.cn/Hosts/?URL=https://raw.githubusercontent.com/vokins/yhosts/master/hosts ,支持 HTTPS。
- 这个方法就比较麻烦了,在电脑上下载好 Hosts 上传至路由器。
下载 https://raw.githubusercontent.com/vokins/yhosts/master/hosts ,然后将文件复制到跟 pscp.exe 相同的位置,就是上面下载的 PuTTY 里面附带的 pscp.exe ,接着在 PuTTY 文件夹窗口按住 Shift 键点击鼠标右键,点击 [在此处打开命令窗口],然后输入pscp -scp -l root hosts 192.168.1.1:/etc/hosts
接着输入密码,即可上传至路由器。
删除 Hosts 屏蔽:输入命令 mv /etc/hosts.bak /etc/hosts
还原 Hosts,接着删除计划任务的任务即可。
这种方法有一定几率误杀也可能导致某些网站打不开或者显示错误。
2 . Adbyby (广告屏蔽大师)
Adbyby,国人开发的一款屏蔽广告软件,可能很多小伙伴都用过,效果不错,配置也相对简单。
优点:广告过滤全面,可以过滤非 HTTPS 广告,设置简单,适合小白使用。
缺点:会影响网速,如果你的带宽是 100M,CPU 是 MT7620 这种低性能处理器,那么可能达不到 100M 的速度或者不稳定。这是所有广告过滤软件的缺点。
安装方法
- 浏览器打开路由器管理页面或者 SSH 登陆至路由器后台
- 点击 [系统] → [软件包] → 在 [下载并安装软件包] 复制下载链接,或者输入
opkg update && opkg install 下载链接
,下载链接见下方,比如:opkg update && opkg install http:https://cdn.mivm.cn/OpenWrt/adbyby/adbyby_2.7_mtk.ipk
- 由于主程序和 Luci 界面是分开的,还需要安装 Luci 界面,安装地址:http:https://cdn.mivm.cn/OpenWrt/adbyby/luci-app-adbyby_2016-01-27_all.ipk
- 刷新路由器页面,在 [服务] 找到 [广告屏蔽大师] 开启即可。
在下方选择适合自己路由器的版本,按照 CPU 架构区分,输入 cat /proc/cpuinfo
查看 CPU 架构。
比如:cpu model : MIPS 24KEc V5.0 就是 ramips_24kec ( 一般都是MTK系列 ) ,使用:http:https://cdn.mivm.cn/OpenWrt/adbyby/adbyby_2.7_mtk.ipk。
http:https://cdn.mivm.cn/OpenWrt/adbyby/adbyby_2.7_ar71xx.ipk
ar71xx
http:https://cdn.mivm.cn/OpenWrt/adbyby/adbyby_2.7_arm-926t.ipk
arm-926t
http:https://cdn.mivm.cn/OpenWrt/adbyby/adbyby_2.7_arm-v7.ipk
arm-v7
http:https://cdn.mivm.cn/OpenWrt/adbyby/adbyby_2.7_mtk.ipk
MTK系列
http:https://cdn.mivm.cn/OpenWrt/adbyby/adbyby_2.7_x64.ipk
X64
http:https://cdn.mivm.cn/OpenWrt/adbyby/adbyby_2.7_x86.ipk
X86
你可以使用过滤指定设备,比如,只过滤手机,那样你电脑的网速就不会受影响了。
3 . KoolProxy
KoolProxy,是 KoolShare 团队开发的广告过滤软件,支持 HTTPS,而且功能和规则方面,比 Adbyby 要丰富。
优点:支持 HTTPS 过滤,支持黑名单模式,过滤指定域名广告,内存占用比 Adbyby 少。
缺点:占用空间和所需依赖项较多。
准备工作
由于这个插件需要很多依赖,且不支持自动安装,所以我们需要先安装下依赖插件。一个个来。
首先更新软件源:opkg update
HTTPS 广告过滤:opkg install openssl-util
黑名单模式:opkg remove dnsmasq && opkg install ipset dnsmasq-full diffutils
以 MAC 地址过滤指定设备:opkg install iptables-mod-nat-extra
更新 Host 过滤规则,如果没有,会导致 Host 规则数目为0:opkg install wget libustream-openssl ca-bundle ca-certificates
如果只需要全局 HTTPS 过滤,那么只需要安装:opkg install openssl-util iptables-mod-nat-extra
推荐 K2 等小闪存设备使用这种方案。
KoolProxy 新版已支持自动安装所需依赖
安装方法
- 浏览器打开路由器管理页面或者 SSH 登陆至路由器后台
- 点击 [系统] → [软件包] → 在 [下载并安装软件包] 复制下载链接,或者输入
opkg update && opkg install 下载链接
,下载链接见下方,比如:opkg install http://firmware.koolshare.cn/binary/KoolProxy/luci/luci-app-koolproxy_3.5.2-1_mipsel.ipk
如需中文翻译,安装 http://firmware.koolshare.cn/binary/KoolProxy/luci/luci-i18n-koolproxy-zh-cn.ipk ,方法同上。中文翻译已集成- 刷新路由器页面,在 [服务] 找到 [KoolProxy] 开启即可。
版本同样按照 CPU 架构区分,查看 CPU 架构方法见上面。
http://firmware.koolshare.cn/binary/KoolProxy/luci/luci-app-koolproxy_mips.ipk
mips ar系列基本是这个
http://firmware.koolshare.cn/binary/KoolProxy/luci/luci-app-koolproxy_3.5.2-1_mipsel.ipk
mipsel mtk系列基本是这个
http://firmware.koolshare.cn/binary/KoolProxy/luci/luci-app-koolproxy_3.5.2-1_arm.ipk
arm
http://firmware.koolshare.cn/binary/KoolProxy/luci/luci-app-koolproxy_3.5.2-1_i386.ipk
x86
http://firmware.koolshare.cn/binary/KoolProxy/luci/luci-app-koolproxy_3.5.2-1_x86_64.ipk
x64
HTTPS 过滤方法 (Windows)
确保已安装 HTTPS 过滤所需依赖:openssl-util
- KoolProxy 启动后,浏览器输入 110.110.110.110 下载 HTTPS 过滤 SSL 证书,这个证书每个路由器是独一无二的,所以无需担心。
- 双击打开证书,点击 [安装证书] → 存储位置选择 [本地计算机] → [下一步] → 选择 [将所有的证书都放入下列存储] → [浏览] → [受信任的根颁发机构] → [确定] → [下一步] → [完成]。
- 浏览器打开路由器管理页面,进入 KoolProxy 设置页面,在 [KoolProxy 访问控制] 添加规则,[内部IP地址] 或 [内部MAC地址] 选择一个即可,选择 MAC 地址确保已安装相应的依赖,过滤方式选择 [全局HTTPS过滤] 或者 [仅过滤HTTPS黑名单广告],黑名单模式确保已安装相应的依赖,保存应用即可。
至于手机端不建议使用 HTTPS 过滤,手机涉及的敏感信息太多。
如果你想去除 HTTPS 广告过滤,删除 HTTPS 证书,方法如下:
- Win + R 键 输入 certmgr.msc 运行
- 点击 [受信任的根证书颁发机构] → [证书] → 找到 koolproxy.com 这个证书,右键删除。
- 浏览器打开路由器管理页面,进入 KoolProxy 设置页面,在 [KoolProxy 访问控制] 删除对应规则。
KoolProxy 使用ipk安装的可能不是最新版,所以这里给大家说一下简单更新的方法。
关闭 KoolProxy,SSH 登陆至路由器系统后台,输入:wget http://firmware.koolshare.cn/binary/KoolProxy/mipsel -O /usr/share/koolproxy/koolproxy
,这个地址根据你的 CPU 架构决定,比如 arm 架构:http://firmware.koolshare.cn/binary/KoolProxy/arm,查看版本号:/usr/share/koolproxy/koolproxy -v
,更新完成后再次开启 KoolProxy 即可。
KoolProxy 新版已支持自动更新二进制文件
KoolProxy 的优势就在于可以过滤 HTTPS 广告,至于安全性我不敢保证,还有黑名单模式,网速方面不会有太多限制。
K2 For PandoraBox 安装方法
K2 刷了 PandoraBox 后,可用空间不多,如果直接安装 KoolProxy 的话,空间不足会导致安装失败,所以需要使用命令忽略依赖安装,不过黑名单模式会不可用。
- 使用 SSH 工具连接至路由器
- 输入
opkg update && opkg install openssl-util
安装 HTTPS 依赖 - 输入
opkg install http://firmware.koolshare.cn/binary/KoolProxy/luci/luci-app-koolproxy_3.5.2-1_mipsel.ipk --nodeps
忽略依赖安装
除了黑名单模式无法使用外,其他功能都能正常使用。
更新日志:http://koolshare.cn/thread-64086-1-1.html
以上就是 OpenWRT 路由器过滤广告的几种方法,造成的任何后果与本站和本人无关。
测试视频
如果你有其他的过滤方法,可以在下方留言给我,文中有不懂的也可以留言给我。
OpenWrt 路由器过滤广告的N种方法的更多相关文章
- 服务器文档下载zip格式 SQL Server SQL分页查询 C#过滤html标签 EF 延时加载与死锁 在JS方法中返回多个值的三种方法(转载) IEnumerable,ICollection,IList接口问题 不吹不擂,你想要的Python面试都在这里了【315+道题】 基于mvc三层架构和ajax技术实现最简单的文件上传 事件管理
服务器文档下载zip格式 刚好这次项目中遇到了这个东西,就来弄一下,挺简单的,但是前台调用的时候弄错了,浪费了大半天的时间,本人也是菜鸟一枚.开始吧.(MVC的) @using Rattan.Co ...
- 上传图片shell绕过过滤的几种方法
一般网站图片上传功能都对文件进行过滤,防止webshelll写入.但不同的程序对过滤也不一样,如何突破过滤继续上传? 本文总结了七种方法,可以突破! 1.文件头+GIF89a法.(php)//这个很好 ...
- 网页内容的html标签补全和过滤的两种方法
网页内容的html标签补全和过滤的两种方法: 假设你的网页内容的html标签显示不全,有些表格标签不完整而导致页面混乱,或者把你的内容之外的局部html页面给包括进去了,我们能够写个函数方法来补全ht ...
- openwrt 路由器变砖后修复方法
https://wiki.openwrt.org/doc/howto/generic.debrick 变砖后需根据类型进行修复,主要有以下四种: (1)if only something on the ...
- 分享上传图片shell的绕过过滤的几种方法
一般网站图片上传功能都对文件进行过滤,防止webshell写入.但不同的程序对过滤也不一样,如何突破过滤继续上传? 本文总结了七种方法,可以突破! 1.文件头+GIF89a法.(php)//这个很好理 ...
- 【机器学习算法-python实现】协同过滤(cf)的三种方法实现
(转载请注明出处:http://blog.csdn.net/buptgshengod) 1.背景 协同过滤(collaborative filtering)是推荐系统经常使用的一种方法.c ...
- 在ArcEngine下实现图层属性过滤的两种方法
转自chanyinhelv原文 在ArcEngine下实现图层属性过滤的两种方法 Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* ...
- 详解JavaScript数组过滤相同元素的5种方法
详解JavaScript数组过滤相同元素的5种方法:https://www.jb51.net/article/114490.htm
- 两种方法使用js读写cookie实现一个底部广告浮层效果
下面一个案例实现了js实现一个页面浮层并且使用两种方法使用js读写cookie:来实现用户关闭广告的显示状态: 读者可以将下面代码复制到一个html文件试试效果:html的pre标签未两种js实现的方 ...
随机推荐
- bzoj 3208 暴力
对于每个操作,直接暴力做就行了,询问的话搜一遍,然后 就这么水过去了. /************************************************************** ...
- Linux eject弹出光驱
Linux eject命令用于退出抽取式设备. 若设备已挂入,则eject会先将该设备卸除再退出. 语法 eject [-dfhnqrstv][-a <开关>][-c <光驱编号&g ...
- Centos安装流量监控工具iftop笔记
Centos安装流量监控工具iftop笔记 一.概述 iftop可以用来监控网卡的实时流量(可以指定网段).反向解析IP.显示端口信息等,详细的将会在后面的使用参数中说明.官方网站:http://ww ...
- [ 手记 ] 联想rd650服务器整列及系统安装
联想 RD650服务器 磁盘阵列:http://wenku.baidu.com/view/b364c2db5f0e7cd185253644.html?from=search 该服务器安装系统需要BIO ...
- DELPHI数组,指针,字符串转换的例子
关于数组,指针,字符串转换的例子 var aa: array [0..5] of Char; bb:Pointer; cc:string; dd:PChar; procedure ...
- python的上下文管理(contextlib)(2)
contextlib是一个Python模块,作用是提供更易用的上下文管理器. 编写 __enter__ 和 __exit__ 仍然很繁琐,因此Python的标准库 contextlib 提供了更简单的 ...
- python 垃圾回收详解
原文:https://zhuanlan.zhihu.com/p/31150408 总纲 策略和垃圾回收系统工作内容 引用计数详解 标记-清除+分代收集 循环引用 编程应用-常见方法 ex 过程详解 使 ...
- Corosync 配置描述
NAME corosync.conf - corosync executive configuration file SYNOPSIS /etc/corosync/corosync.conf DESC ...
- Nvidia 的新显卡架构 Maxwell 性能相比开普勒提升了多少?
作者:喵西和熊链接:https://www.zhihu.com/question/22630075/answer/29041618来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...
- 识别浏览器的JavaScript引擎的方法
答案来自StackOverflow,打开这个网页http://jsbin.com/opuvas即可,这个网页也是答题者自己写的. 二维码是这个网址.网页内有统计访问量,作者想知道对多少人有用,建议尊重 ...