ISP 发来开放 DNS 解析程序警告?先对三条成因再动手整改
痛点场景
一封运营商整改通知发进公司邮件系统:您的设备存在 DNS 漏洞,可能成为开放 DNS 解析程序,请限期整改,否则将封禁相应端口。网管一查,内网确实有台群晖 NAS 装着 DNS Server 套件给办公网做域名解析——警告十有八九冲它来的。
先把概念掰开:开放式 DNS 解析程序,就是为 Internet 上的任何人执行 DNS 递归查找的解析服务。正常的 DNS Server 只该答自己人的查询;一旦配置失守,互联网上的任何主机都能把您的设备当公共解析器用。
为什么运营商如此紧张?因为开放解析器是 DNS 放大攻击的燃料——攻击者伪造源地址发一个小查询,您的设备向受害者返回一个大得多的响应,反射放大成流量洪峰,这是臭名昭著的拒绝服务(DoS)攻击形式。运营商和安全社区会持续扫描公网 53 端口,扫到就追责到线路。
三条成因对号入座
官方知识库指出,设备上的以下配置会导致未解决的解析程序问题:
- 端口 53 对 Internet 开放——DNS 服务的默认端口 53 被路由器端口转发、DMZ 或 UPnP 暴露到了公网;
- DNS Server 套件在启用解析服务的情况下运行——套件本身在跑,且开着递归解析功能;
- 可发送递归查询的来源不受限制——任何来源都能递归查询,等于向整个互联网敞开。
三条同时成立,NAS 就成了挂在公网上的义务放大器。对照自查:装了 DNS Server 且开了解析服务的,重点查第 1、3 条;没装套件却收到警告的,排查网内其他主机或曾被利用的历史。
解决一:限制 DNS 查询来源
收紧"谁可以问":
- 前往 DNS Server > 解析;
- 单击来源 IP 列表;
- 指定哪些主机可向您的设备发送递归查询——官方建议仅允许本地网络中的 IP 地址。
来源一旦限定在内网网段,公网上陌生的递归请求在服务层就被拒绝了。
解决二:通过防火墙保护端口
如果您的 DNS Server 仅服务于本地网络中的主机(绝大多数办公场景如此),再补一道门禁——创建防火墙规则,拒绝所有 Internet 来源访问您的 DNS 端口:
- 打开 控制面板 > 安全性 > 防火墙;
- 新建规则,选择端口为 DNS(53,TCP/UDP),来源设为所有来源或明确的非内网段,动作选拒绝;
- 确认规则优先级位于放行内网查询的规则之上,保存应用。
两道防线一内一外:解析服务只答内网,防火墙连 53 端口的门都懒得上闩之外的开。
验证整改效果
拿一部手机关掉 Wi-Fi 用蜂窝网络做对照:nslookup 指定您线路的公网 IP 查询任意外部域名,应当超时或被拒绝;回到办公室内网做同样查询,解析应正常返回。外拒内通,整改即告完成,可回复运营商销案。
预防与建议
- 把路由器的端口映射表纳入季度巡检:53 端口不应出现在对外转发列表里,UPnP 功能不用就关;
- 真有对外提供域名权威解析的业务,与内部递归解析分开部署,别让一台设备身兼两职;
- 服务器上线清单里加一条"53 端口公网可达性回扫",配置漂移早发现早处理。
诚鑫致达科技给客户做安全巡检时,“对外开放端口回扫"是雷打不动的固定项目——像开放解析程序这类警告,多数时候在运营商邮件寄到之前就已经被拦在清单上了。