netapp.ontap.na_ontap_firewall_policy – NetApp ONTAP Manage a firewall policy¶
Note
This plugin is part of the netapp.ontap collection (version 21.4.0).
To install it use: ansible-galaxy collection install netapp.ontap
.
To use it in a playbook, specify: netapp.ontap.na_ontap_firewall_policy
.
New in version 2.7.0: of netapp.ontap
Requirements¶
The below requirements are needed on the host that executes this module.
A physical or virtual clustered Data ONTAP system. The modules support Data ONTAP 9.1 and onward.
Ansible 2.9
Python package ipaddress. Install using ‘pip install ipaddress’
Python3 netapp-lib (2018.11.13) or later. Install using ‘pip install netapp-lib’
REST support requires ONTAP 9.6 or later.
To enable http on the cluster you must run the following commands ‘set -privilege advanced;’ ‘system services web modify -http-enabled true;’
netapp-lib 2020.3.12 is strongly recommended as it provides better error reporting for connection issues.
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
allow_list
list
/ elements=string
|
A list of IPs and masks to use.
The host bits of the IP addresses used in this list must be set to 0.
|
|
cert_filepath
string
added in 20.6.0 of netapp.ontap
|
path to SSL client cert file (.pem).
not supported with python 2.6.
|
|
enable
string
|
|
enable firewall on a node
|
feature_flags
dictionary
added in 20.5.0 of netapp.ontap
|
Enable or disable a new feature.
This can be used to enable an experimental feature or disable a new feature that breaks backward compatibility.
Supported keys and values are subject to change without notice. Unknown keys are ignored.
|
|
hostname
string
/ required
|
The hostname or IP address of the ONTAP instance.
|
|
http_port
integer
|
Override the default port (80 or 443) with this port
|
|
https
boolean
|
|
Enable and disable https.
Ignored when using REST as only https is supported.
Ignored when using SSL certificate authentication as it requires SSL.
|
key_filepath
string
added in 20.6.0 of netapp.ontap
|
path to SSL client key file.
|
|
logging
string
|
|
enable logging for firewall on a node
|
node
string
|
The node to run the firewall configuration on
|
|
ontapi
integer
|
The ontap api version to use
|
|
password
string
|
Password for the specified user.
aliases: pass |
|
policy
string
|
A policy name for the firewall policy
|
|
service
string
|
|
The service to apply the policy to
https and ssh are not supported starting with ONTAP 9.6
portmap is supported for ONTAP 9.4, 9.5 and 9.6
|
state
string
|
|
Whether to set up a firewall policy or not
|
use_rest
string
|
Default: "auto"
|
REST API if supported by the target system for all the resources and attributes the module requires. Otherwise will revert to ZAPI.
always -- will always use the REST API
never -- will always use the ZAPI
auto -- will try to use the REST Api
|
username
string
|
This can be a Cluster-scoped or SVM-scoped account, depending on whether a Cluster-level or SVM-level API is required.
For more information, please read the documentation https://mysupport.netapp.com/NOW/download/software/nmsdk/9.4/.
Two authentication methods are supported
1. basic authentication, using username and password,
2. SSL certificate authentication, using a ssl client cert file, and optionally a private key file.
To use a certificate, the certificate must have been installed in the ONTAP cluster, and cert authentication must have been enabled.
aliases: user |
|
validate_certs
boolean
|
|
If set to
no , the SSL certificates will not be validated.This should only set to
False used on personally controlled sites using self-signed certificates. |
vserver
string
|
The Vserver to apply the policy to.
|
Examples¶
- name: create firewall Policy
na_ontap_firewall_policy:
state: present
allow_list: [1.2.3.0/24,1.3.0.0/16]
policy: pizza
service: http
vserver: ci_dev
hostname: "{{ netapp hostname }}"
username: "{{ netapp username }}"
password: "{{ netapp password }}"
- name: Modify firewall Policy
na_ontap_firewall_policy:
state: present
allow_list: [1.5.3.0/24]
policy: pizza
service: http
vserver: ci_dev
hostname: "{{ netapp hostname }}"
username: "{{ netapp username }}"
password: "{{ netapp password }}"
- name: Destory firewall Policy
na_ontap_firewall_policy:
state: absent
policy: pizza
service: http
vserver: ci_dev
hostname: "{{ netapp hostname }}"
username: "{{ netapp username }}"
password: "{{ netapp password }}"
- name: Enable firewall and logging on a node
na_ontap_firewall_policy:
node: test-vsim1
enable: enable
logging: enable
hostname: "{{ netapp hostname }}"
username: "{{ netapp username }}"
password: "{{ netapp password }}"
Authors¶
NetApp Ansible Team (@carchi8py) <ng-ansibleteam@netapp.com>