[发明专利]一种基于BMC的服务器硬件可信性保护方法及装置有效
申请号: | 201711436623.3 | 申请日: | 2017-12-26 |
公开(公告)号: | CN108171088B | 公开(公告)日: | 2021-12-03 |
发明(设计)人: | 余发江;胡九鼎;张焕国 | 申请(专利权)人: | 武汉大学 |
主分类号: | G06F21/79 | 分类号: | G06F21/79;G06F21/73 |
代理公司: | 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 | 代理人: | 鲁力 |
地址: | 430072 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 bmc 服务器 硬件 可信性 保护 方法 装置 | ||
1.一种基于BMC的服务器硬件可信性保护方法,其特征在于,其步骤包括:
步骤1:进行可信硬件部件基准值设定,对基准值进行加密处理,再将其写入服务器FRU里可供使用的记录区域,具体是:从输入中获得可信的相关服务器硬件部件的基准值,根据FRU数据规范,加密、存储基准值,存储操作需获得授权,具体包括:
步骤1.1、输入服务器BMC用户口令,从预先存储好的文件中读取服务器硬件部件的可信基准值;对可信基准值进行加密、处理,在每条加了密的可信基准值之间添加分隔符,并在不同部件的加了密的可信基准值开始和结束部分添加起始符和结束符,用于区分不同部件的可信基准值;标识符格式可按需求自行定义;最后,将处理后的数据组织成FRU规范格式;
步骤1.2、使用IPMItool工具调用IPMI命令将处理后的可信基准值写入服务器FRU里可供使用的记录区域,完成FRU写操作;
步骤2:进行硬件部件可信性度量,通过BMC获取服务器目标硬件部件信息,解析、提取所需目标字段,所述硬件部件信息是字节数据流,解析、提取字段;
步骤3:先从FRU中读取加密的基准值,再执行解密操作,然后完成硬件可信性验证,判断所获取的部件信息与基准值是否匹配,若不匹配,则服务器硬件不可信,进行关机操作,反之,即为可信,服务器继续运行,具体是:
先运行基准值设定模块,输入服务器BMC用户口令,从预先存储好的文件中读取服务器硬件部件的可信基准值;可信基准值的输入从文件中获取或者由管理员通过图形界面手动输入;可信基准值设定信息包括服务器CPU和内存模块信息;CPU信息包括产品制造商、产品型号、主频三个字段,内存模块信息包括产品制造商、产品型号两个字段;CPU和内存模块信息分别存储在两个文本文件中,每一行存储一条可信基准信息,每条可信基准信息由各字段内容拼接而成,各字段内容之间用加号连接;同一个部件具有多个可信基准值,即同一个部件具有多条可信基准信息;
接着,对可信基准值加密,加密算法是SM4、AES、3DES;加密处理,是对每一条可信基准信息进行独立加密,在加密之前先对可信基准信息进行补齐填充,与加密块长度保持一致;参照Intel的Platform Management FRU Information Storage Definition v1.0规范,将加了密的可信基准值信息写入到FRU的多记录区域,多记录区域中的每个记录包括一个头部和一个数据段,数据段的长度由头部中一个字节表示,数据段最大长度为255字节,每条记录的数据段中存储有多条加了密的基准值信息;在第一条加了密的CPU基准值信息的前面增加一个“cpuinfo”标识符,在最后一条加了密的CPU基准值信息的后面增加一个“cpuend”标识符;在第一条加了密的内存模块基准值信息的前面增加一个“dimminfo”标识符,在最后一条加了密的内存模块基准值信息的后面增加一个“dimmend”标识符;在两条加了密的基准值信息之间加入一个分号分隔符;将标识符和分隔符连同加了密的基准值信息,一起写入到FRU的多记录区域的记录数据段中;除多记录区域外,FRU还包括头部、主板信息区域和产品信息区域;将加了密的基准值信息写入到多记录区域后,还必须修改头部中多记录区域的标志位,表明已使用了多记录区域,其中的校验和也需重新计算再写入;
使用IPMItool工具调用IPMI命令来完成FRU写操作;IPMItool FRU操作命令基本格式如下:ipmitool–I interface options fru command;interface是open、lan或lanplus,如果使用open,则不包括options这个参数;否则options为-H ipaddress-U username-Ppassword;command为write、read、edit、print;先通过读命令读取设定之前的FRU数据,然后修改所读出的二进制文件,包括FRU头部和多记录区域,接着将修改后的二进制文件写入到FRU中;使用的是读写命令,读命令command参数格式如下:readfru idfru file;写命令comman参数格式如下:fru writefru idfru file;
具体使用的读命令为:ipmitool -I lanplus -H ip -U username -P password fruread 0/root/fru.bin;具体使用的写命令为:ipmitool -I lanplus -H ip -U username-P password fru write 0/root/fru.bin;
在可信基准值信息被写入到FRU后,运行度量模块,通过BMC访问SystemManagementBIOS信息,获取服务器当前硬件部件的各种信息;返回的内容是字节流数据,根据SystemManagement BIOSReference v 3.1.0规范解析、提取CPU和内存模块信息;
使用IPMItool调用IPMI raw命令,通过BMC访问SMBIOS来获取硬件部件信息;IPMItoolraw command命令的基本格式如下:ipmitool–I interface options raw netfn cmddata;interface能够是open、lan或lanplus;如果使用open,则不包括options这个参数;否则options为-H ipaddress-U username-P password;netfn识别不同IPMI命令的返回消息并将其分成不同的组;cmd为一个独特的单字节指令;如果存在data,则data为请求或响应提供附加参数;
读取服务器CPU信息和内存模块信息其中一条具体命令格式为:ipmitool-I lanplus-H ip -U username -P password raw 0x3e 0x23 0x01 0xff 0x00 0x00,其中netfn=0x3e,cmd=0x23,data=0x01 0xff 0xff 0x00,在data请求参数中,能够带四个字节参数,第一个字节是数据区域,01h代表SMBIOS区域,第二个字节代表所读数据长度,0xff表示长度为255字节,第三个字节和第四个字节是偏移量;通过调整偏移量,能够读取所有SMBIOS内容;
上述命令访问SMBIOS返回的数据是字节流格式的,对其解析过程参照SystemManagement BIOSReference v 3.1.0规范,每个SMBIOS的结构包括SMBIOS结构头、指定类型的结构头、指定类型信息数据段三个部分;其中SMBIOS结构头总长度为四个字节,第一个字节指明该SMBIOS的结构后两个部分数据的类型该字节值为4时,代表后面两部分为CPU信息,该字节值为17时,代表后面两部分为内存模块信息;第二个字节表示SMBIOS结构头和指定类型的结构头的总长度,从类型字段开始;第三字节和第四字节表示指定类型数据的处理编号;指定类型的结构头部分是由SMBIOS结构头中的第一个字节的值决定的;指定类型信息数据段部分存储SMBIOS结构头中的第一个字节代表的模块的信息内容,目标部件信息字段就存储在该区域,通过编写脚本,过滤不规则、无关的信息,提取目标信息;
在度量模块获取了服务器当前部件的信息之后,运行验证模块;验证模块从FRU多记录区域读取加了密的部件可信基准值;根据标识符“cpuinfo”、“cpuend”、“dimminfo”和“dimmend”,将CPU基准信息和内存模块基准信息分开,再根据分隔符或分号将标准值条分开,接着按条解密,并去掉补齐的填充字节;然后与度量模块提取的部件信息相比较;如果相同,则验证成功,服务器硬件可信,服务器继续运行;反之,则不可信,验证模块调用BMC接口,对服务器进行关机操作;
通过使用IPMItool工具调用IPMI命令,对服务器进行关机操作,使用的具体命令为:ipmitool-I lanplus-H ip-U username-P password chassis power off。
2.一种采用权利要求1所述基于BMC的服务器硬件可信性保护方法的装置,其特征在于,包括:
基准值设定模块:被配置为用于进行可信硬件部件基准值设定,对基准值进行加密处理,再将其写入服务器FRU里可供使用的记录区域,具体是:从输入中获得可信的相关服务器硬件部件的基准值,根据FRU数据规范,加密、存储基准值,存储操作需获得授权;
度量模块:被配置为用于进行硬件部件可信性度量,通过BMC获取服务器目标硬件部件信息,解析、提取所需目标字段,所述硬件部件信息是字节数据流,解析、提取字段;
验证模块:被配置为先从FRU中读取加密的基准值,再执行解密操作,然后完成硬件可信性验证,判断所获取的部件信息与基准值是否匹配,若不匹配,则服务器硬件不可信,进行关机操作,反之,即为可信,服务器继续运行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711436623.3/1.html,转载请声明来源钻瓜专利网。