Skip to content

Ansible Collection to manage OPNSense firewalls using their API

License

Notifications You must be signed in to change notification settings

Low-Frequency/collection_opnsense

 
 

Repository files navigation

Ansible Collection - ansibleguy.opnsense

Functional Test Status Lint Test Status Docs Ansible Galaxy


Contribute

Feel free to contribute to this project using pull-requests, issues and discussions!

What to contribute:

  • add ansible-based tests for some error-case(s) you have encountered
  • extend or correct the documentation
  • contribute code fixes or optimizations
  • implement additional API endpoints => see development guide
  • test unstable modules and report bugs/errors

Requirements

The httpx python module is used for API communications!

python3 -m pip install httpx

Then - install the collection itself:

# stable/tested version:
ansible-galaxy collection install ansibleguy.opnsense

# latest version:
ansible-galaxy collection install git+https://github.com/ansibleguy/collection_opnsense.git

# install to specific director for easier development
cd $PLAYBOOK_DIR
ansible-galaxy collection install git+https://github.com/ansibleguy/collection_opnsense.git -p ./collections

Usage

See: Docs


Modules

Development States:

not implemented => development => testing => unstable (practical testing) => stable

Implemented

Function Module Usage State
Base ansibleguy.opnsense.list Docs stable
Base ansibleguy.opnsense.reload Docs stable
Services ansibleguy.opnsense.service Docs stable
Alias ansibleguy.opnsense.alias Docs stable
Alias ansibleguy.opnsense.alias_multi Docs stable
Alias ansibleguy.opnsense.alias_purge Docs unstable
Rules ansibleguy.opnsense.rule Docs unstable
Rules ansibleguy.opnsense.rule_multi Docs unstable
Rules ansibleguy.opnsense.rule_purge Docs unstable
Savepoints ansibleguy.opnsense.savepoint Docs unstable
Packages ansibleguy.opnsense.package Docs stable
System ansibleguy.opnsense.system Docs unstable
Cron-Jobs ansibleguy.opnsense.cron Docs unstable
Routes ansibleguy.opnsense.route Docs unstable
DNS ansibleguy.opnsense.unbound_forward Docs stable
DNS ansibleguy.opnsense.unbound_dot Docs stable
DNS ansibleguy.opnsense.unbound_host Docs stable
DNS ansibleguy.opnsense.unbound_domain Docs stable
DNS ansibleguy.opnsense.unbound_host_alias Docs unstable
Syslog ansibleguy.opnsense.syslog Docs stable
IPSec ansibleguy.opnsense.ipsec_connection Docs unstable
IPSec ansibleguy.opnsense.ipsec_pool Docs testing
IPSec ansibleguy.opnsense.ipsec_auth_local Docs testing
IPSec ansibleguy.opnsense.ipsec_auth_remote Docs testing
IPSec ansibleguy.opnsense.ipsec_child Docs testing
IPSec ansibleguy.opnsense.ipsec_vti Docs testing
IPSec ansibleguy.opnsense.ipsec_cert Docs unstable
Traffic Shaper ansibleguy.opnsense.shaper_pipe Docs unstable
Traffic Shaper ansibleguy.opnsense.shaper_queue Docs unstable
Traffic Shaper ansibleguy.opnsense.shaper_rule Docs unstable
Monit ansibleguy.opnsense.monit_service Docs unstable
Monit ansibleguy.opnsense.monit_alert Docs unstable
Monit ansibleguy.opnsense.monit_test Docs unstable
WireGuard ansibleguy.opnsense.wireguard_server Docs unstable
WireGuard ansibleguy.opnsense.wireguard_peer Docs unstable
WireGuard ansibleguy.opnsense.wireguard_show Docs unstable
WireGuard ansibleguy.opnsense.wireguard_general Docs unstable
Interfaces ansibleguy.opnsense.interface_vlan Docs unstable
Interfaces ansibleguy.opnsense.interface_vxlan Docs unstable
Interfaces ansibleguy.opnsense.interface_vip Docs unstable
NAT ansibleguy.opnsense.source_nat Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_diagnostic Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_bfd_general Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_bfd_neighbor Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_bgp_general Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_bgp_neighbor Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_bgp_prefix_list Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_bgp_route_map Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_bgp_community_list Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_bgp_as_path Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_ospf_general Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_ospf_prefix_list Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_ospf_interface Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_ospf_network Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_ospf3_general Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_ospf3_interface Docs unstable
Dynamic Routing ansibleguy.opnsense.frr_rip Docs unstable
DNS ansibleguy.opnsense.bind_general Docs unstable
DNS ansibleguy.opnsense.bind_blocklist Docs unstable
DNS ansibleguy.opnsense.bind_acl Docs unstable
DNS ansibleguy.opnsense.bind_domain Docs unstable
DNS ansibleguy.opnsense.bind_record Docs unstable
DNS ansibleguy.opnsense.bind_record_multi Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_general Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_cache Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_parent Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_traffic Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_forward Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_acl Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_icap Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_auth Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_remote_acl Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_pac_proxy Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_pac_match Docs unstable
Web Proxy ansibleguy.opnsense.webproxy_pac_rule Docs unstable

Roadmap

Core API:

Plugins API:

About

Ansible Collection to manage OPNSense firewalls using their API

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 98.9%
  • Shell 1.1%