当前位置:首页 > RockyLinux > 正文

RockyLinux DNS over TLS配置(手把手教你设置安全加密DNS)

在当今网络环境中,保护隐私和数据安全变得越来越重要。传统的DNS查询以明文方式传输,容易被监听或篡改。为了解决这个问题,DNS over TLS(DoT)技术应运而生,它通过TLS加密DNS流量,有效防止中间人攻击和窃听。

本文将详细指导你如何在 RockyLinux 系统上配置 DNS over TLS,即使你是 Linux 新手也能轻松完成。我们将使用 stubby 这款轻量级的 DoT 客户端来实现这一目标。

RockyLinux DNS over TLS配置(手把手教你设置安全加密DNS) TLS配置  DNS加密设置 RockyLinux安全DNS DoT配置教程 第1张

什么是 DNS over TLS?

DNS over TLS(DoT)是一种安全协议,它将标准的 DNS 查询封装在 TLS 加密通道中传输。这意味着你的 DNS 请求不会被 ISP、公共 Wi-Fi 提供商或其他第三方窥探,从而大大提升了隐私性和安全性。

准备工作

  • 一台运行 RockyLinux 8 或 9 的服务器或桌面系统
  • 具有 sudo 权限的用户账户
  • 网络连接正常

步骤一:安装 Stubby

Stubby 是一个开源的 DNS over TLS 客户端,由 getdns 项目维护。我们首先需要启用 EPEL 仓库,然后安装 stubby。

sudo dnf install epel-release -ysudo dnf install stubby -y

步骤二:配置 Stubby

Stubby 的主配置文件位于 /etc/stubby/stubby.yml。我们将使用 Cloudflare 或 Quad9 等支持 DoT 的公共 DNS 服务。

首先备份原始配置:

sudo cp /etc/stubby/stubby.yml /etc/stubby/stubby.yml.bak

然后编辑配置文件:

sudo nano /etc/stubby/stubby.yml

将以下内容粘贴进去(以 Cloudflare 为例):

resolution_type: GETDNS_RESOLUTION_STUB# 启用 DNSSEC 验证(可选但推荐)dnssec_return_status: GETDNS_EXTENSION_TRUE# 指定上游递归解析器(使用 DoT)upstream_recursive_servers:  - address_data: 1.1.1.1    tls_auth_name: "cloudflare-dns.com"    tls_port: 853  - address_data: 1.0.0.1    tls_auth_name: "cloudflare-dns.com"    tls_port: 853# 监听本地回环地址listen_addresses:  - 127.0.0.1@53  - 0::1@53

如果你更信任 Quad9,可以替换为:

upstream_recursive_servers:  - address_data: 9.9.9.9    tls_auth_name: "dns.quad9.net"    tls_port: 853  - address_data: 149.112.112.112    tls_auth_name: "dns.quad9.net"    tls_port: 853

步骤三:启动并启用 Stubby 服务

sudo systemctl enable --now stubby

验证服务是否正常运行:

sudo systemctl status stubby

步骤四:配置系统使用本地 Stubby 作为 DNS

为了让整个系统使用 Stubby 提供的加密 DNS,我们需要将系统的 DNS 指向 127.0.0.1。

如果你使用 NetworkManager(大多数桌面版默认):

sudo nmcli con modify "你的连接名称" ipv4.dns "127.0.0.1"sudo nmcli con up "你的连接名称"

你可以通过以下命令查看连接名称:

nmcli con show

如果你使用 systemd-resolved(某些服务器环境),请编辑 /etc/systemd/resolved.conf

[Resolve]DNS=127.0.0.1FallbackDNS=Domains=~.

然后重启服务:

sudo systemctl restart systemd-resolvedsudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf

步骤五:测试 DNS over TLS 是否生效

使用 dig 命令测试解析是否正常:

dig @127.0.0.1 example.com

你也可以使用在线工具如 DNSLeakTest 检查 DNS 是否泄露或是否使用了加密连接。

常见问题与注意事项

  • 防火墙设置:确保系统防火墙未阻止本地 53 端口通信。
  • 性能影响:DoT 会略微增加 DNS 查询延迟,但换来的是更高的安全性。
  • 日志查看:可通过 journalctl -u stubby 查看 Stubby 日志排查问题。

总结

通过本教程,你已经成功在 RockyLinux 上配置了 DNS over TLS,实现了 DNS 查询的加密传输。这不仅增强了你的网络隐私,也符合现代网络安全的最佳实践。

记住定期更新系统和 stubby 软件包,以获得最新的安全补丁。希望这篇 RockyLinux DNS over TLS配置 教程对你有所帮助!

SEO关键词回顾:RockyLinux DNS over TLS配置、DNS加密设置、RockyLinux安全DNS、DoT配置教程。