家里的宽带是广电&长宽,虽然二级宽带运营商不太建议改DNS,但面对乱七八糟的AD与劫持,电脑端倒可以通过浏览器插件屏蔽AD,手机端就拉闸了(此处@Chrome)
部分个人设备因无ROOT无法修改Hosts,且浏览器Chrome用习惯了。这边的漏油器是国内伪·御三家之一的高端大气上档次的低配普联,指望刷机装插件的路子没了。
考虑到安卓9的私人DNS功能,才发现可以用采用DoH/DoT协议且去广告的DNS来屏蔽花里胡哨的玩意儿。
无奈硬件不给力,就只能用VPS安装ADGuard Home将就着用了。
网上一搜一大把的应该不用水了吧.jpg
1
2
3
4
| wget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_amd64.tar.gz
tar -xzvf AdGuardHome_linux_amd64.tar.gz
cd AdGuardHome
./AdGuardHome -s install
|
安装完成后,浏览器访问 http://你的服务器ip:3000
后进入ADGuard Home配置。
在 网页管理界面
中
监听接口 - 端口
改成非80,这边我设置的是3000端口,
DNS 服务器
的 监听接口- 端口
理论上是53,但国内的政策是禁止个人用户自建DNS,所以自行考虑(
![]()
用户名密码和设定并记住,跳过没人会看的设置指导后,登录到控制台。
DNS 设置#
可参考下面我的设置
上游 DNS 服务器#
1
2
3
4
5
| tls://dns.google:853
https://1.1.1.1/dns-query
tls://1.1.1.1:853
https://doh.pub/dns-query
tls://dns.pub:853
|
Bootstrap DNS 服务器#
1
2
3
| 223.5.5.5
119.29.29.29
1.0.0.1
|
DNS服务设定#
速度限制0就行(基本上就你一个人用.jpg)
如果 上游 DNS 服务器
设置的是国外DNS的话,这里推荐打开EDNS
DNS缓存配置#
通常默认即可
配置DoH/DoT#
设置 - 加密设置
启动加密,服务器名称填写你的域名,全文以 dns.dns.dns
为例。
HTTPS端口设置成非 443
,我这边的是 3443
DNS-over-TLS 端口默认 853
证书设置上,推荐acme.sh一套完事,也可以配合宝塔/Oneinstack/lnmp等面板的自动证书设置。
注:因为采用Nginx反向代理,故无须勾选HTTPS自动重定向
![]()
Nginx配置:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| server
{
listen 80;
server_name dns.dns.dns; # 填写对应域名
return 301 https://$host$request_uri;
}
server
{
listen 443 ssl http2;
server_name dns.dns.dns; # 填写对应域名
index index.html index.htm;
# 证书路径配置
ssl_certificate /var/nginx/ssl/fullchain.pem;
ssl_certificate_key /var/nginx/ssl/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers off;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
error_page 497 https://$host$request_uri;
location / {
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:3000;
}
location /dns-query {
proxy_http_version 1.1;
proxy_buffering off;
proxy_redirect off;
proxy_set_header Host $host;
proxy_pass https://dns.dns.dns:3443/dns-query; #填写对应域名,注意填写的是https以及后面的端口
}
error_log /var/log/nginx/adguard_error.log;
}
|
过滤规则#
过滤器 - DNS封锁清单
自行添加规则,我这里用的是 Anti-AD ,基本上屏蔽了乱七八糟的广告
设备设定DNS#
安卓机:设置 - 网络 - 私人DNS 输入你的地址即可
电脑端:
- Chrome/Edge: 设置 - 隐私和安全性 - 安全性 - 进阶 - 使用安全DNS
包含自订 输入你的地址即可
- FireFox:选项 - 常规 - 网络设置 - 启用基于 HTTPS 的 DNS 自定义 输入你的地址即可
最终成果大概就这
![]()
常用命令#
1
2
3
4
5
6
7
8
| #启动
systemctl start AdGuardHome
#开机自启
systemctl enable AdGuardHome
#重启
systemctl restart AdGuardHome
#停止
systemctl stop AdGuardHome
|
如果依旧无法使用,请检查端口是否监听/开放。