dellemc.openmanage.idrac_secure_boot 模块 – 配置属性、导入或导出安全启动证书以及重置密钥。

注意

此模块是 dellemc.openmanage 集合 (版本 9.9.0) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install dellemc.openmanage。您需要其他要求才能使用此模块,请参阅 需求 获取详细信息。

要在playbook中使用它,请指定: dellemc.openmanage.idrac_secure_boot

dellemc.openmanage 9.6.0中的新增功能

概要

  • 此模块允许您执行以下操作。

  • 导入或导出安全启动证书。

  • 启用或禁用安全启动模式。

  • 配置平台密钥 (PK) 和密钥交换密钥 (KEK) 策略

  • 配置允许数据库 (DB) 和不允许数据库 (DBX) 证书。

  • 重置UEFI安全启动密钥。

需求

执行此模块的主机需要以下需求。

  • python >= 3.9.6

参数

参数

注释

boot_mode

字符串

iDRAC的启动模式。

Uefi 在UEFI模式下启用安全启动。

Bios 在BIOS模式下启用安全启动。

选项

  • "Uefi"

  • "Bios"

ca_path

路径

在 dellemc.openmanage 5.0.0 中添加

包含用于验证的CA证书的隐私增强邮件 (PEM) 文件。

database

列表 / 元素=路径

UEFI安全启动的允许数据库(DB)证书文件的绝对路径列表。

export_certificatestrue时,具有写入权限的目录路径。

disallow_database

列表 / 元素=路径

UEFI安全启动的禁止数据库(DBX)证书文件的绝对路径列表。

export_certificatestrue时,具有写入权限的目录路径。

export_certificates

布尔值

将所有可用证书导出到指定目录中,用于给定的密钥。

export_cetificatesimport互斥。

如果export_cetificatestrue,则需要platform_keykey_exchange_keydatabasedisallow_database中的一个。

选项

  • false

  • true

force_int_10

字符串

确定系统BIOS是否从视频控制器加载旧版视频 (INT 10h) 选项ROM。

此参数仅在UEFI启动模式下受支持。如果启用了UEFI安全启动模式,则无法启用此参数。

Disabled 如果操作系统支持UEFI视频输出标准。

Enabled 如果操作系统不支持UEFI视频输出标准。

选项

  • "Disabled"

  • "Enabled"

idrac_ip

字符串 / 必需

iDRAC IP地址。

idrac_password

别名:idrac_pwd

字符串

iDRAC用户密码。

如果没有提供密码,则使用环境变量IDRAC_PASSWORD

示例:export IDRAC_PASSWORD=password

idrac_port

整数

iDRAC端口。

默认值: 443

idrac_user

字符串

iDRAC用户名。

如果没有提供用户名,则使用环境变量IDRAC_USERNAME

示例:export IDRAC_USERNAME=username

import_certificates

布尔值

导入所有指定的密钥证书。

import_certificatestrue时,需要platform_keyKEKdatabasedisallow_database中的一个。

选项

  • false

  • true

job_wait

布尔值

是否等待安全启动证书操作完成。这适用于restarttrue的情况。

选项

  • false

  • true ← (默认)

job_wait_timeout

整数

job_wait的最大等待时间(秒)。仅在此持续时间内跟踪作业。

此选项适用于job_waittrue的情况。

默认值: 1200

KEK

列表 / 元素=路径

UEFI安全启动的密钥交换密钥 (KEK) 证书文件的绝对路径列表。

export_certificatestrue时,具有写入权限的目录路径。

platform_key

路径

UEFI安全启动的平台密钥证书文件的绝对路径。

export_certificatestrue时,具有写入权限的目录路径。

reset_keys

字符串

重置UEFI安全启动密钥。

DeleteAllKeys 删除所有UEFI安全启动密钥数据库(PK、KEK、DB和DBX)的内容。此选项将系统配置为设置模式。

DeletePK 删除PK UEFI安全启动数据库的内容。此选项将系统配置为设置模式。

ResetAllKeysToDefault 将所有UEFI安全启动密钥数据库(PK、KEK、DB和DBX)的内容重置为其默认值。

ResetDB 将DB UEFI安全启动数据库的内容重置为其默认值。

ResetDBX 将DBX UEFI安全启动数据库的内容重置为其默认值。

ResetKEK 将KEK UEFI安全启动数据库的内容重置为其默认值。

ResetPK 将PK UEFI安全启动数据库的内容重置为其默认值。

选项

  • "DeleteAllKeys"

  • "DeletePK"

  • "ResetAllKeysToDefault"

  • "ResetDB"

  • "ResetDBX"

  • "ResetKEK"

  • "ResetPK"

restart

布尔值

安全启动证书导入操作需要服务器重启。此参数提供重启服务器的选项。

true 重启服务器。

false 不重启服务器。

import_certificatestrue 时,restart 可用。

只有当export_certificatestrue 时,restart 才会被忽略。

选项

  • false ← (默认)

  • true

restart_type

字符串

服务器的重启类型。

ForceRestart 强制重启服务器。

GracefulRestart 优雅重启服务器。

restarttrue 时,restart_type 可用。

选项

  • "GracefulRestart" ← (默认)

  • "ForceRestart"

secure_boot

字符串

UEFI 安全启动。

只有当boot_modeUEFIforce_int_10Disabled 时,secure_boot 才能为 Enabled

Disabled 禁用安全启动模式。

Enabled 启用安全启动模式。

选项

  • "Disabled"

  • "Enabled"

secure_boot_mode

字符串

UEFI 安全启动模式配置如何使用安全启动策略。

AuditMode 当系统未安装平台密钥时,将安全启动模式设置为审核模式。BIOS 不会对策略对象的更新进行身份验证,也不会在模式之间进行转换。BIOS 对预启动映像执行签名验证,并将结果记录在映像执行信息表中,无论验证状态是通过还是失败,它都会处理映像。

DeployedMode 当系统上安装了平台密钥时,将安全启动模式设置为已部署模式,然后 BIOS 执行签名验证以更新策略对象。

UserMode 当系统上安装了平台密钥时,将安全启动模式设置为用户模式,然后 BIOS 执行签名验证以更新策略对象。

选项

  • "AuditMode"

  • "DeployedMode"

  • "UserMode"

secure_boot_policy

字符串

以下是安全启动策略的类型。

Custom 继承系统默认加载的标准证书和映像摘要。您可以修改证书和映像摘要。

Standard 表示系统具有从工厂加载的默认证书、映像摘要或哈希值。

当安全启动策略设置为自定义时,您可以执行以下操作,例如查看、导出、导入、删除、全部删除和重置策略。

选项

  • "Custom"

  • "Standard"

timeout

整数

在 dellemc.openmanage 5.0.0 中添加

以秒为单位的套接字级别超时。

默认: 30

validate_certs

布尔值

在 dellemc.openmanage 5.0.0 中添加

如果为 false,则不会验证 SSL 证书。

仅在使用自签名证书的个人控制站点上配置 false

在集合版本 5.0.0 之前,validate_certs 默认值为 false

选项

  • false

  • true ← (默认)

x_auth_token

字符串

在 dellemc.openmanage 9.3.0 中添加

身份验证令牌。

如果未提供 x_auth_token,则使用环境变量 IDRAC_X_AUTH_TOKEN

示例:export IDRAC_X_AUTH_TOKEN=x_auth_token

属性

属性

支持

描述

check_mode

支持:完全支持

运行任务以验证,无需对目标机器执行操作。

diff_mode

支持:不支持

运行任务以报告已进行或将要进行的更改。

备注

注意

  • check mode 下运行时,此模块将始终报告发现要应用于 import_certificates 的更改。

  • 当提供 reset_typeexport_certificatesimport_certificates 时,此模块不支持幂等性。

  • 要配置安全启动设置,idrac_secure_boot 模块按以下顺序执行操作:设置属性、导出证书、重置密钥、导入证书和重启 iDRAC。

  • export_certificate 将导出剧本中定义的密钥的所有证书。

  • 此模块仅针对序列中的最后一次操作考虑 restartjob_wait 的值。

  • 此模块支持 IPv4 和 IPv6 地址。

  • 只有 reset_keys 在 iDRAC8 上受支持。

示例

---
- name: Enable Secure Boot.
  dellemc.openmanage.idrac_secure_boot:
    idrac_ip: "192.168.1.2"
    idrac_user: "user"
    idrac_password: "password"
    ca_path: "/path/to/ca_cert.pem"
    secure_boot: "Enabled"

- name: Set Secure Boot mode, Secure Boot policy, and restart iDRAC.
  dellemc.openmanage.idrac_secure_boot:
    idrac_ip: "192.168.1.2"
    idrac_user: "user"
    idrac_password: "password"
    ca_path: "/path/to/ca_cert.pem"
    secure_boot: "Enabled"
    secure_boot_mode: "UserMode"
    secure_boot_policy: "Custom"
    restart: true
    restart_type: "GracefulRestart"

- name: Reset Secure Boot certificates.
  dellemc.openmanage.idrac_secure_boot:
    idrac_ip: "192.168.1.2"
    idrac_user: "user"
    idrac_password: "password"
    ca_path: "/path/to/ca_cert.pem"
    reset_keys: "ResetAllKeysToDefault"

- name: Export multiple Secure Boot certificate.
  dellemc.openmanage.idrac_secure_boot:
    idrac_ip: "192.168.1.2"
    idrac_user: "user"
    idrac_password: "password"
    ca_path: "/path/to/ca_cert.pem"
    export_certificates: true
    platform_key: /user/name/export_cert/pk
    KEK:
      - /user/name/export_cert/kek
    database:
      - /user/name/export_cert/db
    disallow_database:
      - /user/name/export_cert/dbx

- name: Import multiple Secure Boot certificate without applying to iDRAC.
  dellemc.openmanage.idrac_secure_boot:
    idrac_ip: "192.168.1.2"
    idrac_user: "user"
    idrac_password: "password"
    ca_path: "/path/to/ca_cert.pem"
    import_certificates: true
    platform_key: /user/name/certificates/pk.pem
    KEK:
      - /user/name/certificates/kek1.pem
      - /user/name/certificates/kek2.pem
    database:
      - /user/name/certificates/db1.pem
      - /user/name/certificates/db2.pem
    disallow_database:
      - /user/name/certificates/dbx1.pem
      - /user/name/certificates/dbx2.pem

- name: Import a Secure Boot certificate and restart the server to apply it.
  dellemc.openmanage.idrac_secure_boot:
    idrac_ip: "192.168.1.2"
    idrac_user: "user"
    idrac_password: "password"
    ca_path: "/path/to/ca_cert.pem"
    import_certificates: true
    platform_key: /user/name/certificates/pk.pem
    restart: true
    job_wait_timeout: 600

返回值

常见的返回值已记录在此处,以下是此模块特有的字段

描述

error_info

字典

HTTP 错误的详细信息。

返回:HTTP 错误时

示例: {"error": {"@Message.ExtendedInfo": [{"Message": "Unable to process the request because an error occurred.", "MessageArgs": [], "MessageId": "GEN1234", "RelatedProperties": [], "Resolution": "Retry the operation. If the issue persists, contact your system administrator.", "Severity": "Critical"}], "code": "Base.1.0.GeneralError", "message": "A general error has occurred. See ExtendedInfo for more information."}}

msg

字符串

安全启动操作的状态。

返回:始终

示例: "Successfully imported the SecureBoot certificate."

作者

  • Abhishek Sinha(@ABHISHEK-SINHA10)

  • Lovepreet Singh (@singh-lovepreet1)