86.4. Ansible Playbook を使用して、DNS を使用せずに IdM クライアントで HTTP サービスを存在させる手順
以下の手順に従って、Ansible Playbook を使用して DNS エントリーがない IdM クライアントで HTTP サーバーが存在することを確認します。このシナリオでは、IdM ホストに DNS A エントリーがないことを前提としています (IPv4 の代わりに IPv6 を使用する場合には DNS AAAA エントリーがない)。
前提条件
- HTTP サービスをホストするシステムが IdM に登録されている。
- ホストの DNS A または DNS AAAA レコードを存在させない。ホストの DNS レコードが存在する場合には、ホストの DNS レコードが存在する場合は、Ansible Playbook を使用して IdM に HTTP サービスを存在させる手順 に従うようにしてください。
- IdM 管理者パスワードがある。
手順
inventory.file
などのインベントリーファイルを作成します。$ touch inventory.file
inventory.file
を開き、[ipaserver]
セクションに、設定する IdM サーバーを定義します。たとえば、Ansible に対して server.idm.example.com を設定するように指示するには、次のコマンドを実行します。[ipaserver] server.idm.example.com
Ansible Playbook ファイル (
/usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-with-host-force.yml
) のコピーを作成します。以下に例を示します。$ cp /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-with-host-force.yml /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-with-host-force-copy.yml
コピーしたファイル
/usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-with-host-force-copy.yml
を開きます。ipaservice
タスクでipaadmin_password
とname
変数の場所を特定します。--- - name: Playbook to manage IPA service. hosts: ipaserver gather_facts: false vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: # Ensure service is present - ipaservice: ipaadmin_password: "{{ ipaadmin_password }}" name: HTTP/ihavenodns.info force: yes
ファイルを調整します。
-
ipaadmin_password
変数は IdM 管理者パスワードに設定します。 -
name
変数は、HTTP サービスが実行されているホストの名前に設定します。
-
- ファイルを保存し、終了します。
Ansible Playbook を実行します。Playbook ファイル、secret.yml ファイルを保護するパスワードを格納するファイル、およびインベントリーファイルを指定します。
$ ansible-playbook --vault-password-file=password_file -v -i path_to_inventory_directory/inventory.file /usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-with-host-force-copy.yml
検証手順
- 管理者として IdM Web UI にログインします。
-
Identity
Services
に移動します。
HTTP/client.idm.example.com@IDM.EXAMPLE.COM が Services リストに表示されています。
関連情報
- 通信の安全を確保する方法は、Apache HTTP Server への TLS 暗号化の追加 を参照してください。