4.2. クライアントのインストール時に自動検出ができない場合に備えてインベントリーファイルのパラメーターの設定

Ansible Playbook を使用して Identity Management クライアントをインストールするには、インベントリーファイルでターゲットホストパラメーターを設定します (例: inventory/hosts)。

  • ホストと、IdM サーバーおよび IdM ドメインまたは IdM レルムに関する情報
  • タスクの認可

インベントリーファイルは、所有するインベントリープラグインに応じて、多数ある形式のいずれかになります。INI-like 形式は Ansible のデフォルトで、以下の例で使用されています。

注記

RHEL でグラフィカルユーザーインターフェイスでスマートカードを使用するには、Ansible Playbook に ipaclient_mkhomedir 変数を含めるようにします。

前提条件

手順

  1. IdM クライアントになるホストの完全修飾ホスト名 (FQDN) を指定します。完全修飾ドメイン名は、有効な DNS 名である必要があります。

    • 数字、アルファベット、およびハイフン (-) のみを使用できる。たとえば、アンダーラインは使用できないため、DNS の障害が発生する原因となる可能性があります。
    • ホスト名がすべて小文字である。大文字は使用できません。
  2. inventory/hosts ファイルの関連セクションに、他のオプションを指定します。

    • [ipaservers] セクションのサーバーの FQDN は、クライアントが登録される IdM サーバーを示します。
    • 以下のいずれかのオプションを使用できます。

      • クライアントが登録される IdM サーバーの DNS ドメイン名を指定する [ipaclients:vars] セクションの ipaclient_domain オプション
      • IdM サーバーが制御する Kerberos レルムの名前を示す [ipaclients:vars] セクションの ipaclient_realm オプション

        クライアント FQDN、サーバーの FQDN、およびドメインが定義されているインベントリーホストファイルの例

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

  3. クライアントを登録するための認証情報を指定します。以下の認証方法を使用できます。

    • クライアントを登録する権限のあるユーザーのパスワード。以下はデフォルトのオプションになります。

      • Red Hat は、Ansible Vault を使用してパスワードを保存し、Playbook ファイル (install-client.yml など) から Vault ファイルを直接参照することを推奨します (インベントリーファイルのプリンシパルと AnsibleVault ファイルのパスワードを使用した 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 オプションを使用します。これにより、Playbook ファイル install-client.yml は、以下のようになります。

    インベントリーホストファイルの例

    [...]
    [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

  • 以前登録した クライアントキータブ が利用できる場合は、以下を行います。

    このオプションは、システムが Identity Management クライアントとして登録されたことがある場合に使用できます。この認証方法を使用するには、ipaclient_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 の値を指定)。
    • 管理者キータブ (例: inventory/hosts[ipaclients:vars] セクションに ipaadmin_keytab の値を指定)。

関連情報

  • Ansible ロール ipaclient で使用できるオプションの詳細は、README ファイル /usr/share/ansible/roles/ipaclient/README.md を参照してください。