14.2. crypto_policies システムロールを使用したカスタム暗号化ポリシーの設定

crypto_policies システムロールを使用して、単一の制御ノードから多数の管理対象ノードを一貫して設定できます。

前提条件

  • crypto_policies システムロールで設定するシステムである 1 つ以上の 管理対象ノード へのアクセスとパーミッション。
  • コントロールノード (このシステムから Red Hat Ansible Core は他のシステムを設定) へのアクセスおよびパーミッション。

    コントロールノードでは、

    • ansible-core パッケージおよび rhel-system-roles パッケージがインストールされている。
重要

RHEL 8.0-8.5 では、別の Ansible リポジトリーへのアクセス権を指定されており、Ansible をベースにする自動化用の Ansible Engine 2.9 が含まれています。Ansible Engine には、ansibleansible-playbook などのコマンドラインユーティリティー、dockerpodman などのコネクター、プラグインとモジュールが多く含まれています。Ansible Engine を入手してインストールする方法については、ナレッジベースの How to download and install Red Hat Ansible Engine を参照してください。

RHEL 8.6 および 9.0 では、Ansible Core (ansible-core パッケージとして提供) が導入されました。これには、Ansible コマンドラインユーティリティー、コマンド、およびビルトイン Ansible プラグインのセットが含まれています。RHEL は、AppStream リポジトリーを介してこのパッケージを提供し、サポート範囲は限定的です。詳細については、ナレッジベースの Scope of support for the Ansible Core package included in the RHEL 9 and RHEL 8.6 and later AppStream repositories を参照してください。

  • 管理対象ノードが記載されているインベントリーファイルがある。

手順

  1. 以下の内容を含む新しい playbook.yml ファイルを作成します。

    ---
    - hosts: all
      tasks:
      - name: Configure crypto policies
        include_role:
          name: rhel-system-roles.crypto_policies
        vars:
          - crypto_policies_policy: FUTURE
          - crypto_policies_reboot_ok: true

    FUTURE の値は、任意の暗号化ポリシー(例: DEFAULTLEGACY、および FIPS:OSPP) に置き換えることができます。

    crypto_policies_reboot_ok: true 変数を設定すると、システムロールで暗号化ポリシーを変更した後にシステムが再起動されます。

    詳細については、crypto_policies システムロールの変数とファクト を参照してください。

  2. オプション:Playbook の構文を確認します。

    # ansible-playbook --syntax-check playbook.yml
  3. インベントリーファイルで Playbook を実行します。

    # ansible-playbook -i inventory_file playbook.yml

検証

  1. コントロールノードで (例: verify_playbook.yml) という名前の別の Playbook を作成します。

    - hosts: all
      tasks:
     - name: Verify active crypto policy
       include_role:
         name: rhel-system-roles.crypto_policies
    
     - debug:
         var: crypto_policies_active

    この Playbook では、システムの設定は変更されず、管理対象ノードのアクティブなポリシーだけを報告します。

  2. 同じインベントリーファイルで Playbook を実行します。

    # ansible-playbook -i inventory_file verify_playbook.yml
    
    TASK [debug] **************************
    ok: [host] => {
        "crypto_policies_active": "FUTURE"
    }

    "crypto_policies_active": 変数は、管理対象ノードでアクティブなポリシーを表示します。