如何保护 ESXi 免受 root 帐户锁定

如何保护 ESXi 免受 root 帐户锁定

我有一个 VMWare ESXi 实例,运行的是 6.0.0 版。今天,我们的员工被锁定在 ESXi 胖客户端(“vSphere Client”Windows 应用程序)之外很长时间。我们尝试登录时,出现了“用户名或密码错误”的错误消息。经过一番研究,我们确定,我们被锁定在自己的 ESXi 主机之外,是因为 v6.0 的 root 锁定功能,该功能会在连续 3 次密码尝试失败后将帐户锁定一段时间(默认值:2 分钟)。看来攻击者持续了几个小时,直到最终屈服。那时,我们能够使用 root 帐户自行登录。

我们有点困惑为什么会发生这种情况。该服务器托管在一个相当大且信誉良好的数据中心,是一个真正的专用实例。然而,该设施想要收取相当高的费用来将此 VM 服务器置于硬件防火墙之后。所以我们一直依赖 ESXi 的内置防火墙。

在配置 -> 安全配置文件 -> 防火墙部分,我们对以下服务(默认定义)进行 IP 限制,仅允许我们的办公室 IP:

  • SSH 服务器
  • vSphere Web 访问
  • vSphere Web 客户端
  • 比桑普
  • vMotion

尽管如此,攻击者似乎仍然能够至少通过并以某种方式触发“密码错误”错误,因为服务器的 ESXi 事件日志显示了许多这样的行:

Remote access for ESXi local user account 'root' has been locked for 120 seconds after 563 failed login attempts.

尽管只有我们办公室的 IP 被授权,并且我们知道这里没有人发起此操作,但情况仍然如此。

我们做错了什么?

答案1

a) 您不应该使用 .net/Windows 客户端,它将在即将发布的 6.5 中完全消失,并且 VMware 多年来一直强烈建议用户放弃它。

b) 我不清楚,你们都是直接登录主机吗,即没有使用 vCenter,如果是的话,你们是以 root 身份登录的吗?

c) 看来您没有将主机置于严格的锁定模式 - 我也会禁用 SSH,作为服务和防火墙。

答案2

我读了很多“禁用 SSH”或“恶意用户试图暴力破解”...如果您的 ESXi 没有暴露在互联网上(不信任),并且如果 SSH 被禁用,那么这可能不是您被锁定的原因。

我所有的 ESXi 主机都以同样的方式被定期锁定。

经过日志调查,该问题似乎是由供应商脚本(Lenovo=IBM)引起的:

/etc/cim/lenovo/refresh.sh

我通过以下方式解决了该问题:

  1. 从 crontab (/var/spool/cron/crontab/root) 中删除对脚本的调用
  2. 删除供应商目录脚本(/etc/cim/lenovo/)
  3. 删除联想扩展(https://support.lenovo.com/au/en/solutions/ht502599

注 1:仅删除扩展(3.)不是解决我的问题。

注2:您的供应商可能与我的不同(Dell,HP),因此目录会不同,请检查cron文件。

问题的根本原因是:我从供应商图像 (https://my.vmware.com/web/vmware/details?productId=352&downloadGroup=OEM-ESXI55U3A-LENOVO) 到通用 ESXi 6.5 映像。在此过程中,扩展和脚本未被 VMware Update Manager 清除。

在此处输入图片描述 在此处输入图片描述

相关内容