fortinet.fortimanager.fmgr_pkg_firewall_policy – Configure IPv4 policies.

From Get docs
Ansible/docs/2.11/collections/fortinet/fortimanager/fmgr pkg firewall policy module


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

  • no

  • yes

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

  • deny
  • accept
  • ipsec
  • ssl-vpn

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

  • disable
  • enable

Enable/disable authentication-based routing.

auth-redirect-addr

string

HTTP-to-HTTPS redirect address for firewall authentication.

auto-asic-offload

string

  • disable
  • enable

Enable/disable offloading security profile processing to CP processors.

av-profile

string

Name of an existing Antivirus profile.

block-notification

string

  • disable
  • enable

Enable/disable block notification.

captive-portal-exempt

string

  • disable
  • enable

Enable to exempt some users from the captive portal.

capture-packet

string

  • disable
  • enable

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

  • disable
  • enable

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

  • disable
  • enable

Enable to change packets DiffServ values to the specified diffservcode-forward value.

diffserv-reverse

string

  • disable
  • enable

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

  • disable
  • enable

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

  • disable
  • enable

Enable DSCP check.

dscp-negate

string

  • disable
  • enable

Enable negated DSCP match.

dscp-value

string

DSCP value.

dsri

string

  • disable
  • enable

Enable DSRI to ignore HTTP server responses.

dstaddr

string

Destination address and address group names.

dstaddr-negate

string

  • disable
  • enable

When enabled dstaddr specifies what the destination address must NOT be.

dstintf

string

Outgoing (egress) interface.

firewall-session-dirty

string

  • check-all
  • check-new

How to handle sessions if the configuration of this firewall policy changes.

fixedport

string

  • disable
  • enable

Enable to prevent source NAT from changing a sessions source port.

fsso

string

  • disable
  • enable

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

  • disable
  • enable

Policy-based IPsec VPN: only traffic from the remote network can initiate a VPN.

internet-service

string

  • disable
  • enable

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

  • disable
  • enable

When enabled internet-service specifies what the service must NOT be.

ippool

string

  • disable
  • enable

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

  • disable
  • enable

Enable to allow everything, but log all of the meaningful data for security information gathering. A learning report will be g...

logtraffic

string

  • disable
  • enable
  • all
  • utm

Enable or disable logging. Log all sessions or security profile sessions.

logtraffic-start

string

  • disable
  • enable

Record logs when a session starts and ends.

match-vip

string

  • disable
  • enable

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

  • disable
  • enable

Enable/disable source NAT.

natinbound

string

  • disable
  • enable

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

  • disable
  • enable

Policy-based IPsec VPN: apply source NAT to outbound traffic.

ntlm

string

  • disable
  • enable

Enable/disable NTLM authentication.

ntlm-enabled-browsers

string

no description

ntlm-guest

string

  • disable
  • enable

Enable/disable NTLM guest user access.

outbound

string

  • disable
  • enable

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

  • disable
  • enable

Accept UDP packets from any host.

permit-stun-host

string

  • disable
  • enable

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

  • single
  • group

Determine whether the firewall policy allows security profile groups or single profiles only.

radius-mac-auth-bypass

string

  • disable
  • enable

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

  • disable
  • enable

Enable/disable RADIUS single sign-on (RSSO).

rtp-addr

string

Address names if this is an RTP NAT policy.

rtp-nat

string

  • disable
  • enable

Enable Real Time Protocol (RTP) NAT.

scan-botnet-connections

string

  • disable
  • block
  • monitor

Block or monitor connections to Botnet servers or disable Botnet scanning.

schedule

string

Schedule name.

schedule-timeout

string

  • disable
  • enable

Enable to force current sessions to end when the schedule object times out. Disable allows them to end from inactivity.

send-deny-packet

string

  • disable
  • enable

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

  • disable
  • enable

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

  • disable
  • enable

When enabled srcaddr specifies what the source address must NOT be.

srcintf

string

Incoming (ingress) interface.

ssl-mirror

string

  • disable
  • enable

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

  • disable
  • enable

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

  • all
  • data-only
  • disable

Enable/disable creation of TCP session without SYN flag.

timeout-send-rst

string

  • disable
  • enable

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

  • disable
  • enable

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

  • disable
  • enable

Enable/disable WAN optimization.

wanopt-detection

string

  • active
  • passive
  • off

WAN optimization auto-detection mode.

wanopt-passive-opt

string

  • default
  • transparent
  • non-transparent

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

  • disable
  • enable

Enable/disable forwarding traffic matching this policy to a configured WCCP server.

webcache

string

  • disable
  • enable

Enable/disable web cache.

webcache-https

string

  • disable
  • ssl-server
  • any
  • enable

Enable/disable web cache for HTTPS.

webfilter-profile

string

Name of an existing Web filter profile.

wsso

string

  • disable
  • enable

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

  • present
  • absent

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