1

何为BMC

BMC全称为基板管理控制器(Baseboard Management Controller),是用于监控和管理服务器的专用控制器,主要4个功能如下:

设备信息管理:记录服务器信息(型号、制造商、日期、各部件生产和技术信息、机箱信息、主板信息等)、BMC信息(服务器主机名、IP、BMC固件版本等信息);

服务器状态监控管理:对服务器各个部件(CPU、内存、硬盘、风扇、机框等)的温度、电压等健康状态进行检测,同时根据各个温度采集点情况实时调整风扇转速保证服务器不产生过温、而且控制总体功耗又不能过高;如果单板部件出现任何异常则通过SNMP协议、SMTP协议、Redfish协议等多种业界通用规范将信息及时上报给上层网管;

服务器的远程控制管理:服务器的开关机、重启、维护、固件更新、系统安装等;

维护管理:日志管理、用户管理、BIOS管理、告警管理等。

BMC是一款服务器接通电源起始即运行的软件,运行在服务器上一款单独的ARM芯片上,这个ARM芯片就是BMC软件的CPU,同时会芯片外围会配置自己的RAM、Flash等器件,只要服务器插上电源线,BMC软件便快速运行起来。BMC是一个独立的系统,它不依赖与系统上的其它硬件(比如CPU、内存等),也不依赖与BIOS、OS等,但是BMC可以与BIOS和OS交互,这样可以起到更好的平台管理作用,OS下有系统管理软件可以与BMC协同工作以达到更好的管理效果。所以可以看出来:

  • BMC是一个独立于服务器系统的小型操作系统。作用是实施服务器远程控制管理、监控等功能。

  • BMC是集成在主板上或者通过PCIE等各种形式插在主板上的一个芯片,对外表现形式只是一个标准的RJ45网口,拥有独立的IP。

2

BMC的架构

BMC分为BMC芯片和BMC固件两部分

  • BMC芯片是集成在主板上的芯片或以PCIE等形式插在主板上的一个器件。

  • BMC固件(firmware)是运行在BMC芯片上的软件程序。

全球第一大服务器BMC芯片供应商-台湾Aspeed公司于2019年推出针对服务器的AST2000系列产品中最新一代的BMC芯片AST2600。AST2600与广泛使用的上一代AST2500的比较如下图所示。可以看出来,BMC芯片包括ARM核心芯片和DDR内存。AST2600芯片中有两个Arm Cortex A7主核心,一个Arm Cortex M3嵌入式核心,采用28nm工艺制程,有助于减少芯片功耗,2GB DDR4内存容量也有助于安全管控功能的实施。AST2600芯片可以对外提供4个1GbE以太网口,相比AST2500多增加了3个。这将可以使得带外管理(Out-of-Band)、低速管理控制等网口都直接从AST2600 BMC芯片上引出,不用再占据南桥(PCH)芯片的资源,从而留出更多的高速数据平面的资源。

下图服务器主板的左下角位置,就是Aspeed公司的AST2600芯片。

下图是BMC在服务器上的功能实现框架图

3

BMC的规范和标准

  • 国际规范:

BMC支持行业标准的 IPMI 规范。IPMI 是独立于主机系统 CPU、BIOS/UEFI 和 OS 之外,可独立运行的板上部件,其核心部件即为 BMC。IPMI是一组交互标准管理规范由 Intel、HP、Dell 和 NEC 公司于1998年9月16日共同提出,主要用于服务器系统集群自治,监视服务器的物理健康特征,如温度、电压、风扇工作状态、电源状态等同时,IPMI 还负责记录各种硬件的信息和日志记录,用于提示用户和后续问题的定位。目前IPMI 已经为超过 200 多家计算机供应商所支持。该规范描述了已经内置到主板上的管理功能。这些功能包括:本地和远程诊断、控制台支持、配置管理、硬件管理和故障排除。IPMI逻辑图如下图:

BMC管理子系统基于智能带外管理接口(IPMI)已从1.0版本升级至2.0版本,增强了网络传输中的安全与加密功能。此外,基于Web的用户界面(Web UI),远程桌面显示和操控界面(KVM)和虚拟介质(Virtual Media)等技术的出现大大加强了服务器的远程监控和部署管理的易用性和灵活性。

  • 国内规范:

中国电子学会于2020年4月30日组织召开《服务器基板管理控制器(BMC)带外管理功能和性能要求》中国电子学会的团体标准启动会及提纲讨论会,正式启动该项标准的研制工作。7月10日,公开征求意见稿。

4

BMC芯片/固件厂商

下图为BIOS/BMC产业链。

卓易信息,BIOS X86 中国大陆地区独此一家。公司成立于 2008 年,其全资子公司百敖是全球第四家获得 Intel X86 架构授权的 BIOS/BMC 厂商也是中国大陆地区唯一掌握X86架构、为数不多掌握ARM、MIPS架构的 BIOS/BMC 固件开发技术的厂商。下图是卓易信息公司的公告,显示其产品、项目和客户代表。卓易信息公司还陆续承担了华为海思ARM和X86服务器芯片、上海澜起科技的津逮平台、海光禅定芯片的BIOS和BMC固件开发工作。目前每台X86架构服务器的BMC固件价格为200-300元人民币。

5

BMC的安全

BMC的安全包括漏洞安全和自主可控安全两方面。

  • BMC的漏洞安全

服务器作为支撑当前互联网各种应用的“幕后英雄”,主要为各种应用提供存储和计算作用。然而,这一“幕后英雄”却天然存在漏洞。首先,服务器的一大漏洞来源是BIOS。BIOS是服务器启动时加载的第一个软件,当计算机开机时将被最先加载。即使服务器被感染,被感染的服务器仍然能正常工作,因此防病毒软件和其他安全软件无法探测到恶意软件。

其次,服务器的另一个隐患在于BMC。BMC是一个独立的系统,它不依赖与系统上的其它硬件(比如CPU、内存等),也不依赖与BIOS、OS等。它在大约20年前出现至今,对于服务器系统的远程部署和管理起到了至关重要的作用。正因为如此,BMC比主机服务器享有更大的权限。BMC可以持续访问主机服务器的文件、内存(使用DMA)、键盘/显示器和固件(这是必需的,因为它需要能够重新安装/重新配置)。

此外,BMC能够将数据发送到外部网络,甚至可能重新配置主机服务器网络接口。这为攻击者提供了偷偷全面控制受害者系统所需要的全部工具。当服务器出现漏洞,我们的各种数据会丢失,电脑无法正常工作,这将危害到我们生活和工作的方方面面。

2019年11月,芯片巨头 Intel 发布警告称,Intel Server 产品中的基板管理控制器 (BMC) 固件存在13个漏洞,其中包含一个可导致信息泄露或攻击者提权的严重漏洞。

  • BMC的自主可控安全

在全球已部署的服务器中,绝大部分都配备了BMC芯片,用于对服务器进行状态监控和远程管理。虽然BMC如此重要,但是,国内服务器主要使用的是台湾Aspeed公司的BMC芯片,而其BMC固件一般采用的是美国AMI公司的产品

台湾Aspeed公司(信骅技术)成立于2004年,是一家总部为位于台湾新竹的IC设计公司。Aspeed在2016年收购了Boardcom旗下的Emulex Pilot远程服务器管理芯片业务,目前为全球第一大服务器BMC芯片供应商,几乎占据了85%以上的市场份额

AMI(安迈)公司成立于1985年,总部位于美国,目前是世界上最大的BIOS固件供应商。AMI的MegaRAC系列BMC远程管理固件解决方案被广泛的应用于Aspeed系列BMC芯片中。

“AMI的MegaRAC系列BMC远程管理固件解决方案被广泛的应用于Aspeed系列BMC芯片中”。据Gartner公布的2019年第三季度全球服务器市场报告显示,预计2019年全年全球服务器出货量约为1200万台;中国市场2019年全年服务器出货量约为360万台。倘若这么多的服务器都采用了基于美国企业的BMC,那想要真正掌握服务器主动权几乎是不可能的。

6

国产BMC

服务器内部的先天安全缺陷主要就来源于BIOS与BMC,保证两个方面的安全,则可以最大限度杜绝最基础的安全隐患。这需要服务器厂商自己有更高的自我要求与自主的技术实现能力,以杜绝外界通用部件以及国外组件可能存在的安全隐患。

据统计,国内服务器厂商主要包括:浪潮、曙光、联想等,他们绝大多数的服务器产品都在使用Aspeed BMC芯片+AMI BMC固件的组合来对服务器进行状态监控和远程控制。为了使国产服务器真正可控,国内不少企业在这一领域进行深入研发,并研发出来可替代基于国产BMC固件的产品。

随着自主可控服务器的不断发展,国内各大服务器厂商也在其国产服务器产品中使用Aspeed BMC芯片+中电科技的昆仑BMC固件的解决方案,目前已有多款服务器产品量产出货。此外,华为也在其服务器上使用自研自用的华为BMC芯片+华为BMC固件,消除了BMC安全隐患。除了实现BMC固件自主,国内的龙芯、飞腾、申威和CETC32所等芯片厂商也已经开始研究设计BMC芯片,用来取代Aspeed的BMC芯片产品,预计2021年会有相应芯片产品面世。

据悉,中电科技已经将其昆仑BMC固件成功的运行在了龙芯1A处理器芯片上,大部分BMC功能已在龙芯1A的平台上得到实现。预计中电科技将在2021年推出基于国产专用BMC芯片的昆仑BMC产品,真正实现对国外BMC产品的完整替代。届时,有希望真正掌握国产服务器的“命门”。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐