41.13. RHEL 시스템 역할을 사용하여 firewalld 구성
RHEL 시스템 역할은 Ansible 자동화 유틸리티의 콘텐츠 집합입니다. 이 콘텐츠는 Ansible 자동화 유틸리티와 함께 여러 시스템을 한 번에 원격으로 관리할 수 있는 일관된 구성 인터페이스를 제공합니다.
rhel-system-roles 패키지에는 rhel-system-roles.firewall RHEL 시스템 역할이 포함되어 있습니다. 이 역할은 firewalld 서비스의 자동 구성을 위해 도입되었습니다.
방화벽 RHEL 시스템 역할을 사용하면 다양한 firewalld 매개변수를 구성할 수 있습니다. 예를 들면 다음과 같습니다.
- 영역
- 패킷을 수신할 수 있는 특정 서비스
- 포트에 대한 트래픽 액세스 권한 부여, 거부 또는 삭제
- 영역의 포트 또는 포트 범위 전달
41.13.1. 방화벽 RHEL 시스템 역할을 사용하여 firewalld 설정 재설정 링크 복사링크가 클립보드에 복사되었습니다!
방화벽 RHEL 시스템 역할은 firewalld 설정 재설정을 기본값으로 자동화하는 기능을 지원합니다. 이를 통해 안전하지 않거나 의도하지 않은 방화벽 규칙을 효율적으로 제거하고 관리를 단순화합니다.
사전 요구 사항
- 컨트롤 노드와 관리형 노드를 준비했습니다.
-
관리 노드에 연결하는 데 사용하는 계정에는 이러한 노드에 대한
sudo권한이 있습니다.
프로세스
다음 콘텐츠를 사용하여 플레이북 파일(예:
~/playbook.yml)을 생성합니다.--- - name: Reset firewalld example hosts: managed-node-01.example.com tasks: - name: Reset firewalld ansible.builtin.include_role: name: redhat.rhel_system_roles.firewall vars: firewall: - previous: replaced예제 플레이북에 지정된 설정은 다음과 같습니다.
이전: 교체기존 사용자 정의 설정을 모두 제거하고
firewalld설정을 기본값으로 재설정합니다.이전:replaced매개변수를 다른 설정과 결합하면firewall역할은 새 설정을 적용하기 전에 기존 설정을 모두 제거합니다.플레이북에 사용되는 모든 변수에 대한 자세한 내용은 제어 노드의
/usr/share/ansible/roles/rhel-system-roles.firewall/README.md파일을 참조하십시오.
플레이북 구문을 확인합니다.
$ ansible-playbook --syntax-check ~/playbook.yml이 명령은 구문만 검증하고 잘못되었지만 유효한 구성으로부터 보호하지 않습니다.
Playbook을 실행합니다.
$ ansible-playbook ~/playbook.yml
검증
제어 노드에서 이 명령을 실행하여 관리 노드의 모든 방화벽 구성이 기본값으로 재설정되었는지 원격으로 확인합니다.
# ansible managed-node-01.example.com -m ansible.builtin.command -a 'firewall-cmd --list-all-zones'