10.3. selinux RHEL 시스템 역할을 사용하여 포트 관리


selinux RHEL 시스템 역할을 사용하여 여러 시스템에서 일관되게 SELinux의 포트 액세스 관리를 자동화할 수 있습니다. 예를 들어 다른 포트에서 수신 대기하도록 Apache HTTP 서버를 구성할 때 유용할 수 있습니다. 이를 위해 http_port_t SELinux 유형을 특정 포트 번호에 할당하는 selinux RHEL 시스템 역할로 플레이북을 생성할 수 있습니다. 관리 노드에서 플레이북을 실행하면 SELinux 정책에 정의된 특정 서비스가 이 포트에 액세스할 수 있습니다.

SELinux에서 포트 액세스 관리를 자동화할 수 있습니다. seport 모듈을 사용하면 전체 역할을 사용하는 것보다 빠르거나 selinux RHEL 시스템 역할을 사용하면 SELinux 구성을 다른 변경할 때 더 유용합니다. 실제로 selinux RHEL 시스템 역할은 포트를 구성할 때 seport 모듈을 사용합니다. 각 방법은 관리 노드에서 semanage port -a -t http_port_t -p tcp < port_number > 명령을 입력하는 것과 동일한 효과가 있습니다.

사전 요구 사항

  • 컨트롤 노드 및 관리형 노드를 준비했습니다.
  • 관리 노드에서 플레이북을 실행할 수 있는 사용자로 제어 노드에 로그인되어 있습니다.
  • 관리 노드에 연결하는 데 사용하는 계정에는 sudo 권한이 있습니다.
  • 선택 사항: semanage 명령을 사용하여 포트 상태를 확인하려면 policycoreutils-python-utils 패키지를 설치해야 합니다.

절차

  • 다른 변경을 수행하지 않고 포트 번호만 구성하려면 seport 모듈을 사용합니다.

    - name: Allow Apache to listen on tcp port <port_number>
      community.general.seport:
        ports: <port_number>
        proto: tcp
        setype: http_port_t
        state: present

    & lt;port_number >를 http_port_t 유형을 할당할 포트 번호로 바꿉니다.

  • SELinux의 다른 사용자 지정과 관련된 관리형 노드를 보다 복잡한 구성하려면 selinux RHEL 시스템 역할을 사용합니다. 플레이북 파일(예: ~/playbook.yml )을 생성하고 다음 콘텐츠를 추가합니다.

    ---
    - name: Modify SELinux port mapping example
      hosts: all
      vars:
        # Map tcp port <port_number> to the 'http_port_t' SELinux port type
        selinux_ports:
          - ports: <port_number>
            proto: tcp
            setype: http_port_t
            state: present
    
      tasks:
        - name: Include selinux role
          ansible.builtin.include_role:
            name: rhel-system-roles.selinux

    & lt;port_number >를 http_port_t 유형을 할당할 포트 번호로 바꿉니다.

검증

  • http_port_t 유형에 포트가 할당되었는지 확인합니다.

    # semanage port --list | grep http_port_t
    http_port_t                	tcp  	<port_number>, 80, 81, 443, 488, 8008, 8009, 8443, 9000

추가 리소스

  • /usr/share/ansible/roles/rhel-system-roles.selinux/README.md 파일
  • /usr/share/doc/rhel-system-roles/selinux/ 디렉터리
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.