4. iLO安全基线配置实战

iLO(Integrated Lights-Out)是HPE ProLiant服务器上独立于操作系统的带外管理子系统,它拥有自己的处理器、内存、网络接口和固件,即使主机断电,只要服务器接入电源,iLO就能继续工作。正因为它具备“独立供电、独立网络、独立账户”的特性,一旦iLO被攻破,攻击者就获得了对服务器的完全控制能力——可以远程开关机、挂载虚拟介质、查看屏幕、修改BIOS。因此,iLO的安全基线配置不是可选项,而是服务器交付前必须完成的基础工作。

本节围绕四个核心加固动作展开:禁用未使用服务、修改默认端口、启用强密码策略、配置会话超时与账户锁定。这四个动作分别对应攻击面收敛、隐蔽性提升、身份认证强化和会话生命周期控制,共同构成iLO访问控制的第一道防线。

一、禁用未使用服务:从源头收敛攻击面

iLO出厂时启用了多种管理服务,包括Web界面(HTTP/HTTPS)、SSH、Telnet、SNMP、IPMI、虚拟串口、远程控制台等。这些服务中,很多在实际运维中根本用不到,却持续监听端口,成为潜在入口。安全基线的原则是:只保留业务必需的服务,其余一律关闭。

以HPE ProLiant Gen10/Gen11为例,通过iLO Web界面进入“管理 → 安全性 → 访问设置”,可以看到各服务的启用状态。典型加固建议如下:

  • Telnet:明文传输,必须禁用。iLO 4之后默认已关闭,但仍需确认。
  • SSH:如需命令行管理可保留,否则关闭。若保留,应限制源IP。
  • SNMP:若未接入监控系统,关闭;若使用,升级到SNMPv3并禁用v1/v2c。
  • IPMI over LAN:除非有带外管理平台依赖,否则关闭,因其历史上存在多个高危漏洞。
  • 虚拟串口/虚拟媒体:按需启用,不使用时关闭。
  • HTTP:强制跳转HTTPS或直接禁用,避免明文凭据泄露。

也可以通过iLO RESTful API或`hponcfg`工具批量下发配置。例如使用hponcfg脚本关闭Telnet和IPMI:

<RIBCL VERSION="2.0">
  <LOGIN USER_LOGIN="admin" PASSWORD="******">
    <RIB_INFO MODE="write">
      <MOD_TELNET_CFG>
        <TELNET_ENABLE VALUE="N"/>
      </MOD_TELNET_CFG>
      <MOD_IPMI_CFG>
        <IPMI_ENABLE VALUE="N"/>
      </MOD_IPMI_CFG>
    </RIB_INFO>
  </LOGIN>
</RIBCL>

执行后可通过`show /map1`或Web界面确认服务状态已变为Disabled。这一步的价值在于:每关闭一个服务,就减少一个可能被利用的协议实现漏洞。

二、修改默认端口:降低自动化扫描命中率

iLO默认使用443(HTTPS)、22(SSH)、623(IPMI)等标准端口。互联网上大量自动化扫描器专门针对这些端口进行探测,一旦发现iLO登录页,就会尝试默认凭据或已知漏洞。将管理端口改为非标准端口,虽然不能替代认证加固,但能显著降低被批量扫描命中的概率,属于“纵深防御”中的隐蔽层。

在iLO Web界面“管理 → 网络 → 服务”中,可以修改各服务的端口号。例如将HTTPS从443改为8443,SSH从22改为2222。修改后需要同步更新防火墙规则和运维文档,否则会导致管理通道中断。建议在变更窗口内操作,并保留一个已知可用的带外访问方式作为回退。

需要注意的是,端口修改只对TCP服务有效,IPMI over LAN的623端口若必须使用,应通过ACL限制源地址,而不是单纯改端口。端口变更后,验证方法是使用`nmap`从管理网段扫描,确认旧端口已关闭、新端口可访问且返回正确的iLO服务标识。

三、启用强密码策略:强化身份认证

iLO本地账户的密码策略直接决定暴力破解的难度。HPE iLO 4/5支持配置密码复杂度、最小长度、有效期和失败锁定。安全基线建议:

  • 最小长度≥12位,包含大小写字母、数字和特殊字符;
  • 禁止使用用户名、服务器型号、公司名等易猜词;
  • 密码有效期≤90天,强制更换;
  • 禁止密码重复使用最近5次;
  • 启用“密码失败锁定”,如5次失败锁定15分钟。

这些策略可在“管理 → 安全性 → 用户管理”中逐项设置。对于目录集成环境,建议将iLO接入LDAP/AD,由目录服务统一执行密码策略,iLO本地账户仅保留应急账户,并对其单独设置更严格的策略。

注意:iLO的密码策略与主机操作系统密码策略相互独立。即使主机已接入AD,iLO本地账户仍按自身策略执行。应急账户的密码应存放在密码保险库中,并定期轮换。

四、会话超时与账户锁定:控制会话生命周期

会话超时和账户锁定是防止“人走屏未锁”和“暴力破解”的两项关键设置。iLO允许配置Web界面和SSH会话的空闲超时时间,建议设置为15分钟。超过空闲时间后,会话自动注销,需要重新认证。

账户锁定策略则与密码失败次数联动。当同一账户连续认证失败达到阈值(如5次),iLO会锁定该账户一段时间(如15分钟)或直到管理员手动解锁。这能有效阻断在线暴力破解。配置路径通常在“管理 → 安全性 → 访问设置 → 账户锁定”中。

下面这张图展示了iLO安全基线四个配置项之间的逻辑关系:从攻击面收敛到认证强化,再到会话控制,形成层层递进的防护链。

iLO安全基线四层防护链 ① 禁用未使用服务 关闭 Telnet / IPMI over LAN / SNMPv1-v2c / HTTP,仅保留 HTTPS + 必要服务 攻击面收敛 ② 修改默认端口 HTTPS 443→8443,SSH 22→2222,同步更新防火墙与运维文档 隐蔽性提升 ③ 启用强密码策略 最小长度≥12位,复杂度要求,90天有效期,禁止重复最近5次 认证强化 ④ 会话超时与账户锁定 空闲超时15分钟,5次失败锁定15分钟,防止会话劫持与暴力破解 会话控制 结果:iLO管理面纵深防御基线达成

五、配置验证与常见问题

完成上述配置后,必须进行验证,否则无法确认基线是否真正生效。验证方法包括:

  • 端口扫描:使用`nmap -p 443,8443,22,2222,623 <iLO_IP>`确认旧端口关闭、新端口开放。
  • 服务状态检查:在iLO Web界面“管理 → 网络 → 服务”中逐项核对,或通过REST API `GET /redfish/v1/Managers/1/NetworkProtocol`获取当前协议状态。
  • 密码策略测试:尝试设置一个短密码,确认被拒绝;尝试连续5次错误登录,确认账户被锁定。
  • 会话超时测试:登录后静置15分钟,确认会话自动注销,刷新页面需重新认证。
建议将上述检查项整理为交付前检查表,每台服务器上架前逐项打勾,并由第二人复核。对于批量部署场景,可使用HPE OneView或iLO Amplifier Pack统一推送安全基线模板,避免逐台手工配置带来的遗漏和不一致。

最后需要强调:iLO安全基线不是一次性的工作。固件升级、人员变动、网络架构调整都可能改变服务需求,因此建议每季度复查一次iLO配置,并与当前安全基线模板比对。只有持续维护,才能让带外管理通道始终处于受控状态。