damex.incus.incus_network_acl module – Ensure Incus network ACL
Note
This module is part of the damex.incus collection (version 1.11.7).
It is not included in ansible-core.
To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install damex.incus.
To use it in a playbook, specify: damex.incus.incus_network_acl.
Synopsis
Create, update, and delete Incus network ACLs via the Incus REST API.
Network ACLs define traffic rules that control access between instances connected to the same network, and access to and from other networks.
Rules are automatically ordered by action priority (drop, reject, allow-stateless, allow).
Parameters
Parameter |
Comments |
|---|---|
Client certificate content for remote authentication. Requires |
|
Client certificate path for remote authentication. Requires |
|
Client key content for remote authentication. Requires |
|
Client key path for remote authentication. Requires |
|
User-defined configuration entries. Each entry is flattened to a |
|
Configuration key name (without the user. prefix). |
|
Configuration value. |
|
Description of the network ACL. Default: |
|
List of egress (outbound) traffic rules. Rules are order-independent and automatically sorted by action priority. |
|
Action to perform on rule match. Choices:
|
|
Description of the rule. |
|
Destination address (CIDR, IP range, or selector). |
|
Destination port or port range for TCP/UDP. |
|
ICMP code number. |
|
ICMP type number. |
|
Network protocol to match. Choices:
|
|
Source address (CIDR, IP range, or selector). |
|
Source port or port range for TCP/UDP. |
|
State of the rule. Choices:
|
|
List of ingress (inbound) traffic rules. Rules are order-independent and automatically sorted by action priority. |
|
Action to perform on rule match. Choices:
|
|
Description of the rule. |
|
Destination address (CIDR, IP range, or selector). |
|
Destination port or port range for TCP/UDP. |
|
ICMP code number. |
|
ICMP type number. |
|
Network protocol to match. Choices:
|
|
Source address (CIDR, IP range, or selector). |
|
Source port or port range for TCP/UDP. |
|
State of the rule. Choices:
|
|
Name of the network ACL. |
|
Incus project to query. Default: |
|
Server certificate content for remote verification. Requires |
|
Server certificate path for remote verification. Requires |
|
Incus Unix socket path for local connections. Default: |
|
Desired state of the network ACL. Choices:
|
|
Token for remote authentication. Requires |
|
Remote Incus server URL (e.g. https://host:8443). If specified, connects via HTTPS instead of Unix socket. |
|
Server TLS certificate validation. Choices:
|
|
Async operation completion wait. Set to Choices:
|
Examples
- name: Ensure network ACL allowing web traffic
damex.incus.incus_network_acl:
name: web
description: Web server ACL
ingress:
- action: allow
source: "@internal"
protocol: tcp
destination_port: 80,443
description: Allow HTTP and HTTPS
egress:
- action: allow
destination: 8.8.8.8/32,8.8.4.4/32
protocol: udp
destination_port: "53"
description: Allow DNS queries to Google DNS
- name: Ensure network ACL blocking all traffic
damex.incus.incus_network_acl:
name: deny-all
ingress:
- action: drop
egress:
- action: drop
- name: Ensure network ACL is absent
damex.incus.incus_network_acl:
name: web
state: absent
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
|---|---|
Resource state change indicator. Returned: always |
|
Configuration keys that changed. Returned: always |
|
Before and after state for diff mode. Returned: changed |
|
State after the change. Returned: success |
|
State before the change. Returned: success |