关于去广告,目前有非常多的解决方案,相信不少朋友都在浏览器安装了类似于Adblock Plus的插件,网络上也有不少以去广告为卖点的DNS,那么借助于AdGuard,我们可以自建一个去广告的DNS,通过加入一些屏蔽规则,实现客户端去广告(也可以去隐私追踪)的目的,而且这个开源的软件通过GO编写,架设方便,还有非常友好的Web管理界面,应该是同类型软件中不错的选择。
利用AdGuard架设去广告DNS服务器
目前,AdGuard默认继承的上游DNS是Cloudflare家的1.1.1.1,搭建后大家可以自行修改
1. 下载并解压AdGuardHome(到GitHub Release界面查找最新及适合平台的版本,本文以64位Linux,即amd64演示)
wget https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.94/AdGuardHome_v0.94_linux_amd64.tar.gz tar zxf AdGuardHome_v0.94_linux_amd64.tar.gz
2. 安装
cd AdGuardHome ./AdGuardHome -s install systemctl enable AdGuardHome #开启开机启动 systemctl start AdGuardHome #开启AdGuard服务
如果要卸载的话可以用“路径/AdGuardHome -s uninstall”命令卸载
3. 访问Web界面(http://ip地址:3000)
如果无法访问,很大可能是Firewalld阻止了3000端口,参照《CentOS 7下Firewalld防火墙的简明教程》将3000端口排除
这里我设置了8080为网页端的管理界面,因为默认的80有其他的用途,同样如果有防火墙,记得开启8080和53端口(8080是走TCP,53走TCP和UDP)
输入用户名和密码,登录网页端要用
这一步是提示你客户端如何设置,实际上都知道,就是改DNS地址为我们VPS服务器的地址呗
4. Web界面如下
更新一下过滤规则
同时也可以添加规则
规则可以到https://adblockplus.org/subscriptions、https://easylist.to/或者https://filterlists.com/找,这里我主要添加了4个:Easylist China、EasyList、CJX’s Annoyance List和EasyPrivacy,参考的是这个帖子
由于从DNS端去广告,实际上是通过屏蔽HOST实现的,往往有一定的局限性,特别是一些针对于js的广告,屏蔽效果一般,当然也可能是微魔自身订阅的规则还比较有限,希望大家有更高级的规则可以留言分享
微魔测试之后发现单个客户端连接AdGuardHome,内存占用在360M左右,因此不推荐小内存的VPS运行这个程序
我测试接AdGuardHome占用内存并没有那么多。我在N1部署内存消耗就十来mb
感谢反馈,时间比较久,我也记不清了,文末的内存占用应该是想写初始Linux系统+AGH的一起占用的内存值,因此不推荐在256M这样的小内存下运行,不过如果你测试AGH只占了十几兆的话,那占用还可以。
root@debian:~/AdGuardHome# AdGuardHome -s uninstall
-bash: AdGuardHome:未找到命令
root@debian:~/AdGuardHome# AdGuardHome -s status
-bash: AdGuardHome:未找到命令
加上./试试呢