专用服务器 - 如何保护 ipmi

专用服务器 - 如何保护 ipmi

在提供专用服务时,最佳做法是什么,即通过公共网络还是通过内核模块保护 IPMI。

首先,我想确保如果有人扫描我的网络并发现一些 IPMI 卡,他将无法控制它。有一个错误允许通过匿名帐户通过超微 IPMI 发送电子邮件。我知道仅在没有公共网络的本地网络中使用 IPMI 是一种很好的做法,但是客户不太愿意使用 VPN 来访问 IPMI。

其次,您可以使用 ipmitool 命令来管理 IPMI 配置,而无需用户身份验证。我想阻止客户更改 IPMI 设置 - 例如 IP 地址、删除我的监控用户等...

您的最佳实践是什么?如果您遇到此问题,您将如何解决?

答案1

IPMI 的主要优势在于,在 SHTF 情况下,内核通常无法正常工作,因此可以进行带外访问。因此,您应该允许操作系统之外的访问。设置 VPN,或者至少为您的客户端设置一种通过 ssh 隧道或其他方式访问 IPMI 的方法。

您谨慎地避免将 IPMI 暴露在公共互联网上是正确的。如果您的客户抱怨额外的安全措施,那么您就不想与他们打交道。

答案2

首先,我想确保如果有人扫描我的网络并发现一些 IPMI 卡,他将无法控制它。

Supermicro 系统上的 BMC 在去年出现了一些特别严重的错误。请确保您的系统运行的是最新固件,它可以解决大多数错误比如“匿名用户”漏洞和臭名昭著的密码零错误。请注意,这些固件仅适用于较新的主板(X8、X9 和 X10 代;通常不适用于 3-4 年前发货的 X7 代),因此您的硬件必须是现代硬件。

即使进行了更新,Supermicro 的 IPMI 仍然容易出现错误。密码在网络上以明文形式传输,等等。在我看来,IPMI 绝对必须位于私有网络上,并且只能从少数特殊管理节点访问。

我知道仅在没有公共网络的本地网络中使用 IPMI 是一种很好的做法,但是客户不太乐意使用 VPN 来访问 IPMI。

IPMI 是系统管理员的绝佳管理工具。从本质上讲,这意味着它也是黑客的一个很好的后门。如果我获得 IPMI 网络的访问权限,我就可以做一些有趣的事情,比如在几分钟内关闭所有 200 台机器,或者告诉每个节点在下次启动时进行 PXEboot(并可能覆盖当时磁盘上的任何内容)。如果你能很好地向客户解释这一点,他们可能会明白 VPN 的妙处。

其次,您可以使用 ipmitool 命令来管理 IPMI 配置,而无需用户身份验证。我想阻止客户更改 IPMI 设置 - 例如 IP 地址、删除我的监控用户等...

确保ipmitool系统上未默认安装、FreeIPMI 等。在客户文档中添加警告,指出在操作系统上安装这些工具存在潜在的安全问题,如果他们安装这些工具,则需要承担部分风险。

答案3

好的,我的最终解决方案可能非常简单。由于我有 IPMI 的 ADMIN 用户权限,因此我可以编写一个简单的界面,运行 ipmitool 命令来启动/停止/重新启动服务器。

对于 webconsole,我做了一些研究。Supermicro 生成 jviewer.jnlp 文件,该文件仅包含端口号和一些凭据。首先,我认为有一些签名,我无法更改内容。然而,没有签名,我可以在那里放任何我想要的东西。

因此,作为我的界面的一部分,我将创建控制台按钮,它将配置防火墙以临时允许控制台所需的端口,还将下载 jviewer 文件、更新它并将其传递给客户端。

这会花费我一些开发时间,但它将允许我在本地网络中拥有管理卡,并在需要时从公共网络访问它们。

相关内容