ufw --force 有効化を使用して、ufw で Ansible オーケストレーションを実行します。

ufw --force 有効化を使用して、ufw で Ansible オーケストレーションを実行します。

debian:stableパッケージインデックスキャッシュを更新し、ufwAnsibleスキーマに拘束されることなく、バージョンに依存しない方法でインストールおよび設定するように設計された一部のシステムにAnsible PlayBookをデプロイしました。

- 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構文を使用してPlaybookに追加する方法が見つかりませんでした。Ansible ufw ドキュメント

私の質問

ufw --force enableそれでは、どのように正しく追加する必要がありますか?

答え1

シェルコマンドのみを実行するには、Ansibleshellまたは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]]])

関連情報