2. iLO管理接口安全基础

HPE ProLiant 服务器的带外管理能力几乎全部由 iLO(Integrated Lights-Out)承载。它是一颗独立于主机 CPU、内存和操作系统的嵌入式管理控制器,只要服务器接入电源(即使主机处于关机状态),iLO 就能通过网络提供远程控制台、虚拟介质、电源控制、硬件健康监控和固件更新等能力。正因为 iLO 拥有"绕过操作系统直接操作硬件"的权限,它一旦被攻破,攻击者可以重启服务器、挂载恶意镜像、读取传感器与日志,甚至借助虚拟介质植入系统。因此,iLO 的安全基线不是可选项,而是整个 ProLiant 安全体系的入口防线。

iLO 的角色与访问路径

理解 iLO 安全,先要理解它的访问面。iLO 有两条主要访问路径:一条是网络路径,管理员通过浏览器访问 iLO Web 界面(HTTPS)、通过 SSH 登录 iLO CLI、通过 IPMI/Redfish 等接口进行自动化管理;另一条是本地路径,包括服务器前面板的 iLO 服务端口、USB 端口以及通过主机操作系统内的 iLO 驱动通道(如 HPE iLO 通道接口驱动)。网络路径是攻击面最大的部分,也是本节关注的重点。

iLO 出厂时通常处于"出厂默认状态":DHCP 自动获取地址,启用部分服务,并可能带有默认的 Administrator 账户。不同代际的 iLO(iLO 4、iLO 5、iLO 6)在默认行为上略有差异,但核心风险一致——默认凭据、暴露的服务端口、未加密的访问方式。安全基线工作的第一步,就是在服务器上架后、接入生产网络前,完成 iLO 的初始安全配置。

iLO 访问路径与网络服务暴露面 管理网络 浏览器 / SSH / Redfish 自动化运维平台 HTTPS/SSH iLO 管理控制器 独立供电 · 独立固件 Web / CLI / Redfish / IPMI 虚拟介质 · 远程控制台 本地访问路径 前面板服务端口 / USB 主机内 iLO 驱动通道 主机操作系统 通过驱动通道与 iLO 通信 iLO 常见网络服务端口 443 HTTPS Web 界面 22 SSH CLI 80 HTTP(应禁用/重定向) 623 IPMI over LAN 17988/17990 Redfish/其他 161 SNMP(按需启用) 3389 远程控制台(按需) 默认账户与初始配置风险 • 出厂默认 Administrator 账户若未修改密码,等于把服务器控制权公开 • 未禁用 HTTP、IPMI over LAN、SNMP 等非必要服务,扩大攻击面 • 未配置访问控制列表(IP 白名单),任意主机均可尝试登录 • 未启用双因素认证或目录集成,凭据泄露后无第二道防线 • 固件版本过旧,存在已知漏洞且缺少安全增强功能

默认账户风险:最容易被忽视的入口

iLO 出厂时通常预置一个名为 Administrator 的账户,部分早期固件版本甚至允许空密码或简单默认密码登录。很多运维团队在服务器上架后只关注操作系统和业务配置,忘记修改 iLO 密码,导致管理接口长期处于"默认凭据可登录"状态。攻击者一旦扫描到暴露在公网的 iLO 端口,就可以用默认凭据直接登录,进而挂载虚拟介质、重启服务器或导出日志。

更隐蔽的风险在于账户权限模型。iLO 支持多个用户账户,每个账户可分配不同的权限级别(如 Admin、Operator、Read Only、Custom)。如果所有账户都使用 Administrator 权限,或者离职人员的账户未及时删除,就会形成"权限泛滥"。安全基线要求:至少保留一个管理员账户,其余账户按最小权限原则分配;启用登录失败锁定策略,防止暴力破解;对高权限账户启用双因素认证或目录服务集成。

初始安全配置检查清单

下面这份清单可以直接用于服务器上架后的 iLO 初始安全配置。建议在服务器接入生产网络之前完成,并在变更管理系统中记录配置结果。

检查项 推荐配置 验证方式
默认账户密码 首次登录立即修改 Administrator 密码,长度≥12位,含大小写、数字、符号 iLO Web → 用户管理 → 修改密码后重新登录验证
非必要账户 删除或禁用出厂预置的额外账户,仅保留必要管理员账户 用户管理页面查看账户列表
HTTP 服务 禁用 HTTP,强制使用 HTTPS;启用 HSTS(如支持) 访问 http://iLO_IP 应无法打开或自动跳转 HTTPS
IPMI over LAN 如无自动化需求则禁用;必须使用时限制源 IP 网络管理 → 服务 → IPMI 状态
SNMP 按需启用,使用 SNMPv3 并配置强认证与加密 服务页面查看 SNMP 版本与团体字符串
访问控制列表 配置 IP 白名单,仅允许管理网段访问 iLO 网络 → 访问控制,测试非白名单 IP 被拒绝
登录失败锁定 启用,建议 5 次失败后锁定 15 分钟 安全 → 登录安全,故意输错密码验证锁定
固件版本 升级到当前推荐版本,修复已知漏洞 iLO 概览页查看固件版本,与 HPE 支持网站比对
日志与告警 启用 iLO 事件日志,配置告警转发到 SIEM 或邮件 管理 → 告警,触发测试事件确认收到通知
提示:iLO 的初始配置可以通过 Web 界面逐项完成,也可以使用 HPE iLO RESTful API 或 OneView 批量下发。对于大规模部署,建议先在一台服务器上完成配置并导出配置脚本,再批量应用,避免逐台手工操作带来的遗漏。

从检查到加固:一个可复现的配置示例

假设一台 ProLiant DL380 Gen10 服务器,iLO 5 固件版本为 2.78,管理网段为 10.10.20.0/24,iLO 地址为 10.10.20.51。上架后按以下顺序操作:

  1. 通过浏览器访问 https://10.10.20.51,使用出厂 Administrator 账户登录。
  2. 进入"用户管理",将 Administrator 密码修改为强密码,并记录到密码管理系统中。
  3. 进入"网络 → 服务",禁用 HTTP、IPMI over LAN 和未使用的 SNMP;保留 HTTPS 和 SSH。
  4. 进入"网络 → 访问控制",添加规则:允许 10.10.20.0/24,拒绝其他所有地址。
  5. 进入"安全 → 登录安全",启用登录失败锁定,设置 5 次失败锁定 15 分钟。
  6. 进入"管理 → 固件",检查并升级 iLO 固件到 HPE 推荐版本。
  7. 进入"管理 → 告警",配置 SMTP 或 SNMP 告警目标,发送测试告警确认可达。

完成上述步骤后,可以用以下命令从管理网段外的主机验证访问控制是否生效:

# 从非白名单网段测试 iLO 端口连通性
nmap -p 443,22,623 10.10.20.51

# 预期结果:443 和 22 被过滤或拒绝,623 关闭
# 从管理网段内测试
curl -k -I https://10.10.20.51
# 预期结果:返回 HTTP/1.1 200 或 302,证书可查看

如果非白名单网段仍然能建立 TCP 连接,说明访问控制列表未生效或规则顺序有误,需要回到 iLO 网络设置中检查规则优先级。iLO 的访问控制规则按顺序匹配,第一条匹配的规则决定允许或拒绝,因此"拒绝所有"应放在最后一条。

注意:修改 iLO 网络配置或访问控制列表时,如果规则配置错误,可能导致自己也无法访问 iLO。建议在本地通过前面板服务端口或主机内驱动通道保留一条恢复路径,并在变更前记录当前配置。

iLO 安全基线的核心逻辑可以概括为:先关闭不需要的入口,再收紧必须保留的入口,最后建立可观测与可恢复机制。默认账户、暴露端口和宽松访问控制是三个最常见的初始风险点,而检查清单和可复现的配置顺序,能把"知道要安全"变成"确实安全"。