Skip to content

Ufw supports vrrp, but community.general.ufw plugin does not #9562

Closed
@whitfieldts

Description

Summary

UFW seems to support vrrp (and it is listed as a protocol in the man page for ufw), but is not supported by the ufw plugin:

Issue Type

Feature Idea

Component Name

ufw

Ansible Version

$ ansible --version
ansible [core 2.16.3]
  config file = None
  configured module search path = ['/home/tim/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3/dist-packages/ansible
  ansible collection location = /home/tim/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/bin/ansible
  python version = 3.12.3 (main, Nov  6 2024, 18:32:19) [GCC 13.2.0] (/usr/bin/python3)
  jinja version = 3.1.2
  libyaml = True

Community.general Version

$ ansible-galaxy collection list community.general

# /usr/lib/python3/dist-packages/ansible_collections
Collection        Version
----------------- -------
community.general 8.3.0 

Configuration

$ ansible-config dump --only-changed
CONFIG_FILE() = None

OS / Environment

Debian 12 Bookworm

Steps to Reproduce

 # Keepalived (protocol 112)
  - name: firewall trust ips (keepalived)
    community.general.ufw:
      rule: allow
      src: 192.168.1.0/24
      dest: 224.0.0.18
      proto: vrrp

Expected Results

I expected ufw to add the vrrp rule. When run manually:

root@control3:~# ufw allow from 192.168.1.0/24 to 224.0.0.18 proto vrrp
Rule added
root@control3:~# ufw status | grep vrrp
224.0.0.18/vrrp            ALLOW       192.168.1.0/24/vrrp       
root@control3:~# 

Actual Results

TASK [firewall trust ips (keepalived)] **********************************************************************************************************************************************************************************************************************************************************************
fatal: [worker2]: FAILED! => {"changed": false, "msg": "value of proto must be one of: ah, any, esp, ipv6, tcp, udp, gre, igmp, got: vrrp"}
fatal: [worker1]: FAILED! => {"changed": false, "msg": "value of proto must be one of: ah, any, esp, ipv6, tcp, udp, gre, igmp, got: vrrp"}
fatal: [control3]: FAILED! => {"changed": false, "msg": "value of proto must be one of: ah, any, esp, ipv6, tcp, udp, gre, igmp, got: vrrp"}
fatal: [control1]: FAILED! => {"changed": false, "msg": "value of proto must be one of: ah, any, esp, ipv6, tcp, udp, gre, igmp, got: vrrp"}
fatal: [control2]: FAILED! => {"changed": false, "msg": "value of proto must be one of: ah, any, esp, ipv6, tcp, udp, gre, igmp, got: vrrp"}
fatal: [worker4]: FAILED! => {"changed": false, "msg": "value of proto must be one of: ah, any, esp, ipv6, tcp, udp, gre, igmp, got: vrrp"}
fatal: [worker3]: FAILED! => {"changed": false, "msg": "value of proto must be one of: ah, any, esp, ipv6, tcp, udp, gre, igmp, got: vrrp"}

Code of Conduct

  • I agree to follow the Ansible Code of Conduct

Metadata

Assignees

No one assigned

    Labels

    featureThis issue/PR relates to a feature requestmodulemodulepluginsplugin (any type)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions