On this page
fortinet.fortimanager.fmgr_pkg_firewall_policy – Configure IPv4 policies.
Note
This plugin is part of the fortinet.fortimanager collection (version 2.0.1).
To install it use: ansible-galaxy collection install fortinet.fortimanager
.
To use it in a playbook, specify: fortinet.fortimanager.fmgr_pkg_firewall_policy
.
New in version 2.10: of fortinet.fortimanager
Synopsis
- This module is able to configure a FortiManager device.
- Examples include all parameters and values which need to be adjusted to data sources before usage.
Parameters
Parameter | Choices/Defaults | Comments | ||
---|---|---|---|---|
adom
string / required
|
the parameter (adom) in requested url
|
|||
bypass_validation
boolean
|
|
only set to True when module schema diffs with FortiManager API structure, module continues to execute without validating parameters
|
||
pkg
string / required
|
the parameter (pkg) in requested url
|
|||
pkg_firewall_policy
dictionary
|
the top level parameters set
|
|||
action
string
|
|
Policy action (allow/deny/ipsec).
|
||
app-category
string
|
Application category ID list.
|
|||
application
integer
|
no description
|
|||
application-list
string
|
Name of an existing Application list.
|
|||
auth-cert
string
|
HTTPS server certificate for policy authentication.
|
|||
auth-path
string
|
|
Enable/disable authentication-based routing.
|
||
auth-redirect-addr
string
|
HTTP-to-HTTPS redirect address for firewall authentication.
|
|||
auto-asic-offload
string
|
|
Enable/disable offloading security profile processing to CP processors.
|
||
av-profile
string
|
Name of an existing Antivirus profile.
|
|||
block-notification
string
|
|
Enable/disable block notification.
|
||
captive-portal-exempt
string
|
|
Enable to exempt some users from the captive portal.
|
||
capture-packet
string
|
|
Enable/disable capture packets.
|
||
comments
string
|
no description
|
|||
custom-log-fields
string
|
Custom fields to append to log messages for this policy.
|
|||
delay-tcp-npu-session
string
|
|
Enable TCP NPU session delay to guarantee packet order of 3-way handshake.
|
||
devices
string
|
Names of devices or device groups that can be matched by the policy.
|
|||
diffserv-forward
string
|
|
Enable to change packets DiffServ values to the specified diffservcode-forward value.
|
||
diffserv-reverse
string
|
|
Enable to change packets reverse (reply) DiffServ values to the specified diffservcode-rev value.
|
||
diffservcode-forward
string
|
Change packets DiffServ to this value.
|
|||
diffservcode-rev
string
|
Change packets reverse (reply) DiffServ to this value.
|
|||
disclaimer
string
|
|
Enable/disable user authentication disclaimer.
|
||
dlp-sensor
string
|
Name of an existing DLP sensor.
|
|||
dnsfilter-profile
string
|
Name of an existing DNS filter profile.
|
|||
dscp-match
string
|
|
Enable DSCP check.
|
||
dscp-negate
string
|
|
Enable negated DSCP match.
|
||
dscp-value
string
|
DSCP value.
|
|||
dsri
string
|
|
Enable DSRI to ignore HTTP server responses.
|
||
dstaddr
string
|
Destination address and address group names.
|
|||
dstaddr-negate
string
|
|
When enabled dstaddr specifies what the destination address must NOT be.
|
||
dstintf
string
|
Outgoing (egress) interface.
|
|||
firewall-session-dirty
string
|
|
How to handle sessions if the configuration of this firewall policy changes.
|
||
fixedport
string
|
|
Enable to prevent source NAT from changing a sessions source port.
|
||
fsso
string
|
|
Enable/disable Fortinet Single Sign-On.
|
||
fsso-agent-for-ntlm
string
|
FSSO agent to use for NTLM authentication.
|
|||
global-label
string
|
Label for the policy that appears when the GUI is in Global View mode.
|
|||
groups
string
|
Names of user groups that can authenticate with this policy.
|
|||
gtp-profile
string
|
GTP profile.
|
|||
icap-profile
string
|
Name of an existing ICAP profile.
|
|||
identity-based-route
string
|
Name of identity-based routing rule.
|
|||
inbound
string
|
|
Policy-based IPsec VPN: only traffic from the remote network can initiate a VPN.
|
||
internet-service
string
|
|
Enable/disable use of Internet Services for this policy. If enabled, destination address and service are not used.
|
||
internet-service-custom
string
|
Custom Internet Service Name.
|
|||
internet-service-id
string
|
Internet Service ID.
|
|||
internet-service-negate
string
|
|
When enabled internet-service specifies what the service must NOT be.
|
||
ippool
string
|
|
Enable to use IP Pools for source NAT.
|
||
ips-sensor
string
|
Name of an existing IPS sensor.
|
|||
label
string
|
Label for the policy that appears when the GUI is in Section View mode.
|
|||
learning-mode
string
|
|
Enable to allow everything, but log all of the meaningful data for security information gathering. A learning report will be g...
|
||
logtraffic
string
|
|
Enable or disable logging. Log all sessions or security profile sessions.
|
||
logtraffic-start
string
|
|
Record logs when a session starts and ends.
|
||
match-vip
string
|
|
Enable to match packets that have had their destination addresses changed by a VIP.
|
||
mms-profile
string
|
Name of an existing MMS profile.
|
|||
name
string
|
Policy name.
|
|||
nat
string
|
|
Enable/disable source NAT.
|
||
natinbound
string
|
|
Policy-based IPsec VPN: apply destination NAT to inbound traffic.
|
||
natip
string
|
Policy-based IPsec VPN: source NAT IP address for outgoing traffic.
|
|||
natoutbound
string
|
|
Policy-based IPsec VPN: apply source NAT to outbound traffic.
|
||
ntlm
string
|
|
Enable/disable NTLM authentication.
|
||
ntlm-enabled-browsers
string
|
no description
|
|||
ntlm-guest
string
|
|
Enable/disable NTLM guest user access.
|
||
outbound
string
|
|
Policy-based IPsec VPN: only traffic from the internal network can initiate a VPN.
|
||
per-ip-shaper
string
|
Per-IP traffic shaper.
|
|||
permit-any-host
string
|
|
Accept UDP packets from any host.
|
||
permit-stun-host
string
|
|
Accept UDP packets from any Session Traversal Utilities for NAT (STUN) host.
|
||
policyid
integer
|
Policy ID.
|
|||
poolname
string
|
IP Pool names.
|
|||
profile-group
string
|
Name of profile group.
|
|||
profile-protocol-options
string
|
Name of an existing Protocol options profile.
|
|||
profile-type
string
|
|
Determine whether the firewall policy allows security profile groups or single profiles only.
|
||
radius-mac-auth-bypass
string
|
|
Enable MAC authentication bypass. The bypassed MAC address must be received from RADIUS server.
|
||
redirect-url
string
|
URL users are directed to after seeing and accepting the disclaimer or authenticating.
|
|||
replacemsg-override-group
string
|
Override the default replacement message group for this policy.
|
|||
rsso
string
|
|
Enable/disable RADIUS single sign-on (RSSO).
|
||
rtp-addr
string
|
Address names if this is an RTP NAT policy.
|
|||
rtp-nat
string
|
|
Enable Real Time Protocol (RTP) NAT.
|
||
scan-botnet-connections
string
|
|
Block or monitor connections to Botnet servers or disable Botnet scanning.
|
||
schedule
string
|
Schedule name.
|
|||
schedule-timeout
string
|
|
Enable to force current sessions to end when the schedule object times out. Disable allows them to end from inactivity.
|
||
send-deny-packet
string
|
|
Enable to send a reply when a session is denied or blocked by a firewall policy.
|
||
service
string
|
Service and service group names.
|
|||
service-negate
string
|
|
When enabled service specifies what the service must NOT be.
|
||
session-ttl
integer
|
Session TTL in seconds for sessions accepted by this policy. 0 means use the system default session TTL.
|
|||
spamfilter-profile
string
|
Name of an existing Spam filter profile.
|
|||
srcaddr
string
|
Source address and address group names.
|
|||
srcaddr-negate
string
|
|
When enabled srcaddr specifies what the source address must NOT be.
|
||
srcintf
string
|
Incoming (ingress) interface.
|
|||
ssl-mirror
string
|
|
Enable to copy decrypted SSL traffic to a FortiGate interface (called SSL mirroring).
|
||
ssl-mirror-intf
string
|
SSL mirror interface name.
|
|||
ssl-ssh-profile
string
|
Name of an existing SSL SSH profile.
|
|||
status
string
|
|
Enable or disable this policy.
|
||
tags
string
|
Names of object-tags applied to this policy.
|
|||
tcp-mss-receiver
integer
|
Receiver TCP maximum segment size (MSS).
|
|||
tcp-mss-sender
integer
|
Sender TCP maximum segment size (MSS).
|
|||
tcp-session-without-syn
string
|
|
Enable/disable creation of TCP session without SYN flag.
|
||
timeout-send-rst
string
|
|
Enable/disable sending RST packets when TCP sessions expire.
|
||
traffic-shaper
string
|
Traffic shaper.
|
|||
traffic-shaper-reverse
string
|
Reverse traffic shaper.
|
|||
url-category
string
|
URL category ID list.
|
|||
users
string
|
Names of individual users that can authenticate with this policy.
|
|||
utm-status
string
|
|
Enable to add one or more security profiles (AV, IPS, etc.) to the firewall policy.
|
||
uuid
string
|
Universally Unique Identifier (UUID; automatically assigned but can be manually reset).
|
|||
vlan-cos-fwd
integer
|
VLAN forward direction user priority: 255 passthrough, 0 lowest, 7 highest.
|
|||
vlan-cos-rev
integer
|
VLAN reverse direction user priority: 255 passthrough, 0 lowest, 7 highest..
|
|||
voip-profile
string
|
Name of an existing VoIP profile.
|
|||
vpn_dst_node
list / elements=string
|
no description
|
|||
host
string
|
no description
|
|||
seq
integer
|
no description
|
|||
subnet
string
|
no description
|
|||
vpn_src_node
list / elements=string
|
no description
|
|||
host
string
|
no description
|
|||
seq
integer
|
no description
|
|||
subnet
string
|
no description
|
|||
vpntunnel
string
|
Policy-based IPsec VPN: name of the IPsec VPN Phase 1.
|
|||
waf-profile
string
|
Name of an existing Web application firewall profile.
|
|||
wanopt
string
|
|
Enable/disable WAN optimization.
|
||
wanopt-detection
string
|
|
WAN optimization auto-detection mode.
|
||
wanopt-passive-opt
string
|
|
WAN optimization passive mode options. This option decides what IP address will be used to connect server.
|
||
wanopt-peer
string
|
WAN optimization peer.
|
|||
wanopt-profile
string
|
WAN optimization profile.
|
|||
wccp
string
|
|
Enable/disable forwarding traffic matching this policy to a configured WCCP server.
|
||
webcache
string
|
|
Enable/disable web cache.
|
||
webcache-https
string
|
|
Enable/disable web cache for HTTPS.
|
||
webfilter-profile
string
|
Name of an existing Web filter profile.
|
|||
wsso
string
|
|
Enable/disable WiFi Single Sign On (WSSO).
|
||
rc_failed
list / elements=string
|
the rc codes list with which the conditions to fail will be overriden
|
|||
rc_succeeded
list / elements=string
|
the rc codes list with which the conditions to succeed will be overriden
|
|||
state
string / required
|
|
the directive to create, update or delete an object
|
||
workspace_locking_adom
string
|
the adom to lock for FortiManager running in workspace mode, the value can be global and others including root
|
|||
workspace_locking_timeout
integer
|
Default:
300
|
the maximum time in seconds to wait for other user to release the workspace lock
|
Notes
Note
- Running in workspace locking mode is supported in this FortiManager module, the top level parameters workspace_locking_adom and workspace_locking_timeout help do the work.
- To create or update an object, use state present directive.
- To delete an object, use state absent directive.
- Normally, running one module can fail when a non-zero rc is returned. you can also override the conditions to fail or succeed with parameters rc_failed and rc_succeeded
Examples
- hosts: fortimanager-inventory
collections:
- fortinet.fortimanager
connection: httpapi
vars:
ansible_httpapi_use_ssl: True
ansible_httpapi_validate_certs: False
ansible_httpapi_port: 443
tasks:
- name: Configure IPv4 policies.
fmgr_pkg_firewall_policy:
bypass_validation: False
workspace_locking_adom: <value in [global, custom adom including root]>
workspace_locking_timeout: 300
rc_succeeded: [0, -2, -3, ...]
rc_failed: [-2, -3, ...]
adom: <your own value>
pkg: <your own value>
state: <value in [present, absent]>
pkg_firewall_policy:
action: <value in [deny, accept, ipsec, ...]>
app-category: <value of string>
application: <value of integer>
application-list: <value of string>
auth-cert: <value of string>
auth-path: <value in [disable, enable]>
auth-redirect-addr: <value of string>
auto-asic-offload: <value in [disable, enable]>
av-profile: <value of string>
block-notification: <value in [disable, enable]>
captive-portal-exempt: <value in [disable, enable]>
capture-packet: <value in [disable, enable]>
comments: <value of string>
custom-log-fields: <value of string>
delay-tcp-npu-session: <value in [disable, enable]>
devices: <value of string>
diffserv-forward: <value in [disable, enable]>
diffserv-reverse: <value in [disable, enable]>
diffservcode-forward: <value of string>
diffservcode-rev: <value of string>
disclaimer: <value in [disable, enable]>
dlp-sensor: <value of string>
dnsfilter-profile: <value of string>
dscp-match: <value in [disable, enable]>
dscp-negate: <value in [disable, enable]>
dscp-value: <value of string>
dsri: <value in [disable, enable]>
dstaddr: <value of string>
dstaddr-negate: <value in [disable, enable]>
dstintf: <value of string>
firewall-session-dirty: <value in [check-all, check-new]>
fixedport: <value in [disable, enable]>
fsso: <value in [disable, enable]>
fsso-agent-for-ntlm: <value of string>
global-label: <value of string>
groups: <value of string>
gtp-profile: <value of string>
icap-profile: <value of string>
identity-based-route: <value of string>
inbound: <value in [disable, enable]>
internet-service: <value in [disable, enable]>
internet-service-custom: <value of string>
internet-service-id: <value of string>
internet-service-negate: <value in [disable, enable]>
ippool: <value in [disable, enable]>
ips-sensor: <value of string>
label: <value of string>
learning-mode: <value in [disable, enable]>
logtraffic: <value in [disable, enable, all, ...]>
logtraffic-start: <value in [disable, enable]>
match-vip: <value in [disable, enable]>
mms-profile: <value of string>
name: <value of string>
nat: <value in [disable, enable]>
natinbound: <value in [disable, enable]>
natip: <value of string>
natoutbound: <value in [disable, enable]>
ntlm: <value in [disable, enable]>
ntlm-enabled-browsers: <value of string>
ntlm-guest: <value in [disable, enable]>
outbound: <value in [disable, enable]>
per-ip-shaper: <value of string>
permit-any-host: <value in [disable, enable]>
permit-stun-host: <value in [disable, enable]>
policyid: <value of integer>
poolname: <value of string>
profile-group: <value of string>
profile-protocol-options: <value of string>
profile-type: <value in [single, group]>
radius-mac-auth-bypass: <value in [disable, enable]>
redirect-url: <value of string>
replacemsg-override-group: <value of string>
rsso: <value in [disable, enable]>
rtp-addr: <value of string>
rtp-nat: <value in [disable, enable]>
scan-botnet-connections: <value in [disable, block, monitor]>
schedule: <value of string>
schedule-timeout: <value in [disable, enable]>
send-deny-packet: <value in [disable, enable]>
service: <value of string>
service-negate: <value in [disable, enable]>
session-ttl: <value of integer>
spamfilter-profile: <value of string>
srcaddr: <value of string>
srcaddr-negate: <value in [disable, enable]>
srcintf: <value of string>
ssl-mirror: <value in [disable, enable]>
ssl-mirror-intf: <value of string>
ssl-ssh-profile: <value of string>
status: <value in [disable, enable]>
tags: <value of string>
tcp-mss-receiver: <value of integer>
tcp-mss-sender: <value of integer>
tcp-session-without-syn: <value in [all, data-only, disable]>
timeout-send-rst: <value in [disable, enable]>
traffic-shaper: <value of string>
traffic-shaper-reverse: <value of string>
url-category: <value of string>
users: <value of string>
utm-status: <value in [disable, enable]>
uuid: <value of string>
vlan-cos-fwd: <value of integer>
vlan-cos-rev: <value of integer>
voip-profile: <value of string>
vpn_dst_node:
-
host: <value of string>
seq: <value of integer>
subnet: <value of string>
vpn_src_node:
-
host: <value of string>
seq: <value of integer>
subnet: <value of string>
vpntunnel: <value of string>
waf-profile: <value of string>
wanopt: <value in [disable, enable]>
wanopt-detection: <value in [active, passive, off]>
wanopt-passive-opt: <value in [default, transparent, non-transparent]>
wanopt-peer: <value of string>
wanopt-profile: <value of string>
wccp: <value in [disable, enable]>
webcache: <value in [disable, enable]>
webcache-https: <value in [disable, ssl-server, any, ...]>
webfilter-profile: <value of string>
wsso: <value in [disable, enable]>
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
request_url
string
|
always |
The full url requested
Sample:
/sys/login/user
|
response_code
integer
|
always |
The status of api request
|
response_message
string
|
always |
The descriptive message of the api response
Sample:
OK.
|
Authors
- Link Zheng (@chillancezen)
- Jie Xue (@JieX19)
- Frank Shen (@fshen01)
- Hongbin Lu (@fgtdev-hblu)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/fortinet/fortimanager/fmgr_pkg_firewall_policy_module.html