还在忍受广告烦恼?快速搭建全屋广告过滤服务器『Pi-hole』

俺是玩机小能手 2024-04-11 16:02:43
还在忍受广告烦恼?在NAS上快速搭建全屋广告过滤服务器『Pi-hole』

说起现在的广告估计在座的每一位都是各种“芬芳问候”,现在的广告真的是毫无底线,无孔不入。

我记得很早的时候就教大家在自己的华硕路由器以及NAS上部署全屋网页视频去广告神器『AdGuard Home』:

今天继续为大家分享另一款更简单,也非常有效的全网广告过滤服务器『Pi-hole』。

关于Pi-hole

Pi-hole其实和AdGuard Home的工作原理差不多,本质上都是使用特定的DNS服务器过滤广告,部署好之后可以方便的帮家里所有用网设备去广告。相比AdGuard Home,Pi-hole更加灵活小巧,不过也少了一些功能(防污染,防跟踪,防窜改)。

按照官方的描述,Pi-hole具有以下特性:

易于安装和配置(号称 10 分钟安装配置一条龙)。

全平台,广告屏蔽服务可作用于任何设备,包括PC、手机、平板电脑。

轻量,对硬件要求极低。

功能稳定且强大,能轻松 hold 住百万级别的请求。

提供了美观的 Web 数据监控仪表盘。

开源且免费。

Pi-hole搭建

开始之前我们先在NAS 的Docker目录下新建一个“pihole” 的文件夹,然后在pihole文件夹中再分别新建两个子文件夹【pihole】 和【dnsmasq.d】,其中pihole文件夹用于存放设定档,dnsmasq.d文件夹用于存放稍后的DNS规则。

部署方式这里还是以SSH终端部署,至于SSH工具请自行解决,Putty,XShell,FinalShell等都可以,我个人目前使用的是FinalShell。

打开SSH工具之后,进入管理员模式(sudo -i)后,输入以下Docker run多行命令(主要是为了让大家看清每一行参数):

docker run -d \

--name pihole \

-e TZ=Asia/Shanghai \

-e WEBPASSWORD=管理页密码 \

-e ServerIP=NAS IP \

-e WEB_PORT=管理页端口 \

-e DNSMASQ_LISTENING=local \

-v /volume1/Docker/pihole/pihole:/etc/pihole \

-v /volume1/Docker/pihole/dnsmasq.d:/etc/dnsmasq.d \

--network=host \

--restart=unless-stopped \ pihole/pihole:latest

不过张大妈这边的编辑器会吞掉每行后面的反斜杠“ \ ”,所以这里在奉上一行的docker run命令:

docker run -d --name pihole -e TZ=Asia/Shanghai -e WEBPASSWORD=管理页密码 -e ServerIP=NAS IP -e WEB_PORT=管理页端口 -e DNSMASQ_LISTENING=local -v /volume1/Docker/pihole/pihole:/etc/pihole -v /volume1/Docker/pihole/dnsmasq.d:/etc/dnsmasq.d --network=host --restart=unless-stopped pihole/pihole:latest

以上命令需要修改的地方为:

-e WEBPASSWORD=管理页密码 -->也就是我们打开Pi-hole之后的密码;-e ServerIP=NAS IP -->填写NAS的本地真实IP地址;-e WEB_PORT=管理页端口 -->随意设置,不和本地其它端口冲突即可;-v /volume1/Docker/pihole/pihole:/etc/pihole -->冒号前面映射我们前面新建“pihole”文件夹的本地实际路径;-v /volume1/Docker/pihole/dnsmasq.d:/etc/dnsmasq.d -->冒号前面映射我们前面新建“dnsmasq.d”文件夹的本地实际路径。Pi-hole体验

在浏览器中输入 【http:// NAS的本地IP:端口号】 就能看到登录界面了,端口号就是我们前面部署命令中设置的管理页端口号。

打开之后提示输入密码,输入我们前面部署命令中自己设置的管理页密码,点“Log in”即可登录。

上图便是Pi-hole的主页面。因为我们还没有加入DNS规则,所以这里的拦截服务还没有启动。

加入DNS规则规则很简单。点界面左边的“Adlists”,然后将里面的一条自带规则先删掉(自带的是国外的,不适合我们国内的顽固毒瘤)。

至于怎么找这个去广告的DNS规则大家就自由发挥吧。我这里推荐一个免费开源的规则项目:https://anti-ad.net/

然后将找到的规则链接复制粘贴过来,点击“Add”加入。

就能将我们找到适合自己的规则添加到列表中(小伙伴们可以多找一些其他大佬分享的规则,都可以添加到这里来)。

添加好规则之后我们还需要点“Tools--Update Gravity ”更新规则,直接点“Update”按钮即可。

如果看到上图所示,出现“success”字样,就说明更新成功。

因为这个时候这个基于DNS规则的广告拦截还只存在于我们搭建的这个NAS中,我们的目的并不只是给NAS去广告,想要全屋广告过滤还的去我们的主路由器上设置一下。

设置也很简单。这里以华硕路由器为例,在路由器的“DHCP服务器”下面的“DNS服务器”后面,直接添加上我们的NAS本地IP地址并保存即可。

然后回到Pi-hole管理页面可以看到已经有数据显示了。

并且在服务端列表可以看到几乎全屋用网设备都被添加过来了。

拦截前,页面两侧有渣渣辉广告~

拦截后,啥也没有。

最后看看我这边24小时的Pi-hole 拦截记录吧,在家里有人看电视或者玩手机的时候,可以很明显的看到过滤的峰值变化,效果还是很明显的!

说在最后

其实对于这种去广告软件来说,想要彻底过滤是不可能的事,因为广告总在更新,所以我们的规则也总要改变。还有些网站更是鸡贼,直接用上反监控脚本,让我们的广告过滤无效。所以说我们只能通过找更多更精确的DNS规则,来最大限度的减少广告的存在。

需要说明的是,不管是今天介绍的这款Pi-hole ,还是以前的AdGuard Home,都会存在误伤而影响我们正常上网,这个主要还是使用的DNS规则不适合自己的用网环境。如果你在使用过程中出现网络情况,请删除原有规则,重新找别的吧~

好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,咱们下期再见!谢谢大家~

0 阅读:4

俺是玩机小能手

简介:感谢大家的关注