无法在 raspbian 上启动 dnscrypt-proxy

无法在 raspbian 上启动 dnscrypt-proxy

我正在使用 Raspberry Pi Zero W。操作系统是 Raspbian Buster。我安装了 DNSCrypt-Proxy,但无法启动它。

已用 检查过sudo systemctl status dnscrypt-proxy

得到[FATAL] listen udp 127.0.0.1:53: bind: permission denied

因此检查谁在监听端口 53 sudo lsof -i :53

得到:

COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
systemd   1 root   83u  IPv4  12291      0t0  TCP 127.0.2.1:domain (LISTEN)
systemd   1 root   84u  IPv4  12295      0t0  UDP 127.0.2.1:domain

我想,也许我可以通过禁用来修复它systemd-resolved,结果发现它已经被禁用了。

尝试编辑/etc/systemd/resolved.conf;添加了行DNSStubListener=no。仍然没有任何结果。

顺便说一下,还尝试停止 Avahi 守护进程。

有什么建议可以说明到底是什么占用了 53 端口吗?非常感谢。

答案1

我也遇到了这个问题,而且不只是在 Raspbian 上。我认为这permission denied是由于权限问题,而不是正在使用的端口(您看到的 IP 不同)。当我以 root 身份手动运行命令时,它运行正常。

我从 Github 下载了最新版本并安装了这些说明。然后我照做了systemctl edit dnscrypt-proxy,并将其更改为以下内容:

[Service]
DynamicUser=yes
AmbientCapabilities=cap_net_bind_service cap_net_broadcast cap_net_admin cap_net_raw

环境能力似乎是允许它绑定到端口 53 的关键。不确定所有这些都是必需的,但这对我来说是有效的。

相关内容