IPMI 与 BMC 远程管理:从原理到实操完整指南
什么是 BMC?
BMC(Baseboard Management Controller,基板管理控制器)是焊接在服务器主板上的一块独立微控制器。与普通业务芯片不同,它有三个核心特点:
- 独立电源:只要机房供电,BMC 就在线,即使服务器处于关机状态
- 独立网口:通常是主板背面单独标注 “IPMI” 或 “MGMT” 的 RJ45 口
- 独立固件:运行自己的 RTOS(实时操作系统),不依赖主机 OS
物理层示意:
┌─────────────────────────────────────┐
│ 服务器主板 │
│ │
│ ┌──────────┐ ┌──────────────┐ │
│ │ 主 CPU │ KCS │ BMC 芯片 │ │
│ │ (Xeon/ │◄───►│ (ASPEED │ │
│ │ EPYC) │ │ AST2600) │ │
│ └──────────┘ └──────┬───────┘ │
│ │ │
└──────────────────────────┼──────────┘
│ 独立网口
[管理网络 / OOB VLAN]
IPMI 协议架构
IPMI(Intelligent Platform Management Interface)由 Intel、HP、Dell、NEC 联合制定,目前主流版本是 IPMI 2.0。
通信通道
| 通道类型 | 接口名称 | 使用场景 |
|---|---|---|
| 本地通道 | KCS(Keyboard Controller Style) | 主机 OS 内访问 BMC |
| 本地通道 | SMIC / BT | 较旧硬件 |
| 远程通道 | LAN(RMCP+) | 网络远程管理 |
| 串口 | Serial over LAN(SOL) | 远程串口控制台 |
IPMI 2.0 的安全改进
相比 1.5 版本,IPMI 2.0 主要增加了:
- RAKP 认证:基于 HMAC 的挑战-响应认证
- 加密支持:AES-CBC-128 加密 payload
- 权限分级:Callback / User / Operator / Administrator 四级
ipmitool 实战命令
视频 09:30 处有完整演示,以下是核心命令速查。
安装
# RHEL / CentOS / Rocky Linux
sudo dnf install ipmitool
# Ubuntu / Debian
sudo apt install ipmitool
# 加载内核模块(本地访问需要)
sudo modprobe ipmi_devintf ipmi_si
常用命令
# 查询机箱状态
ipmitool -I lanplus -H 192.168.100.10 -U admin -P yourpassword chassis status
# 远程重启
ipmitool -I lanplus -H 192.168.100.10 -U admin -P yourpassword chassis power reset
# 强制关机(等效于长按电源键)
ipmitool -I lanplus -H 192.168.100.10 -U admin -P yourpassword chassis power off
# 查看系统事件日志(SEL)
ipmitool -I lanplus -H 192.168.100.10 -U admin -P yourpassword sel list
# 查看传感器数据(温度、风扇转速、电压)
ipmitool -I lanplus -H 192.168.100.10 -U admin -P yourpassword sdr
# 远程挂载 ISO(虚拟媒体,不同厂商命令有差异)
ipmitool -I lanplus -H 192.168.100.10 -U admin -P yourpassword sol activate
iDRAC vs iLO vs 原生 IPMI
各大厂商在 IPMI 标准之上构建了自己的私有扩展:
| 特性 | 原生 IPMI | Dell iDRAC 9 | HPE iLO 6 |
|---|---|---|---|
| Web 界面 | 基础 | 完整 HTML5 | 完整 HTML5 |
| 虚拟控制台 | 需插件 | 浏览器直连 | 浏览器直连 |
| 远程 ISO 挂载 | 受限 | 支持(iDRAC Enterprise) | 支持 |
| Redfish API | 不支持 | 支持 | 支持 |
| 授权费用 | 免费 | 分级授权 | 分级授权 |
Redfish 是新一代服务器管理 API 标准(RESTful JSON),正在逐步替代 IPMI,生产环境新采购服务器建议优先用 Redfish。
安全配置建议
BMC 安全是数据中心中最容易被忽视的攻击面:
- 物理隔离网络:BMC 网口必须接入独立的 OOB VLAN,不能与业务网络共用
- 修改默认密码:出厂密码(如
admin/admin)必须立即更改为强密码 - 禁用不用的协议:关闭 Telnet、HTTP(只保留 HTTPS),关闭不需要的 IPMI cipher suite
- 固件保持更新:BMC 固件漏洞(如 iDRAC 历史上的多个 CVE)风险极高
- 访问审计:开启 BMC 登录日志,接入 SIEM 监控
# 检查当前开启的 cipher suite(不安全的 cipher 0 应当禁用)
ipmitool -I lanplus -H <BMC_IP> -U admin -P pass channel getciphers ipmi