Menu Close
Settings Close

Language and Page Formatting Options

Red Hat Training

A Red Hat training course is available for RHEL 8

31.2. 当在客户端安装过程中无法自动发现时设置清单文件的参数

要使用 Ansible playbook 安装身份管理客户端,请在清单文件,如 inventory/hosts 中配置目标主机参数:

  • 有关主机、IdM 服务器和 IdM 域或 IdM 域的信息
  • 任务授权

根据您拥有的清单插件,清单文件可以采用多种格式。类似 INI 的格式 是 Ansible 的默认值之一,如在下面示例中所使用的。

注意

要在 RHEL 中将智能卡与图形用户界面搭配使用,请确保在 Ansible playbook 中包含 ipaclient_mkhomedir 变量。

先决条件

流程

  1. 指定主机的完全限定主机名(FQDN),使其成为 IdM 客户端。完全限定域名必须是有效的 DNS 名称:

    • 仅允许数字、字母字符和连字符(-)。例如,不允许使用下划线,这可能导致 DNS 失败。
    • 主机名必须都是小写。不允许使用大写字母。
  2. inventory/hosts 文件的相关部分中指定其他选项:

    • [ipaservers] 部分中服务器的 FQDN,用于指示客户端将注册到哪个 IdM 服务器
    • 以下两个选项之一:

      • [ipaclients:vars] 部分中的 ipaclient_domain 选项,用来指示客户端要注册到的 IdM 服务器的 DNS 域名
      • [ipaclients:vars] 部分中的 ipaclient_realm 选项,用来指示 IdM 服务器所控制的 Kerberos 领域的名称

        带有客户端 FQDN、服务器 FQDN 和定义的域的清单主机文件示例

        [ipaclients]
        client.idm.example.com
        
        [ipaservers]
        server.idm.example.com
        
        [ipaclients:vars]
        ipaclient_domain=idm.example.com
        [...]

  3. 指定注册客户端的凭证。可用的验证方法如下:

    • 注册 客户端的用户权限的密码。这是默认选项。

      • 红帽建议使用 Ansible Vault 来存储密码,并从 playbook 文件引用 Vault 文件,例如:使用来自清单文件的主体和 Ansible Vault 文件的密码 install-client.yml 直接引用:.Example playbook 文件
- name: Playbook to configure IPA clients with username/password
  hosts: ipaclients
  become: true
  vars_files:
  - *playbook_sensitive_data.yml*

  roles:
  - role: ipaclient
    state: present
  • inventory/hosts 文件的 [ipaclients:vars] 部分中使用 ipaadmin_password 选项来提供 admin 的凭证不太安全。或者,指定不同的授权用户,请使用 ipaadmin_principal 选项作为用户名,使用 ipaadmin_password 选项作为密码。install-client.yml playbook 文件类似如下:

    清单主机文件示例

    [...]
    [ipaclients:vars]
    ipaadmin_principal=my_admin
    ipaadmin_password=Secret123

    使用清单文件中的主体和密码的 Playbook 示例

    - name: Playbook to unconfigure IPA clients
      hosts: ipaclients
      become: true
    
      roles:
      - role: ipaclient
        state: true

  • 之前注册的客户端 keytab,如果仍然可用:

    如果系统之前作为身份管理客户端注册,则可以使用这个选项。要使用此身份验证方法,请取消 ipaclient_keytab 选项的注释,指定存储 keytab 的文件的路径,例如在 inventory/hosts[ipaclient:vars] 部分。

  • 在注册过程中生成的随机一次性密码 (OTP)。要使用此身份验证方法,请在清单文件中使用 ipaclient_use_otp=yes 选项。例如,您可以取消 inventory/hosts 文件的 [ipaclients:vars] 部分中 #ipaclient_use_otp=yes 选项的注释。请注意,对于 OTP,还必须指定以下选项之一:

    • 授权注册客户端的用户的密码 ,例如,为 inventory/hosts 文件的 [ipaclients:vars] 部分的 ipaadmin_password 提供值。
    • admin keytab,例如,为 inventory/hosts[ipaclients:vars] 部分中的 ipaadmin_keytab 提供值。

其它资源

  • 有关 ipaclient Ansible 角色可接受的选项的详情,请查看 /usr/share/ansible/roles/ipaclient/README.md README 文件。