最近,我们的一台 ESXi 服务器出现了一些问题,原因是使用 ntpdc 的 NTP 服务器 DRDoS 放大攻击。
如何配置 ESXi 上的 NTP 服务器以避免受到此 DDoS 攻击?
或者,如果我关闭该服务,这会对我的虚拟机产生任何影响吗?
答案1
答案可以在这篇博文您需要做的就是禁用“monlist”命令,顺便说一下,该命令已在 ntpd 4.2.7 中删除(我们的 ESXi 5.1.0u2 服务器正在运行 4.2.6p2)。
- 通过启用本地控制台或 SSH 来访问服务器的控制台。
/etc/ntp.conf
通过添加noquery
到第一行进行编辑restrict
。- 使用 重新启动 NTP 服务
/etc/init.d/ntpd restart
。 验证该
monlist
命令是否已被禁用:ntpdc -c monlist 1.2.3.4
答案2
这个问题无法回答——而且你可能不喜欢给出的答案。
2 种情况,您没有提及任何要过滤的细节:
1 - 你习惯于放大。在这种情况下,我想知道为什么 ESXi 主机可以从互联网访问。它不应该。它不应该有公共 IP。我没有运行 ESX,但为客户维护了许多 Hyper-V 服务器,伙计,你不会在互联网上找到它们中的任何一个。它们位于内部网络中,所有访问都是通过 VPN 到该内部网关进行的。是的,服务器可能有公共 IP 地址 - 虚拟服务器 - 但永远不会有主机。不需要。他们从互联网上需要的所有流量都通过防火墙(通过 NAT),因此它们受到保护。我认为这是安全方面的专业基线。
2 - 您被针对了。在这种情况下 - 没办法。这就像说“我该怎么改变我的房子,这样人们就不会给我寄一大堆我从未订购过的包裹”。当流量到达 ESX 主机时,它已经使您的带宽过载。但话说回来,为什么主机在互联网上?
答案3
如何配置 ESXi 上的 NTP 服务器以避免受到此 DDoS 攻击?
目前,您真的不能。ESXi 中的 ntpd 并不是真正可配置的(至少在 VMware 支持的方式下),因此您的选择实际上是打开或关闭。
据推测,VMware 将很快发布补丁或更新来解决该问题(我没有看到任何补丁或更新说它现在解决了该问题),您可以在补丁发布时应用它,但这现在无济于事。
你可以手动更新 ESXi 主机较新的、不易受攻击的 ntpd 客户端(毕竟,ESXi“只是”一个定制的 Linux 发行版),但我不会这么做,否则会面临 VMware 不受支持的配置的风险。
当然,正如您在问题中所建议的那样,您也可以通过关闭服务(暂时)来阻止攻击。
或者,如果我关闭该服务,这会对我的虚拟机产生任何影响吗?
这完全取决于您的客户操作系统如何配置 ntp。如果将它们配置为与主机系统同步时间,它们将开始失去时间同步(它们处于空闲 CPU 使用状态的时间越长,您会看到的时间漂移就越严重)。
如果它们配置为从不同的 ntp 源获取时间,则不会出现问题……当然,除非它们还运行有漏洞的 ntp 客户端,在这种情况下,它们可能会受到 DRDoS 攻击而不是主机。
如果您目前正在配置虚拟客户操作系统以从其主机服务器获取时间,那么现在可能是考虑采用不同方法的好时机,这完全取决于您的用例。运行 Windows 域使这变得简单 - PDC 仿真器从可靠的(外部)ntp 源获取 ntp 时间,所有其他域控制器从 PDC 仿真器获取时间,所有客户端从其本地域控制器获取时间。当然,您的用例可能会有所不同或更复杂。
答案4
我对这里所有冗长但无关紧要的答案感到非常困惑......
答案很简单:启用 ESXi 内置防火墙!
默认情况下,它是启用的,并阻止传入的 NTP 流量。那么你为什么要禁用它呢?