debian:stable
패키지 인덱스 캐시를 업데이트하고 ufw
Ansible 스키마에 구애받지 않고 버전 독립적인 방식으로 설치 및 설정하도록 설계된 일부 시스템에 Ansible 플레이북을 배포했습니다 .
- name: Update all apt package index cache (apt update)
apt: update_cache=yes
- name: Install a latest ufw
apt:
name: ufw
state: latest
- name: Setup firewall with ufw
ufw:
rule: allow
port: 22,25,80,443
나의 어려움은 여기에 있다
Bash에서도 많이 사용 ufw --force enable
하지만 Ansible-YAML 구문을 사용하여 플레이북에 추가하는 방법을 찾지 못했습니다.Ansible ufw 문서.
내 질문
ufw --force enable
그렇다면 어떻게 올바르게 추가해야 할까요?
답변1
쉘 명령만 실행하려면 Ansible shell
또는 command
모듈을 사용할 수 있습니다.
지금은 ufw
규칙 파일을 직접 편집하는 것 같습니다. 소스 코드를 보면 작업 전후에 이를 실행하여 해당 파일의 내용이 변경되었는지 확인합니다.
grep '^### tuple' /lib/ufw/user.rules /lib/ufw/user6.rules /etc/ufw/user.rules /etc/ufw/user6.rules
활성화 또는 비활성화에 관한 state
작업은 다음과 같습니다.
당신이 말하는 한 state: enabled
당신은 그것을 할 것입니다ufw -f enable
if command == 'state':
states = {'enabled': 'enable', 'disabled': 'disable',
'reloaded': 'reload', 'reset': 'reset'}
execute(cmd + [['-f'], [states[value]]])