自建屏蔽广告 DNS 服务器 AdGuard Home
AdGuard Home是一个网络范围的广告和跟踪器阻止DNS服务器。可将广告与追踪相关的域名屏蔽,指向空的主机名(DNS 黑洞)。其目的是让您控制整个网络和所有设备,而不需要使用客户端程序。 同时,AdGuard Home具有Web界面,可轻松管理过滤规则。
在安装完毕后,它将保护所有使用该 DNS 服务器的设备,不再需要安装任何广告屏蔽器或浏览器去广告插件。
如果嫌麻烦,不想自己搭建,也可以使用 Adguard 官方的 DNS 服务:
176.103.130.130 和 176.103.130.131,配置方式可参考官网。
官方提供了多种安装 AdGuard Home 的方式:
部署在 VPS 上(公网)
部署在 树莓派 上(家庭局域网)
通过 Docker 部署在群晖 NAS 上(家庭局域网)
本教程搭建环境为 Ubuntu 16 的VPS。
架设VPS
最好选购物理距离离自己近的数据中心,保证低延迟。
这里我们使用的是VirMach年付$10的VPS 直达链接(aff)
本教程搭建环境为 Ubuntu 16 的VPS。
安装依赖
apt-get install sudo nano bind9-host -y
下载并解压最新的 AdGuard Home 程序
在这个页面找到最新的版本,这里以AdGuard Home v0.95版本为例。
下载程序:
wget https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.95-hotfix/AdGuardHome_v0.95-hotfix_linux_amd64.tar.gz
解压:
tar xvf AdGuardHome_v0.95-hotfix_linux_amd64.tar.gz
建立服务
cd AdGuardHome
pwd
编辑文件/etc/systemd/system/adguard-home.service:
sudo nano /etc/systemd/system/adguard-home.service
把以下内容复制并粘贴入这个文件,然后 crtl + x, yes 保存
[Unit]
Description=AdGuard Home
After=syslog.target
After=network.target
[Service]
Type=simple
User=root
Group=root
WorkingDirectory=/root/AdGuardHome
ExecStart=/root/AdGuardHome/AdGuardHome --host 0.0.0.0
Restart=always
[Install]
WantedBy=multi-user.target
服务的启动/停止/重启
让服务开机自动运行:
sudo systemctl enable adguard-home
启动服务:
sudo systemctl start adguard-home
停止服务:
sudo systemctl stop adguard-home
重启服务:
sudo systemctl restart adguard-home
网页端设置
浏览器输入网址 http://你的服务器IP地址:3000/ 就可登录 AdGuard Home 网页管理界面。
设置网页端登录密码
先停止服务
sudo systemctl stop adguard-home
编辑/root/AdGuardHome/AdGuardHome.yaml配置文件:
sudo nano /root/AdGuardHome/AdGuardHome.yaml
找到包含 auth_name: ""和 auth_pass: ""的条目,改为你自己的用户名和密码:
auth_name: "自设用户名"
auth_pass: "自设密码"
ctrl + x, yes 保存。
再次启动服务:
sudo systemctl start adguard-home
之后,在浏览器中访问Web界面将需要输入用户名和密码。
在电脑和手机等设备上配置新的DNS服务器
见官方教程,适用于Windows, Mac, iOS, Android, 路由器 等。
服务器禁ping
禁止ping,避免服务器被扫描发现:
sysctl -w net.ipv4.icmp_echo_ignore_all=1
如要恢复ping,改为0即可:
sysctl -w net.ipv4.icmp_echo_ignore_all=0
更改默认Web管理端口
比如需要把默认3000端口改为5300,则在启动命令后加上 --port 5300 即可。
编辑文件/etc/systemd/system/adguard-home.service为:
[Unit]
Description=AdGuard Home
After=syslog.target
After=network.target
[Service]
Type=simple
User=root
Group=root
WorkingDirectory=/root/AdGuardHome
ExecStart=/root/AdGuardHome/AdGuardHome --host 0.0.0.0 --port 5300
Restart=always
[Install]
WantedBy=multi-user.target
服务器升级
如果有新版本发布,会在网页管理端顶部出现提示。
更新步骤跟刚才一样。
先停止服务:
sudo systemctl stop adguard-home
在这个页面找到最新的版本,这里以AdGuard Home v0.92-hotfix2版本为例
。
下载程序:
wget https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.92-hotfix2/AdGuardHome_v0.92-hotfix2_linux_amd64.tar.gz
解压:
tar xvf AdGuardHome_v0.92-hotfix2_linux_amd64.tar.gz
启动服务:
sudo systemctl start adguard-home
其他可能用到的命令:
AdGuardHome -s uninstall - 卸载 AdGuard Home 服务.
AdGuardHome -s start - 启动AdGuard Home服务.
AdGuardHome -s stop - 停止AdGuard Home服务.
AdGuardHome -s restart - 重启AdGuard Home服务.
AdGuardHome -s status - 显示当前服务状态.
进入控制台,如图进入DNS封锁清单
以下是我个人使用的封锁列表,如图所示可以添加封锁清单
中国大陆常用清单如下:
AdGuard Simplified Domain Names filt https://adguardteam.github.io/AdGuardSDNSFilter/Filters/filter.txt
AdAway https://adaway.org/hosts.txt
EasyList China https://easylist-downloads.adblockplus.org/easylistchina.txt
CJX's Annoyance List https://raw.githubusercontent.com/cjx82630/cjxlist/master/cjx-annoyance.txt
Anti-Ad https://gitee.com/privacy-protection-tools/anti-ad/raw/master/easylist.txt
EasyPrivacy https://easylist-downloads.adblockplus.org/easyprivacy.txt
在设置-常规设置
建议勾选浏览安全、安全搜索
在设置-DNS设置
速度限制,建议设置为0,如图
设置上游DNS服务器,你请求后,这台dns服务器会向上游请求。以下是我推荐的dns服务器
tls://8.8.8.8
tls://8.8.4.4
tls://dns.google
tls://dns.adguard.com
119.29.29.29
1.2.4.8
tls://1.1.1.1
tls://1.0.0.1
https://dns10.quad9.net/dns-query
设置Bootstrap DNS 服务器
1.1.1.1:53
1.0.0.1:53
9.9.9.10
149.112.112.10
114.114.114.114:53
2620:fe::10
2620:fe::fe:10
注意勾选“通过同时查询所有上流服务器以使用并行查询加速解析”
保存即可
AdGuard图标版权归其所有人所有