damex.incus.incus_network_acl module – Ensure Incus network ACL
Note
This module is part of the damex.incus collection (version 1.9.0).
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 |
|
Path to the client certificate for remote authentication. Requires |
|
Client key content for remote authentication. Requires |
|
Path to the client key for remote authentication. Requires |
|
ACL configuration key-value pairs. Only user-defined keys (user.*) are supported. Default: |
|
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 |
|
Path to the server certificate for remote verification. Requires |
|
Path to the Incus Unix socket for local connections. Default: |
|
Desired state of the network ACL. Choices:
|
|
Token for remote authentication. Requires |
|
URL of the remote Incus server (e.g. https://host:8443). If specified, connects via HTTPS instead of Unix socket. |
|
Whether to validate the server TLS certificate. Choices:
|
|
Whether to wait for async operations to complete before returning. 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