9.4. RHEL 시스템 역할을 사용하여 firewalld 에서 포트 관리
방화벽
RHEL 시스템 역할을 사용하여 수신 트래픽을 위해 로컬 방화벽의 포트를 열거나 종료하고 재부팅 시 새 구성을 유지할 수 있습니다. 예를 들어 HTTPS 서비스에 대한 들어오는 트래픽을 허용하도록 기본 영역을 구성할 수 있습니다.
Ansible 제어 노드에서 다음 프로세스를 수행합니다.
사전 요구 사항
- 제어 노드와 관리형 노드가 준비되었습니다.
- 관리 노드에서 플레이북을 실행할 수 있는 사용자로 제어 노드에 로그인되어 있습니다.
-
관리형 노드에 연결하는 데 사용하는 계정에는
sudo
권한이 있습니다.
절차
다음 콘텐츠를 사용하여 플레이북 파일(예:
~/playbook.yml
)을 생성합니다.--- - name: Configure firewalld hosts: managed-node-01.example.com tasks: - name: Allow incoming HTTPS traffic to the local host ansible.builtin.include_role: name: rhel-system-roles.firewall vars: firewall: - port: 443/tcp service: http state: enabled runtime: true permanent: true
permanent: true
옵션은 재부팅 시 새 설정을 영구적으로 만듭니다.플레이북 구문을 확인합니다.
$ ansible-playbook --syntax-check ~/playbook.yml
이 명령은 구문만 검증하고 잘못되었지만 유효한 구성으로부터 보호하지 않습니다.
플레이북을 실행합니다.
$ ansible-playbook ~/playbook.yml
검증
관리 노드에서
HTTPS
서비스와 연결된443/tcp
포트가 열려 있는지 확인합니다.# firewall-cmd --list-ports 443/tcp
추가 리소스
-
/usr/share/ansible/roles/rhel-system-roles.firewall/README.md
파일 -
/usr/share/doc/rhel-system-roles/firewall/
디렉터리