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

Ubuntu DNS安全加固(全面指南:提升系统DNS安全性,防止DNS劫持)

在当今网络环境中,DNS安全已成为系统管理员和普通用户都必须重视的问题。攻击者常常通过DNS劫持、缓存投毒等方式窃取敏感信息或引导用户访问恶意网站。本文将手把手教你如何在 Ubuntu 系统 上进行 DNS 安全加固,即使是 Linux 新手也能轻松上手。

Ubuntu DNS安全加固(全面指南:提升系统DNS安全性,防止DNS劫持) DNS安全加固  DNS安全配置 Ubuntu系统安全 防止DNS劫持 第1张

一、为什么需要 DNS 安全加固?

默认情况下,Ubuntu 使用 ISP 提供的 DNS 服务器,这些服务器可能不支持加密、易受攻击,甚至被用于监控用户行为。通过以下措施,你可以显著提升 Ubuntu系统安全 和隐私保护能力:

  • 防止 DNS 劫持和中间人攻击
  • 阻止恶意域名解析
  • 提升查询速度与隐私性(使用 DoH/DoT)
  • 增强整体网络安全防护

二、方法一:更换为可信的公共 DNS 服务器

首先,建议将默认 DNS 替换为支持隐私保护的公共 DNS,例如 Cloudflare (1.1.1.1) 或 Google Public DNS (8.8.8.8)。

步骤如下:

  1. 打开终端(Ctrl + Alt + T)
  2. 编辑 Netplan 配置文件(Ubuntu 18.04 及以上版本)
sudo nano /etc/netplan/01-network-manager-all.yaml

在文件中添加或修改 nameservers 部分,例如:

network:  version: 2  ethernets:    eth0:      dhcp4: true      nameservers:        addresses: [1.1.1.1, 1.0.0.1, 8.8.8.8]

保存后执行以下命令应用配置:

sudo netplan apply

三、方法二:启用 DNS-over-HTTPS (DoH)

DoH 能加密 DNS 查询,防止窃听和篡改。我们可以通过安装 systemd-resolved 并配置它来使用 DoH。

启用 systemd-resolved:

sudo systemctl enable systemd-resolvedsudo systemctl start systemd-resolved

然后编辑其配置文件:

sudo nano /etc/systemd/resolved.conf

取消注释并修改以下行:

[Resolve]DNS=1.1.1.1#cloudflare-dns.comFallbackDNS=8.8.8.8#dns.googleDNSOverTLS=yes

重启服务使配置生效:

sudo systemctl restart systemd-resolved

四、方法三:使用本地 DNS 过滤器(如 dnsmasq + AdGuard Home)

你还可以部署本地 DNS 服务器,结合广告和恶意域名黑名单实现主动防护。以 AdGuard Home 为例:

# 下载并安装 AdGuard Homewget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_amd64.tar.gztar xvfz AdGuardHome_linux_amd64.tar.gzcd AdGuardHomesudo ./AdGuardHome -s installsudo ./AdGuardHome -s start

然后在浏览器访问 http://localhost:3000 完成初始化设置,并将系统 DNS 指向 127.0.0.1。这样所有 DNS 请求都会经过过滤,有效提升 DNS安全配置水平。

五、验证 DNS 安全配置是否生效

使用以下命令检查当前使用的 DNS 服务器:

resolvectl status

你也可以访问 https://1.1.1.1/help 查看是否启用了加密 DNS。

结语

通过上述步骤,你已经成功完成了 Ubuntu DNS安全加固。无论是更换可信 DNS、启用 DoH,还是部署本地过滤器,都能显著提升你的网络安全防线,有效防止DNS劫持。建议定期检查配置,并关注最新的安全实践。

关键词回顾:Ubuntu DNS安全加固DNS安全配置Ubuntu系统安全防止DNS劫持