Skip to content

Rosa-Luxemburgstiftung-Berlin/ansible-opnsense

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ansible-lint ansible test

ansible-opnsense

Ansible role to configure OPNsense firewalls.

This is the RLS detached fork of the original from https://github.com/naturalis/ansible-opnsense.

As of Oct 5, 2023 this became the main repository, as the original was removed (see #35).
We like to thank @rudibroekhuizen and all other contributors from @naturalis for their greate work and we are happy to use their contributions as a base for further development.

Requirements

  • OPNsense firewall with shell access
  • python lxml

Role Variables

We try to provide some example variable definitions in the coresponding task and test (test/*.yml) files.

Dependencies

sudo apt install python3-lxml

or

pip install lxml

optional

sudo apt install secure-delete php-cli php-xml # (optional)

php-cli and php-xml are required for the xml re-encoding (recommended! set opn_fix_xml_encoding: true)

secure-delete is required for safe deleting the local xml file.

Example Playbook

Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:

---
- hosts: firewalls
  gather_facts: false
  become: false
  roles:
    - ansible-opnsense
...

Become on play level is not needed for XML changes on localhost, only for tasks to fetch/push config.xml and restart services on OPNsense.

Ansible command

ansible-playbook -D firewalls.yml -l firewall1 -t user,fetch,copy,reload

Related Links

Sample Playbook

Other possible usefull ansible roles related to opnsense

License

Apache 2.0

Author Information