28.5. 在 Ansible 中使用一次性密码方法来安装 IdM 客户端


您可以为 RHEL Identity Management (IdM)中的新主机生成一次性密码(OTP),并使用它来将系统注册到 IdM 域中。此流程描述了在一台 IdM 主机上为其生成一个 OTP 后,如何使用 Ansible 来安装 IdM 客户端。

如果机构中存在具有不同特权的两个系统管理员,则这个安装 IdM 客户端的方法非常方便:

  • 一个有 IdM 管理员凭证。
  • 另一个有所需的 Ansible 凭证,包括对要成为 IdM 客户端的主机的 root 访问权限。

IdM 管理员执行流程的第一部分,其中 OTP 密码已生成。Ansible 管理员执行流程的剩余部分,其中 OTP 用于安装 IdM 客户端。

先决条件

  • 您有 IdM admin 凭证或至少 Host Enrollment 特权以及在 IdM 中添加 DNS 记录的权限。
  • 您已在 Ansible 受管节点上配置了一个用户升级方法,以允许您安装 IdM 客户端。
  • 如果您的 Ansible 控制节点在 RHEL 8.7 或更早版本上运行,则您必须能够在 Ansible 控制节点上安装软件包。
  • 您已配置了 Ansible 控制节点以满足以下要求:

    • 您在使用 Ansible 版本 2.15 或更高版本。
    • 已安装 freeipa.ansible_freeipa 集合。
    • 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个具有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件
    • 示例假定 secret.yml Ansible vault 存储了您的 ipaadmin_password,并且您可以访问存储了保护 secret.yml 文件的密码的文件。
  • 目标节点(这是执行 freeipa.ansible_freeipa 模块的节点)是作为 IdM 客户端、服务器或副本的 IdM 域的一部分。
  • 受管节点是一个具有静态 IP 地址和可正常工作的软件包管理器的 Red Hat Enterprise Linux 10 系统。

流程

  1. 以具有 Host Enrollment 特权和添加 DNS 记录权限的 IdM 用户的身份 SSH 到 IdM 主机:

    $ ssh admin@server.idm.example.com
    Copy to Clipboard Toggle word wrap
  2. 为新客户端生成一个 OTP:

    [admin@server ~]$ ipa host-add client.idm.example.com --ip-address=172.25.250.11 --random
     --------------------------------------------------
     Added host "client.idm.example.com"
     --------------------------------------------------
      Host name: client.idm.example.com
      Random password: W5YpARl=7M.n
      Password: True
      Keytab: False
      Managed by: server.idm.example.com
    Copy to Clipboard Toggle word wrap

    --ip-address=<your_host_ip_address> 选项将主机添加到具有指定 IP 地址的 IdM DNS 中。

  3. 退出 IdM 主机:

    $ exit
    logout
    Connection to server.idm.example.com closed.
    Copy to Clipboard Toggle word wrap
  4. 在 ansible 控制器上,更新清单文件以包含随机密码:

    [...]
    [ipaclients]
    client.idm.example.com
    
    [ipaclients:vars]
    ipaclient_domain=idm.example.com
    ipaclient_otp=W5YpARl=7M.n
    [...]
    Copy to Clipboard Toggle word wrap
  5. 运行 playbook 来安装客户端:

    $ ansible-playbook -i inventory install-client.yml
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat