TDX机密计算环境(1) 检查TDX使能状态 在使用CSV加密计算环境前,建议您先通过以下命令检查云主机的CSV使能状态。 plaintext sudo dmesg grep i tdx 返回类似结果如下图,即表示 TDX 已经使能。 验证TDX远程证明 您可以通过在TDX 云主机中生成远程证明报告,并通过工具验证其可信性,证明云主机处于可信安全的TDX环境。天翼云为您提供多种方式,以便于您对TDX云主机进行远程证明认证。远程证明相关信息请参见远程证明服务。 1. 配置 TDX 证明服务端口 创建或修改/etc/tdxattest.conf,指定证明服务端口(示例为 4050): plaintext shecho 'port4050' sudo tee a /etc/tdxattest.conf >/dev/null 2. 安装 TDX 依赖库 1. 创建安装目录 plaintext shmkdir /opt/intel && cd /opt/intel 2. 下载并解压安装包 plaintext wget q O sgxrpmlocalrepo.tgz && tar xf sgxrpmlocalrepo.tgz 3. 添加为本地yum仓库 plaintext sudo yumconfigmanager addrepo file:///opt/intel/sgxrpmlocalrepo 4. 安装依赖库 plaintext sudo yum install y nogpgcheck libtdxattest libtdxattestdevel 3. 安装raagent 工具 检查是否已安装raagent 工具: plaintext rpm qa grep raagent 如果没有结果返回,则需要执行以下命令进行安装: plaintext wget q O raagent0.0.11.ctl4.x8664.rpm && sudo rpm ivh nodeps raagent0.0.11.ctl4.x8664.rpm 4. 在客户端本地生成随机数 plaintext head c 32 /dev/urandom base64 w 0 执行示例: 5. 收集云主机证据 执行以下命令,检查是否已安装racli 工具: plaintext rpm qa grep racli 1. 若该工具已安装,则可以继续执行以下命令: plaintext ./attestationcli evidence get attestertypes "tdx" noncetype "user" nonce " " out "evidence.txt" 2. 若该工具未安装,则需要执行以下命令获取证据: plaintext curl X POST H "ContentType: application/json" d '{ "attesters": [{ "attestertype": "tdx" }], "noncetype": "user", "nonce": " ", "attesterdata": {"testkey": "testvalue"} }' > evidence.txt 6. 在客户端本地将证据发送给天翼云远程证明服务进行校验,通过++OpenAPI调用接口++,参数填入evidence.txt的内容即可。 如果证据是伪造的,则会得到类似下面的结果: 如果证据是由硬件正确签名的,则会返回类似下面的结果: 其中包含一个token字段,将token字段后面的值放入< 针对报告的解析内容,您需要关注以下字段: 字段名称 字段说明 mrseam 验证TDX 虚拟化模块完整性;应与 Intel 发布的已知安全版本哈希一致 mrtd workload 镜像(内核+rootfs)的完整性;应与预期可信值比对一致 rtmr0 验证UEFI 固件完整性;应与预期固件度量值一致 rtmr1 验证bootloader 和内核启动参数完整性;应与预期固件度量值一致 rtmr2 验证OS 内核完整性;结合 IMA 日志可验证用户态程序 tddebug TD 调试模式开关,必须为 false。若 true ,调试器可直接读写 TD 内存(TDCALL TDG.MEM.PAGE.ATTR.RD 等操作被允许) tdseptvedisable Sept VE(SecureEPT Virtualization Exception)禁用标志。若true ,TD 访问未映射内存页会直接
来自: