本文介绍两种方法使用DNS over TLS,一是Stubby、二是Systemd-resolved。每天,您的计算机都会向互联网发送数千个DNS查询,在大多数情况下,您的操作系统不会保护这些查询,而具有适当技术诀窍的错误人员可能会侵犯您的隐私。DNSCrypt:这是获得DNS隐私保护的绝佳方式,但是它不是唯一的解决方案,另一种选择是通过DNS over TLS。
方法一、Stubby
Stubby是一个简单的程序,适用于某些Linux发行版,允许用户通过TLS发送DNS查询。
Stubby工具适用于Ubuntu Linux、Debian Linux和Arch Linux,安装非常的简单。参考在Ubuntu 18.04系统上安装Stubby并使用它保护你的DNS隐私。
1、Ubuntu
要在Ubuntu上安装Stubby,首先需要启用Ubuntu“Universe”软件存储库,为此,请在终端窗口中使用apt-add-repository命令:
sudo add-apt-repository universe
运行add-apt-repository命令后,是时候使用更新工具让Ubuntu检查软件升级,它还会将发布信息下载到Universe软件源并将其添加到您的系统中:
sudo apt update
更新命令完成后,使用Apt install命令在您的Ubuntu Linux操作系统上安装Stubby:
sudo apt install stubby
2、Debian
在Debian上,对于版本10,“Sid”Stubby工具可以在“Main”软件存储库中找到,要安装它,请启动终端窗口并使用下面的Apt-get命令:
sudo apt-get install stubby
3、Arch Linux
Arch Linux用户可以安装Stubby,如果他们设置了“Community”软件存储库,要进行设置,请编辑/etc/pacman.conf,滚动到文件底部,从“Community”前面删除#符号并更新系统。
设置“Community”后,使用Pacman包管理器安装Stubby应用程序:
sudo pacman -S stubby
现在已经设置了Stubby应用程序,因此无需修改任何配置文件,因为Stubby预设了一些支持TLS的优秀DNS服务。
注意:如果您希望更改DNS服务,请编辑/etc/stubby/stubby.yml。
使用Stubby设置DNS over TLS的最后一步是将默认DNS设置从您当前使用的任何地址更改为地址127.0.0.1。
根据您使用的Linux桌面环境,更改DNS设置可能会有所不同,但都是非常简单的,请根据自己的情况操作。
当DNS设置更改为127.0.0.1时,您的Linux计算机应该使用DNS over TLS了。
方法二、Systemd-resolved
虽然Stubby工具易于配置并且使得在Linux上通过DNS over TLS非常简单,但遗憾的是它并不适用于每个单独的发行版。
在Linux上配置DNS over TLS的Stubby程序的一个很好的替代方案是使用Systemd解析的DNS缓存系统,其主要原因是它内置于大多数Linux操作系统已经使用的Systemd init系统中,并且很容易开始使用,但是,在通过TLS设置Systemd-resolved for DNS之前,必须关闭当前使用的DNS缓存系统,以支持Systemd-resolved。
要设置Systemd-resolved系统,请启动命令行终端,然后使用systemctl命令禁用您使用的DNS缓存系统。
注意:如果您不使用DNS Masq或NSCD,您可能已经使用了Systemd-resolved,并且不需要禁用任何内容。
1、DNS Masq
sudo systemctl stop dnsmasq.service
sudo systemctl disable dnsmasq.service -f
2、NSCD
sudo systemctl stop nscd.service -f
sudo systemctl disable nscd.service -f
在Linux PC上关闭默认DNS提供程序后,就可以切换到Systemd-resolved,为此,请再次使用systemctl命令:
sudo systemctl enable systemd-resolved.service -f
sudo systemctl start systemd-resolved.service
通过Systemd启用该工具,我们可以将程序配置为使用DNS over TLS,首先,在Nano中启动该工具的配置文件:
sudo nano -w /etc/systemd/resolved.conf
使用Nano编辑Resolved.conf文件,然后向下滚动到DNS=。
在=符号后,添加一个安全的,支持TLS的DNS服务器,例如CloudFlare的隐私DNS服务器,比如以下示例:
DNS=1.1.1.1
接下来,向下移动到Domains=并将其更改为下面的代码:
Domains=~.
在“Domains”之后,向下移至DNSOverTLS=并将其更改为下面的代码:
DNSOverTLS=opportunistic
通过按Ctrl+O将编辑保存到Resolved.conf,然后使用Ctrl+X退出并重新启动DNS系统以通过Systemd-resolved启用DNS over TLS:
sudo systemctl restart systemd-resolved
至此,目的达到。
相关主题