Debian
使用 ufw –force enable 對 ufw 進行 Ansible 編排
我將 Ansible 劇本部署到一些
debian:stable
旨在更新包索引記憶體的機器上,ufw
以與 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 ufw 文件中以 Ansible-YAML 語法將其添加到劇本中。我的問題
如果有的話,我應該如何
ufw --force enable
正確添加?
如果您只想執行 shell 命令,請使用 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]]])