dnscrypt-proxy客户端和DNS解析的工具间的安全通信,因为是加密传输dns信息所以安装这个软件之后可以防止天朝的dns劫持,此软件默认是从opendns通信相当的纯净。在配合上dnsmasq做本地缓存是很不错的选择。

在archlinux中此包是aur方式安装,可直接共过pacman安装或者yaourt这里不再赘述。

aur 源码安装

我安装的时候比较慢所以就直接从官网下载了tar包在生成安装文件。

cd /tmp

wget https://aur.archlinux.org/packages/dn/dnscrypt-proxy/dnscrypt-proxy.tar.gz

tar xvf dnscrypt-proxy.tar.gz

makepkg -s

sudo pacman -U dnscrypt-proxy-1.2.0-1-x86_64.pkg.tar.xz

这样就安装完成了。

配置dnscrypt:

因为现在使用的是systemd,所以dnscrypt的启动配置文件在/etc/conf.d/dnscrypt-proxy

默认的端口号为dns的53,因为要和dnsmasq搭配使用和他在端口上有冲突现改为35535

这是我的配置

codewalker@codehost:/tmp/dnscrypt-proxy

$ cat /etc/conf.d/dnscrypt-proxy

DNSCRYPT_LOCALIP=127.0.0.1

DNSCRYPT_LOCALPORT=35535

DNSCRYPT_USER=nobody

测试 dnscrypt

启动 sudo systemctl start dnscrypt-proxy.service

dig -p 35535 www.twitter

详细安装配置 <wbr>dnscrypt <wbr>和 <wbr>dnsmasqdnscrypt 和 dnsmasq” TITLE=”详细安装配置 dnscrypt 和 dnsmasq” />
已经看到下面的server为127.0.0.1:35535

整合dnsmasq

sudo vim /etc/dnsmasq.conf

下面两行如没有则加入,有则修改.这里需要注意后面跟端口号的符号为#不是通常的:

#这是dnscrypt刚才的IP+端口号

server=127.0.0.1#35535

#这是opendns的ip地址

bogus-nxdomain=67.215.65.132

保存。

启动dnsmasq

sudo systemctl start dnsmasq.service

检查

dig -p 53 www.twitter

详细安装配置 <wbr>dnscrypt <wbr>和 <wbr>dnsmasqdnscrypt 和 dnsmasq” TITLE=”详细安装配置 dnscrypt 和 dnsmasq” />

可以把他们都设为开机启动

sudo systemctl enable dnsmasq.service

sudo systemctl enable dnscrypt-proxy.service

打完收工