Uomi / night fire
246 字
1 分钟
Linux 上使用DNS over HTTPS (DOH)

第一步:安装 cloudflared
- 首先,下载
cloudflared
:
wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64
- 使二进制文件可执行并移至合适的目录:
chmod +x cloudflared-linux-amd64sudo mv cloudflared-linux-amd64 /usr/local/bin/cloudflared
第二步:配置 cloudflared
- 创建
cloudflared
的配置目录:
sudo mkdir /etc/cloudflared
- 创建配置文件:
sudo nano /etc/cloudflared/config.yml
- 填入以下内容:
proxy-dns: trueproxy-dns-upstream: - https://1.1.1.1/dns-query - https://1.0.0.1/dns-query
保存并退出。
第三步:将 cloudflared
设置为 systemd 服务
- 创建 systemd 服务文件:
sudo nano /etc/systemd/system/cloudflared.service
- 填入以下内容:
[Unit]Description=cloudflared DNS over HTTPS 代理After=syslog.target network-online.target
[Service]Type=simpleUser=rootExecStart=/usr/local/bin/cloudflared proxy-dnsRestart=on-failureRestartSec=10KillMode=process
[Install]WantedBy=multi-user.target
保存并退出。
- 启用并开始服务:
sudo systemctl enable cloudflaredsudo systemctl start cloudflared
第四步:更新系统 DNS 设置
- 编辑
resolv.conf
:
sudo nano /etc/resolv.conf
- 修改或添加:
nameserver 127.0.0.1
这将使用 cloudflared
代理作为系统的 DNS 服务器。
第五步:验证 DoH 配置
检查 DNS 请求是否通过 HTTPS:
dig @127.0.0.1 guido.cn
注意:使用 NetworkManager 或其他网络工具的系统可能会覆盖 /etc/resolv.conf。确保配置这些工具以防止此类更改,或使 resolv.conf 不可变。