34.13. 使用 Ansible 删除信任
按照以下流程,使用 Ansible playbook 删除 IdM 端上的身份管理(IdM)/活动目录(AD)信任。
先决条件
- 您已作为 IdM 管理员获得了 Kerberos 单。详情请参阅 Web UI 中的登录到 IdM: 使用 Kerberos ticket。
您已配置了 Ansible 控制节点以满足以下要求:
- 您使用 Ansible 版本 2.14 或更高版本。
-
您已在 Ansible 控制器上安装了
ansible-freeipa
软件包。 - 示例假定在 ~/MyPlaybooks/ 目录中,您已创建了一个带有 IdM 服务器的完全限定域名(FQDN)的 Ansible 清单文件。
-
示例假定 secret.yml Ansible vault 存储了
ipaadmin_password
。
-
目标节点(也就是在其上执行
ansible-freeipa
模块的节点)是 IdM 域的一部分,来作为 IdM 客户端、服务器或副本。
流程
进入您的 ~/MyPlaybooks/ 目录:
$ cd ~/MyPlaybooks/
使用以下内容创建
del-trust.yml
playbook:--- - name: Playbook to delete trust hosts: ipaserver vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - name: ensure the trust is absent ipatrust: ipaadmin_password: "{{ ipaadmin_password }}" realm: ad.example.com state: absent
在示例中,
realm
定义 AD 领域名称字符串。- 保存该文件。
运行 Ansible playbook。指定 playbook 文件、存储保护 secret.yml 文件的密码,以及清单文件:
$ ansible-playbook --vault-password-file=password_file -v -i inventory del-trust.yml
注意
删除信任配置不会自动删除 IdM 已为 AD 用户创建的 ID 范围。这样,如果您再次添加信任,则会重新使用现有的 ID 范围。另外,如果 AD 用户已在 IdM 客户端上创建了文件,则会在文件元数据中保留其 POSIX ID。
要删除与 AD 信任相关的所有信息,请在删除信任配置和信任对象后删除 AD 用户 ID 范围:
# ipa idrange-del AD.EXAMPLE.COM_id_range
# systemctl restart sssd
验证
使用
ipa trust-show
命令来确认信任已删除。[root@server ~]# ipa trust-show ad.example.com ipa: ERROR: ad.example.com: trust not found
其他资源
- /usr/share/doc/ansible-freeipa/README-trust.md
- /usr/share/doc/ansible-freeipa/playbooks/trust
- 删除对 AD 的信任后删除 ID 范围