28.5. Ansible のワンタイムパスワード方式を使用して IdM クライアントをインストールする
RHEL Identity Management (IdM) で新しいホストのワンタイムパスワード (OTP) を生成し、それを使用してシステムを IdM ドメインに登録できます。この手順では、別の IdM ホストで IdM クライアントの OTP を生成した後、Ansible を使用して IdM クライアントをインストールする方法を説明します。
この IdM クライアントのインストール方法は、異なる権限を持つ次の 2 人のシステム管理者が組織内に存在する場合に便利です。
- IdM 管理者の認証情報を持つ管理者
-
必要な Ansible 認証情報 (IdM クライアントになるホストへの
root
アクセス権を含む) を持つ別の管理者
IdM 管理者は、手順の前半部分を実行し、OTP パスワードを生成します。Ansible 管理者は、手順の残りの部分を実行し、OTP を使用して IdM クライアントをインストールします。
前提条件
-
IdM
admin
認証情報、または少なくともHost Enrollment
権限と、IdM に DNS レコードを追加する権限を持っている。 - IdM クライアントをインストールできるように、Ansible マネージドノードでユーザーエスカレーション方法を設定した。
- 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 システムである。
手順
Host Enrollment
権限と DNS レコードを追加する権限を持つロールを持つ IdM ユーザーとして IdM ホストにSSH
接続します。ssh admin@server.idm.example.com
$ ssh admin@server.idm.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 新しいクライアントの OTP を生成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow --ip-address=<your_host_ip_address> オプションは、指定した IP アドレスを持つホストを IdM DNS に追加します。
IdM ホストを終了します。
exit
$ exit logout Connection to server.idm.example.com closed.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Ansible コントローラーで、ランダムパスワードを含めるようにインベントリーファイルを更新します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Playbook を実行してクライアントをインストールします。
ansible-playbook -i inventory install-client.yml
$ ansible-playbook -i inventory install-client.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow