DNSCrypt-proxy 可以工作,但权限不正确

DNSCrypt-proxy 可以工作,但权限不正确

我已经成功安装并正在配置 dnscrypt-proxy 以在 ubuntu 13.10 x64 上使用。但是我遇到了一些权限问题。

我使用以下命令添加了一个用户:

sudo adduser --system --quiet --home /run/dnscrypt --shell /bin/false --group --disabled-password --disabled-login dnscrypt

并发出dnscrypt-proxy --daemonize --user=dnscrypt,但没有成功。所以我尝试了 just--daemonize和 finally just dnscrypt-proxy,结果导致 UDP 绑定权限错误。运行它错误消失。 dnscrypt-proxy --user=dnscrypt导致错误再次出现。我猜是因为某些权限导致失败,但目前还不知道从哪里开始或要更改什么。

我也想在网络启动时或登录后运行它。我想我可以做到,但如果你有什么建议,那只会节省我的时间。我不明白为什么我不能运行它,--user=dnscrypt但 root 可以正常工作。

编辑:只是为了进一步澄清,我实际上正在运行基于 ubuntu 13.10 的 elementary OS luna 0.2(我相信)

答案1

有一个由 Sergei Schnatsel 维护的 PPA,它可以让事情变得更容易...OS luna 基于 ubuntu 12.04。

更多内容请见:链接至 PPA

答案2

开始之前,请转到面板下拉菜单中的“编辑连接”。单击当前连接并选择“编辑”,然后选择 ipv4 选项卡。对于“方法”,仅选择自动 DHCP 地址。然后,在“附加 DNS 服务器”旁边分别输入 127.0.0.1 或 127.0.0.2。选择 ipv6 选项卡,对于“方法”,选择“忽略”,然后单击保存并执行以下命令。

sudo service network-manager restart 

通常,dnscrypt-proxy 必须与 sudo 一起使用。使用该选项时看不到 UDP 绑定错误的原因--daemonize不是因为没有错误,而是因为该--daemonize选项(非详细)不会显示任何输出,因此不会显示错误。我将在这里详细解释。

第一的, 你必须杀死 dnsmasq释放 127.0.0.1 否则您将遇到您所说的 UDP 绑定权限错误。

sudo killall dnsmasq

现在,在 127.0.0.1 上使用以下命令启动 dnscrypt-proxy

sudo dnscrypt-proxy --daemonize --resolver-name=opendns

以下命令执行相同的操作(输入的内容少很多)。

sudo dnscrypt-proxy -d -R opendns

或者,你可以使用 127.0.0.2 代替 127.0.0.1无需关闭 dnsmasq以避免您所说的UDP绑定错误。

sudo dnscrypt-proxy -d -R opendns -a 127.0.0.2

对于详细模式,在打开的终端中运行以下命令。关闭终端将终止正在运行的实例。

首先,终止所有 dnscrypt-proxy 实例,这样您就不会遇到 UDP 绑定错误。

sudo killall dnscrypt-proxy

然后你可以运行

sudo dnscrypt-proxy -R opendns

或者

sudo dnscrypt-proxy -R opendns -a 127.0.0.2

最后,验证是否使用了加密,(仅限 opendns)...

drill txt debug.opendns.com

或者

dig txt debug.opendns.com

. . . “dnscrypt enabled” 应该显示在输出的某处

要查看启用 dnscrypt-proxy 的解析器的列表,请访问此页面:https://github.com/jedisct1/dnscrypt-proxy/blob/master/dnscrypt-resolvers.csv

资料来源:http://dnscrypt.org/

https://github.com/jedisct1/dnscrypt-proxy

如何检查 DNS 是否加密?

相关内容