On this page
fortinet.fortimanager.fmgr_pkg_firewall_policy – Configure IPv4 policies.
Note
This plugin is part of the fortinet.fortimanager collection (version 2.1.3).
You might already have this collection installed if you are using the ansible
package. 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 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
|
||
enable_log
boolean
|
|
Enable/Disable logging for task
|
||
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).
|
||
anti-replay
string
|
|
Enable/disable anti-replay check.
|
||
app-category
string
|
Application category ID list.
|
|||
app-group
string
|
Application group names.
|
|||
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.
|
|||
best-route
string
|
|
Enable/disable the use of best route.
|
||
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.
|
||
cifs-profile
string
|
Name of an existing CIFS profile.
|
|||
comments
string
|
no description
|
|||
custom-log-fields
string
|
Custom fields to append to log messages for this policy.
|
|||
decrypted-traffic-mirror
string
|
Decrypted traffic mirror.
|
|||
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.
|
||
dstaddr6
string
|
Destination IPv6 address name and address group names.
|
|||
dstintf
string
|
Outgoing (egress) interface.
|
|||
dynamic-shaping
string
|
|
Enable/disable dynamic RADIUS defined traffic shaping.
|
||
email-collect
string
|
|
Enable/disable email collection.
|
||
emailfilter-profile
string
|
Name of an existing email filter profile.
|
|||
file-filter-profile
string
|
Name of an existing file-filter profile.
|
|||
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.
|
|||
fsso-groups
string
|
Names of FSSO groups.
|
|||
geoip-anycast
string
|
|
Enable/disable recognition of anycast IP addresses using the geography IP database.
|
||
geoip-match
string
|
|
Match geography address based either on its physical location or registered location.
|
||
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.
|
|||
http-policy-redirect
string
|
|
Redirect HTTP(S) traffic to matching transparent web proxy policy.
|
||
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.
|
||
inspection-mode
string
|
|
Policy inspection mode (Flow/proxy). Default is Flow mode.
|
||
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-custom-group
string
|
Custom Internet Service group name.
|
|||
internet-service-group
string
|
Internet Service group name.
|
|||
internet-service-id
string
|
Internet Service ID.
|
|||
internet-service-name
string
|
Internet Service name.
|
|||
internet-service-negate
string
|
|
When enabled internet-service specifies what the service must NOT be.
|
||
internet-service-src
string
|
|
Enable/disable use of Internet Services in source for this policy. If enabled, source address is not used.
|
||
internet-service-src-custom
string
|
Custom Internet Service source name.
|
|||
internet-service-src-custom-group
string
|
Custom Internet Service source group name.
|
|||
internet-service-src-group
string
|
Internet Service source group name.
|
|||
internet-service-src-id
string
|
Internet Service source ID.
|
|||
internet-service-src-name
string
|
Internet Service source name.
|
|||
internet-service-src-negate
string
|
|
When enabled internet-service-src 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.
|
||
match-vip-only
string
|
|
Enable/disable matching of only those 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.
|
||
np-acceleration
string
|
|
Enable/disable UTM Network Processor acceleration.
|
||
ntlm
string
|
|
Enable/disable NTLM authentication.
|
||
ntlm-enabled-browsers
string
|
no description
|
|||
ntlm-guest
string
|
|
Enable/disable NTLM guest user access.
|
||
object position
list / elements=string
|
no description
|
|||
outbound
string
|
|
Policy-based IPsec VPN: only traffic from the internal network can initiate a VPN.
|
||
passive-wan-health-measurement
string
|
|
Enable/disable passive WAN health measurement. When enabled, auto-asic-offload is disabled.
|
||
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.
|
|||
poolname6
string
|
IPv6 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.
|
|||
reputation-direction
string
|
|
Direction of the initial traffic for reputation to take effect.
|
||
reputation-minimum
integer
|
Minimum Reputation to take action.
|
|||
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.
|
|||
src-vendor-mac
string
|
Vendor MAC source ID.
|
|||
srcaddr
string
|
Source address and address group names.
|
|||
srcaddr-negate
string
|
|
When enabled srcaddr specifies what the source address must NOT be.
|
||
srcaddr6
string
|
Source IPv6 address name and address group names.
|
|||
srcintf
string
|
Incoming (ingress) interface.
|
|||
ssh-filter-profile
string
|
Name of an existing SSH filter profile.
|
|||
ssh-policy-redirect
string
|
|
Redirect SSH traffic to matching transparent proxy policy.
|
||
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.
|
||
tos
string
|
ToS (Type of Service) value used for comparison.
|
|||
tos-mask
string
|
Non-zero bit positions are used for comparison while zero bit positions are ignored.
|
|||
tos-negate
string
|
|
Enable negated TOS match.
|
||
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).
|
|||
videofilter-profile
string
|
Name of an existing VideoFilter profile.
|
|||
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..
|
|||
vlan-filter
string
|
Set VLAN filters.
|
|||
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.
|
|||
webproxy-forward-server
string
|
Webproxy forward server name.
|
|||
webproxy-profile
string
|
Webproxy profile name.
|
|||
wsso
string
|
|
Enable/disable WiFi Single Sign On (WSSO).
|
||
ztna-ems-tag
string
|
Source ztna-ems-tag names.
|
|||
ztna-geo-tag
string
|
Source ztna-geo-tag names.
|
|||
ztna-status
string
|
|
Enable/disable zero trust access.
|
||
proposed_method
string
|
|
The overridden method for the underlying Json RPC request
|
||
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]>
anti-replay: <value in [disable, enable]>
app-group: <value of string>
cifs-profile: <value of string>
email-collect: <value in [disable, enable]>
emailfilter-profile: <value of string>
fsso-groups: <value of string>
geoip-anycast: <value in [disable, enable]>
http-policy-redirect: <value in [disable, enable]>
inspection-mode: <value in [proxy, flow]>
internet-service-custom-group: <value of string>
internet-service-group: <value of string>
internet-service-src: <value in [disable, enable]>
internet-service-src-custom: <value of string>
internet-service-src-custom-group: <value of string>
internet-service-src-group: <value of string>
internet-service-src-id: <value of string>
internet-service-src-negate: <value in [disable, enable]>
match-vip-only: <value in [disable, enable]>
np-acceleration: <value in [disable, enable]>
reputation-direction: <value in [source, destination]>
reputation-minimum: <value of integer>
ssh-filter-profile: <value of string>
ssh-policy-redirect: <value in [disable, enable]>
tos: <value of string>
tos-mask: <value of string>
tos-negate: <value in [disable, enable]>
vlan-filter: <value of string>
webproxy-forward-server: <value of string>
webproxy-profile: <value of string>
best-route: <value in [disable, enable]>
decrypted-traffic-mirror: <value of string>
dstaddr6: <value of string>
geoip-match: <value in [physical-location, registered-location]>
internet-service-name: <value of string>
internet-service-src-name: <value of string>
poolname6: <value of string>
src-vendor-mac: <value of string>
srcaddr6: <value of string>
file-filter-profile: <value of string>
dynamic-shaping: <value in [disable, enable]>
passive-wan-health-measurement: <value in [disable, enable]>
videofilter-profile: <value of string>
ztna-ems-tag: <value of string>
ztna-geo-tag: <value of string>
ztna-status: <value in [disable, enable]>
object position: <value of list>
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/latest/collections/fortinet/fortimanager/fmgr_pkg_firewall_policy_module.html