Red Hat Training

A Red Hat training course is available for RHEL 8

10.2. selinux システムロールを使用した、複数のシステムでの SELinux 設定の適用

selinux システムロールを使用すると、検証済みの SELinux 設定を使用して Ansible Playbook を準備および適用できます。

前提条件

  • 制御ノードと管理ノードを準備している
  • 管理対象ノードで Playbook を実行できるユーザーとしてコントロールノードにログインしている。
  • 管理対象ノードへの接続に使用するアカウントには、そのノードに対する sudo 権限がある。
  • この Playbook を実行する管理対象ノードまたは管理対象ノードのグループが、Ansible インベントリーファイルにリストされている。

手順

  1. Playbook を準備します。ゼロから準備するか、rhel-system-roles パッケージの一部としてインストールされたサンプル Playbook を変更してください。

    # cp /usr/share/doc/rhel-system-roles/selinux/example-selinux-playbook.yml <my-selinux-playbook.yml>
    # vi <my-selinux-playbook.yml>
  2. シナリオに合わせて Playbook の内容を変更します。たとえば、次の部分では、システムが SELinux モジュール selinux-local-1.pp をインストールして有効にします。

    selinux_modules:
    - { path: "selinux-local-1.pp", priority: "400" }
  3. 変更を保存し、テキストエディターを終了します。
  4. Playbook の構文を検証します。

    # ansible-playbook <my-selinux-playbook.yml> --syntax-check

    このコマンドは構文を検証するだけであり、有効だが不適切な設定から保護するものではないことに注意してください。

  5. Playbook を実行します。

    # ansible-playbook <my-selinux-playbook.yml>

関連情報

  • 詳細は、rhel-system-roles パッケージをインストールして、/usr/share/doc/rhel-system-roles/selinux/ ディレクトリーおよび /usr/share/ansible/roles/rhel-system-roles.selinux/ ディレクトリーを参照してください。
  • ナレッジベース記事 SELinux hardening with Ansible