8.3. 한 로컬 포트에서 다른 로컬 포트로 들어오는 트래픽 전달
firewall
역할을 사용하면 여러 관리 호스트에 지속적인 영향을 적용하여 firewalld
매개변수를 원격으로 구성할 수 있습니다.
Ansible 제어 노드에서 다음 절차를 수행합니다.
사전 요구 사항
- 제어 노드와 관리형 노드를 준비했습니다.
- 관리 노드에서 플레이북을 실행할 수 있는 사용자로 제어 노드에 로그인되어 있습니다.
-
관리형 노드에 연결하는 데 사용하는 계정에는
sudo
권한이 있습니다. - 이 플레이북을 실행하려는 관리형 노드 또는 관리형 노드 그룹은 Ansible 인벤토리 파일에 나열됩니다.
절차
다음 콘텐츠를 사용하여 플레이북 파일(예:
~/port_forwarding.yml
)을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow --- - name: Configure firewalld hosts: managed-node-01.example.com tasks: - name: Forward incoming traffic on port 8080 to 443 include_role: name: rhel-system-roles.firewall vars: firewall: - { forward_port: 8080/tcp;443;, state: enabled, runtime: true, permanent: true }
--- - name: Configure firewalld hosts: managed-node-01.example.com tasks: - name: Forward incoming traffic on port 8080 to 443 include_role: name: rhel-system-roles.firewall vars: firewall: - { forward_port: 8080/tcp;443;, state: enabled, runtime: true, permanent: true }
플레이북을 실행합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ansible-playbook ~/port_forwarding.yml
# ansible-playbook ~/port_forwarding.yml
검증
관리 호스트에서
firewalld
설정을 표시합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow firewall-cmd --list-forward-ports
# firewall-cmd --list-forward-ports
추가 리소스
-
/usr/share/ansible/roles/rhel-system-roles.firewall/README.md