10.2. selinux 시스템 역할을 사용하여 여러 시스템에 SELinux 설정 적용

단계에 따라 검증된 SELinux 설정으로 Ansible 플레이북을 준비 및 적용합니다.

사전 요구 사항

  • selinux 시스템 역할을 사용하여 구성하려는 시스템인 하나 이상의 관리형 노드에 대한 액세스 및 권한.
  • Red Hat Ansible Core가 기타 시스템을 구성하는 시스템인 제어 노드 액세스 및 사용 권한.

    제어 노드에서 다음이 있어야 합니다.

    • ansible-corerhel-system-roles 패키지가 설치됩니다.
    • 관리 노드를 나열하는 인벤토리 파일.
중요

RHEL 8.0-8.5는 Ansible 기반 자동화를 위해 Ansible Engine 2.9가 포함된 별도의 Ansible 리포지토리에 대한 액세스를 제공했습니다. Ansible Engine에는 ansible , ansible -playbook, dockerpodman 과 같은 커넥터, 여러 플러그인 및 모듈과 같은 명령줄 유틸리티가 포함되어 있습니다. Ansible Engine을 확보하고 설치하는 방법에 대한 자세한 내용은 Red Hat Ansible Engine 지식베이스를 다운로드하고 설치하는 방법 문서를 참조하십시오.

RHEL 8.6 및 9.0에서는 Ansible 명령줄 유틸리티, 명령 및 소규모의 기본 제공 Ansible 플러그인 세트가 포함된 Ansible Core( ansible-core 패키지로 제공)를 도입했습니다. RHEL은 AppStream 리포지토리를 통해 이 패키지를 제공하며 제한된 지원 범위를 제공합니다. 자세한 내용은 RHEL 9 및 RHEL 8.6 이상 AppStream 리포지토리 지식 베이스에 포함된 Ansible Core 패키지에 대한 지원 범위를 참조하십시오.

  • 관리 노드를 나열하는 인벤토리 파일.

절차

  1. 플레이북을 준비합니다. 처음부터 시작하거나 rhel-system-roles 패키지의 일부로 설치된 예제 플레이북을 수정할 수 있습니다.

    # cp /usr/share/doc/rhel-system-roles/selinux/example-selinux-playbook.yml my-selinux-playbook.yml
    # vi my-selinux-playbook.yml
  2. 시나리오에 맞게 플레이북의 내용을 변경합니다. 예를 들어 다음 부분에서는 시스템이 selinux-local-1.pp SELinux 모듈을 설치하고 활성화합니다.

    selinux_modules:
    - { path: "selinux-local-1.pp", priority: "400" }
  3. 변경 사항을 저장하고 텍스트 편집기를 종료합니다.
  4. host1,host2host3 시스템에서 플레이북을 실행합니다.

    # ansible-playbook -i host1,host2,host3 my-selinux-playbook.yml

추가 리소스

  • 자세한 내용은 rhel-system-roles 패키지를 설치하고 /usr/share/doc/rhel-system-roles/selinux//usr/share/ansible/roles/rhel-system-roles.selinux/ 디렉터리를 참조하십시오.