1 个不稳定版本
0.2.0 | 2024年4月27日 |
---|
#6 在 #doh
21KB
332 行
HTTPS-DNS
用 Rust 编写的轻量级 HTTPS-DNS ("DOH") 代理。
HTTPS-DNS 是一个轻量级代理,可以安全地将任何请求转发到像 Cloudflare 这样的 HTTPS-DNS 解析器。
当前版本 0.2.0
支持的 Rust 版本 1.31
安装
从发布页面下载您架构的最新二进制文件。
用法
Usage: dns-over-https.exe [OPTIONS]
Options:
-b, --bind <IP:port> Listen for DNS requests on the addresses and ports [default: 127.0.0.1:53]
-u, --upstream-urls <URL> URL(s) of upstream DNS-over-HTTPS service [default: https://1.1.1.1/dns-query]
-v, --verbosity <level> Verbosity level [default: info] [possible values: off, error, warn, info, debug, trace]
-h, --help Print help
-V, --version Print version
在 Pi-Hole 上运行
要使用 HTTPS-DNS 加密 Pi-Hole 上的 DNS 请求,请下载并安装最新的发布版本
pi@raspberrypi:~ $ wget https://github.com/ssrlive/dns-over-https/releases/download/v0.2.0/dns-over-https-v0.2.0-arm-unknown-linux-gnueabihf.tar.gz
pi@raspberrypi:~ $ tar xzf dns-over-https-v0.2.0-arm-unknown-linux-gnueabihf.tar.gz
pi@raspberrypi:~ $ sudo mv dns-over-https /usr/local/bin/
您可以通过请求当前版本来确认 dns-over-https 是否正常运行
pi@raspberrypi:~ $ dns-over-https --version
dns-over-https 0.2.0
然后,您可以将 dns-over-https 配置为作为监听端口 5053 并将请求转发到 Cloudflare 的 HTTPS-DNS 解析器的系统服务。
首先,为 dns-over-https 创建一个系统用户
pi@raspberrypi:~ $ sudo adduser --system --no-create-home dns-over-https
然后编写 Systemd 单元文件
pi@raspberrypi:~ $ sudo tee /lib/systemd/system/dns-over-https.service <<EOF
[Unit]
Description=dns-over-https
After=syslog.target network-online.target
[Service]
Type=simple
User=dns-over-https
ExecStart=/usr/local/bin/dns-over-https -b 127.0.0.1:5053 -u https://1.1.1.1/dns-query -u https://1.0.0.1/dns-query
Restart=on-failure
RestartSec=10
KillMode=process
[Install]
WantedBy=multi-user.target
EOF
现在您可以启动 dns-over-https 并检查它是否正在运行
pi@raspberrypi:~ $ sudo systemctl enable dns-over-https
pi@raspberrypi:~ $ sudo systemctl start dns-over-https
pi@raspberrypi:~ $ sudo systemctl status dns-over-https
最后,您可以将 Pi-Hole 的配置更改为使用 127.0.0.1#5053
作为其唯一的上游 DNS 服务器,并通过使用 Cloudflare 的连接信息页面 来确认您的请求现在已加密。
参考资料
许可证
版权所有 © 2024-2024 @ssrlive 版权所有 © 2018-2019 Paul Mucur
在 MIT 许可证下分发。
依赖关系
~9–21MB
~310K SLoC