一种基于BMC专用外置接口的固件升级维护方法及系统与流程

文档序号:41577258发布日期:2025-04-08 18:37阅读:10来源:国知局
一种基于BMC专用外置接口的固件升级维护方法及系统与流程

本发明属于服务器固件升级维护,尤其涉及一种基于bmc专用外置接口的固件升级维护方法及系统。


背景技术:

1、bmc(baseboard management controller)基板管理控制器是遵循行业管理规范的带外单机管理系统,通过使用ipmi(intelligent platform management interface)智能平台管理接口通信。bmc承载着服务器远程管理、控制和故障诊断服务器的任务。bmc监视和控制系统硬件,温度、电压、风扇、电源等,并做相应的调节工作,以保证系统处于健康的状态;记录各种硬件的信息和日志记录,用于提示用户和后续问题的定位;独立的系统,由处理器、小系统、管理软件组成,可以独立工作。bmc的南向接口实现对硬件控制和监控,如附图4所示。

2、bmc对外提供北向接口和人机接口,满足各种服务器管理场景的应用和集成需求。bmc的soc(system on chip)片上系统运行bmc的系统和固件,bmc的app应用分别对应不同的服务功能,例如web管理http(hypertext transfer protocol)服务,告警监控snmp(simple network management protocol)服务,以及redfish标准的bmc接口,具体结构参见附图5所示。

3、现有服务器固件维护更新通过bmc带外网络(隔离的网络),但生产环境网络都配置有认证,bmc带外网络接入需ip地址、用户和密码(动态密码)授权,涉及变更配置,对驻场人员操作不友好,影响升级变更效率。传统固件更新流程:client电脑配置ip,接入bmc网络,通过bmc的portal访问bmc的web;本地client电脑通过网络上传固件文件到bmc空间,bmc后台程序更新服务器;完成固件更新,断开client电脑。

4、因此,本发明对现有服务器固件维护更新通过bmc带外网络的方式进行改进,通过bmc的外置接口接入安全配对的存储固件的装置,无需接入bmc带外网络,实现固件触发式更新,并且对原有的bmc网络和配置不存在干涉修改,实现硬件“即插即更新”。


技术实现思路

1、本发明的目的在于提供一种基于bmc专用外置接口的固件升级维护方法及系统,用以对现有服务器固件维护更新通过bmc带外网络的方式进行改进,通过bmc的外置接口接入安全配对的存储固件的装置,无需接入bmc带外网络,实现固件触发式更新,并且对原有的bmc网络和配置不存在干涉修改,实现硬件“即插即更新”。

2、为解决上述技术问题,本发明采用的技术方案如下:

3、一种基于bmc专用外置接口的固件升级维护方法,包括以下步骤:

4、s1:在服务器中部署外接接口装置,并通过服务器bios使能外接接口装置固件更新功能;

5、s2:服务器bmc或者集中bmc管理软件生成密钥对,所述密钥对包括公钥和私钥,将所述私钥下发给各个服务器bmc,所述公钥下载下来供制作升级存储设备;

6、s3:所述外接接口装置对所述私钥进行存储,并同时存储相应的固件;

7、s4:所述外接接口装置存入制定的固件后,将外接接口装置接入bmc的专用口;

8、s5:所述服务器bmc检查公钥和私钥配对情况,当所述公钥和所述私钥匹配成功时,触发固件自动更新升级,当固件自动更新升级完成时,移除所述外接接口装置。

9、优选的,所述外接接口装置包括usb设备或者hdmi设备或者dp设备或者thunderbolt设备。

10、优选的,步骤s2中服务器bmc或者集中bmc管理软件生成密钥对以及对密钥对进行分发的具体过程如下:

11、s21:服务器bmc或者集中bmc管理软件通过指定算法生成随机数作为密钥种子,所述密钥种子为随机生成,并且满足指定的复杂度;

12、s22:基于所述密钥种子,服务器bmc或者集中bmc管理软件生成密钥对,并将生成的密钥对存储于硬件安全模块中;

13、s23:服务器bmc或者集中bmc管理软件将生成的密钥对中的私钥分发给各个服务器bmc,将其中的所述公钥下载下来供制作升级存储设备;

14、s24:服务器bmc或者集中bmc管理软件对密钥对进行定期更新,并对密钥对进行密钥轮换操作。

15、优选的,步骤s21中通过指定算法生成随机数作为密钥种子的具体过程如下:

16、s211:初始化一个非负整数作为初始种子值;

17、s212:基于初始种子值进行递归计算获取每一个后续的随机数,所述递归计算的公式为:

18、xi+1=[(a/c)·xi+c]/modm

19、其中,m为模数,mod为取模运算,a是乘数,为m的原根或者接近m的平方根的值,c是增量,为2的指定幂次;

20、s213:按照指定顺序基于递归计算得到的一系列随机数生成输出序列,在所述输出序列中随机提取随机数作为密钥种子。

21、优选的,步骤s22中基于所述密钥种子,服务器bmc或者集中bmc管理软件生成密钥对的具体过程如下:

22、s221:服务器bmc或者集中bmc管理软件随机生成两个质数p和q,两个质数p和q大于指定数;

23、s222:将两个质数p和q相乘,得到n,并计算p-1和q-1的最小公倍数l;

24、s223:在区间(1-l)中随机选择一个数e,e满足e和l的最大公约数为1;

25、s224:通过欧几里得算法计算d,d为e的模逆元,满足e*d mod l=1;

26、s225:通过指定加密算法基于d生成密钥对。

27、优选的,步骤s5中检查公钥和私钥配对情况的具体过程如下:

28、s51:使用单向散列函数对指定信息进行计算,得到散列值,然后用所述私钥对所述散列值进行加密,得到签名值;

29、s52:使用同样的单向散列函数对原始数据进行计算,得到第一散列值;然后使用公钥对签名值进行解密,得到第二散列值;

30、s53:比较第一散列值和第二散列值,若第一散列值和第二散列值相等,则签名是真实的,即公钥和私钥配对成功,若第一散列值和第二散列值不相等,则签名无效,即即公钥和私钥配对失败。

31、第二方面,提供一种基于bmc专用外置接口的固件升级维护系统,用于实现任意一项所述的一种基于bmc专用外置接口的固件升级维护方法,包括外接接口装置、密钥对生成模块、密钥分发模块、密钥对验证模块、固件自动升级模块,所述所述外接接口装置为usb设备或者hdmi设备或者dp设备或者thunderbolt设备,所述密钥对生成模块部署于服务器bmc或者集中bmc管理软件中,与密钥分发模块连接,所述密钥分发模块与密钥对验证模块连接,所述密钥对验证模块与固件自动升级模块连接;

32、所述外接接口装置实现bmc支持外置接口固件升级;

33、所述密钥对生成模块,用于生成密钥对,所述密钥对包括公钥和私钥,将所述私钥下发给各个服务器bmc,所述公钥下载下来供制作升级存储设备;

34、所述密钥分发模块,用于将所述私钥下发给各个服务器bmc,所述公钥下载下来供制作升级存储设备;

35、所述密钥对验证模块,设置于服务器bmc中,用于检查公钥和私钥配对情况,当所述公钥和所述私钥匹配成功时,触发固件自动更新升级。

36、本发明的有益效果包括:

37、本发明提供的基于bmc专用外置接口的固件升级维护方法及系统,在服务器中部署外接接口装置,并通过服务器bios使能外接接口装置固件更新功能;服务器bmc或者集中bmc管理软件生成密钥对,密钥对包括公钥和私钥,将私钥下发给各个服务器bmc,公钥下载下来供制作升级存储设备;外接接口装置对所述私钥进行存储,并同时存储相应的固件;外接接口装置存入制定的固件后,将外接接口装置接入bmc的专用口;服务器bmc检查公钥和私钥配对情况,当公钥和所述私钥匹配成功时,触发固件自动更新升级,当固件自动更新升级完成时,移除所述外接接口装置。通过上述过程,无需接入bmc带外网络,实现固件触发式更新,并且对原有的bmc网络和配置不存在干涉修改,实现硬件即插即更新。

38、首先,通过服务器bmc或者集中bmc管理软件通过指定算法生成随机数作为密钥种子,基于密钥种子生成密钥对,并将生成的密钥对存储于硬件安全模块中;将生成的密钥对中的私钥分发给各个服务器bmc,将其中的所述公钥下载下来供制作升级存储设备;对密钥对进行定期更新,并对密钥对进行密钥轮换操作的过程,有效提升了后续的固件自动升级过程的安全性。

39、其次,通过初始化一个非负整数作为初始种子值;基于初始种子值进行递归计算获取每一个后续的随机数,按照指定顺序基于递归计算得到的一系列随机数生成输出序列,在输出序列中随机提取随机数作为密钥种子的过程,使得密钥种子具备足够的复杂度,并能够确保后续基于密钥种子生成的密钥对具备高度安全性。

40、再次,通过随机生成两个质数p和q,将两个质数p和q相乘,得到n,并计算p-1和q-1的最小公倍数l;在区间(1-l)中随机选择一个数e,e满足e和l的最大公约数为1;通过欧几里得算法计算d,d为e的模逆元,满足e*d mod l=1,指定加密算法基于d生成密钥对的过程,进步提升密钥对的安全性。

41、最后,通过使用单向散列函数对指定信息进行计算,得到散列值,然后用所述私钥对所述散列值进行加密,得到签名值;使用同样的单向散列函数对原始数据进行计算,得到第一散列值;然后使用公钥对签名值进行解密,得到第二散列值;比较第一散列值和第二散列值是否相等验证私钥和公钥的匹配,进一步确保了后续的固件自动升级过程的安全性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1