4.3. 当在客户端安装过程中无法自动发现时设置清单文件的参数
要使用 Ansible playbook 安装身份管理客户端,请在清单文件中配置目标主机参数,如 inventory/hosts :
- 有关主机、IdM 服务器和 IdM 域或 IdM 领域的信息
- 任务的授权
根据您拥有的清单插件,清单文件可以采用多种格式。INI 格式是 Ansible 的默认值之一,如下例中使用。
要在 RHEL 中将智能卡与图形用户界面搭配使用,请确保在 Ansible playbook 中包含 ipaclient_mkhomedir 变量。
流程
指定要成为 IdM 客户端的主机的完全限定主机名(FQDN)。完全限定域名必须是有效的 DNS 名称:
-
仅允许数字、字母字符和连字符(
-)。例如,不允许使用下划线,这可能导致 DNS 失败。 - 主机名必须都是小写。不允许使用大写字母。
-
仅允许数字、字母字符和连字符(
在
inventory/hosts文件的相关部分中指定其他选项:-
[ipaservers]部分中服务器的 FQDN,用于指示客户端将注册到哪个 IdM 服务器 以下两个选项之一:
-
[ipaclients:vars]部分中的ipaclient_domain选项,用来指示客户端将注册到的 IdM 服务器的 DNS 域名 [ipaclients:vars]部分中的ipaclient_realm选项,用于指示 IdM 服务器控制的 Kerberos 域的名称带有客户端 FQDN、服务器 FQDN 和定义的域的清单主机文件示例
-
-
指定注册客户端的凭证。可用的验证方法如下:
注册 客户端的用户权限的密码。这是默认选项。
使用 Ansible Vault 来存储密码,并从 playbook 文件(如
install-client.yml)中引用 Vault 文件:使用来自清单文件和 Ansible Vault 文件中的密码的主体的 playbook 文件示例
不太安全的是,使用
inventory/hosts文件的[ipaclients:vars]部分中的ipaadmin_password选项提供admin的凭证。或者,指定不同的授权用户,请使用ipaadmin_principal选项作为用户名,使用ipaadmin_password选项作为密码。install-client.ymlplaybook 文件类似如下:清单主机文件示例
[...] [ipaclients:vars] *ipaadmin_principal=my_admin* *ipaadmin_password=Secret123*
[...]
[ipaclients:vars]
*ipaadmin_principal=my_admin*
*ipaadmin_password=Secret123*
+ 使用清单文件中的主体和密码的 Playbook 示例
之前注册的客户端 keytab,如果仍然可用:
如果系统之前作为身份管理客户端注册,则可以使用这个选项。要使用此身份验证方法,请取消
ipaclient_keytab选项的注释,指定存储 keytab 的文件的路径,例如在inventory/hosts的[ipaclient:vars]部分。在注册过程中生成的随机一次性密码 (OTP)。要使用此身份验证方法,请在清单文件中使用
ipaclient_use_otp=true选项。例如,您可以取消inventory/hosts文件的[ipaclients:vars]部分中的#ipaclient_use_otp=true选项的注释。请注意,对于 OTP,还必须指定以下选项之一:-
授权注册客户端的用户的密码 ,例如,为
inventory/hosts文件的[ipaclients:vars]部分的ipaadmin_password提供值。 admin keytab,例如,为
inventory/hosts的[ipaclients:vars]部分中的ipaadmin_keytab提供值。-
您还可以指定
ipaclient_subid: true选项,使为 IdM 级别上的 IdM 用户配置了子范围。
-
您还可以指定
-
授权注册客户端的用户的密码 ,例如,为