零、前言

Adguard是一款十分出色的反广告软件,在PC端 Android端都有App可以使用。但其软件使用模式为付费制,且只能单台设备使用。

Adguardhome是一款可以运行在linux上的”社区版“Adguard。Adguard的功能在Adguardhome基本都可以使用,且提供了DNS服务器的功能。在本文中,我们将在OpenWRT路由器上部署Adguardhome插件,从而得以避开广告的侵扰,安心冲浪。

一、插件及环境的准备

由于某些未知原因,ImmortalWRT和定制的opkg源大多数只含有Adguardhome插件的本体,对于Linux小白部署颇为不利,因此在本文中我们将采用Adguardhome的luci界面-luci-app-adguardhome来进行部署。

我们将需要以下环境:

  • Adguardhome的luci界面(文章开头已经给出)

  • 一台运行OpenWRT且开放了SSH(可用Dropbear开启)的路由器,RAM最好大于256M

  • 一个良好的外网访问环境

二、安装插件

SSH连接到OpenWRT,在终端键入以下命令:

wget https://github.com/rufengsuixing/luci-app-adguardhome/releases/download/1.8-9/luci-app-adguardhome_1.8-11_all.ipk

随后耐心等待。如果在此期间发生错误,可以按”上方向键“调出历史命令重试。

在wget完成以后,使用opkg包管理器安装插件:

opkg install luci-app-adguardhome_1.8-11_all.ipk

当终端返回以下内容时,表明安装已经完成:

Snipaste_2024-06-08_19-18-40.jpg此时,在如下地址即可访问到Adguardgome的luci页面

http://[YOUR-ROUTER-IP]/cgi-bin/luci/admin/services/AdGuardHome

三、插件的配置

访问luci页面,点击更新内核

Snipaste_2024-06-08_19-25-42.jpg

这里如果github实在连接不上,可以手动下载之后上传到/usr/bin/AdGuardHome/路径下,需要配置一下下面的执行文件、配置文件的位置。

都搞定之后勾选启用,保存并应用然后访问:

http://[YOUR-ROUTER-IP]:3000

580c514e-eea8-4e37-b94b-17953ce25c58.png

配置如上 当然,你也可以根据自我喜好配置到别的端口。但请注意:你需要记下DNS服务器的地址。

设置完毕用户名密码以后,进入路由器管理页面的网络-DHCP/DNS,在DNS转发下填入你刚才设置的DNS服务器地址,例如127.0.0.1#5555

Snipaste_2024-06-08_19-34-28.jpg

这样,Dnsmasq就会将接收到的所有DNS查询请求转发给Adguardhome。

接下来,我们需要进一步配置Adguardhome。

打开Adguardhome的web页面,定位到设置-DNS设置

Snipaste_2024-06-08_19-37-06.jpg

我们需要填入一个至数个上游DNS服务器。Adguardhome在收到DNS查询请求时,会将DNS查询请求上传至上游DNS服务器,因此,上游DNS服务器极其重要。在此,作者推荐以下几个上游DNS服务器:

注意:Adguardhome支持的DNS服务器类型很多样,我这里选择的是doh(dns-over-https),你也可以根据情况选择其他类型(如dot、doq)等。

https://doh.pub/dns-query
https://dns.alidns.com/dns-query
https://doh.360.cn
https://doh-pure.onedns.net/dns-query
https://doh.apad.pro/dns-query

下拉到Bootstrap服务器,填入以下内容:

114.114.114.114
8.8.8.8
2400:3200::1
2402:4e00::

完成以后保存即可

四、效果验证

在Adguardhome的web面板刷新几下,可以看到DNS查询数量上升即代表设置成功。

Snipaste_2024-06-08_19-51-40.jpg

linux学习中