fortinet.fortimanager.fmgr_firewall_vip – Configure virtual IP for IPv4.

Note

This plugin is part of the fortinet.fortimanager collection (version 2.1.4).

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_firewall_vip.

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
    Choices:
  • no ←
  • yes
only set to True when module schema diffs with FortiManager API structure, module continues to execute without validating parameters
enable_log
boolean
    Choices:
  • no ←
  • yes
Enable/Disable logging for task
firewall_vip
dictionary
the top level parameters set
arp-reply
string
    Choices:
  • disable
  • enable
Enable to respond to ARP requests for this virtual IP address. Enabled by default.
color
integer
Color of icon on the GUI.
comment
string
Comment.
dns-mapping-ttl
integer
DNS mapping TTL (Set to zero to use TTL in DNS response, default = 0).
dynamic_mapping
list / elements=string
Dynamic_Mapping.
_scope
list / elements=string
_Scope.
name
string
Name.
vdom
string
Vdom.
arp-reply
string
    Choices:
  • disable
  • enable
Enable to respond to ARP requests for this virtual IP address. Enabled by default.
color
integer
Color of icon on the GUI.
comment
string
Comment.
dns-mapping-ttl
integer
DNS mapping TTL (Set to zero to use TTL in DNS response, default = 0).
extaddr
string
External FQDN address name.
extintf
string
Interface connected to the source network that receives the packets that will be forwarded to the destination network.
extip
string
IP address or address range on the external interface that you want to map to an address or address range on the desti...
extport
string
Incoming port number range that you want to map to a port number range on the destination network.
gratuitous-arp-interval
integer
Enable to have the VIP send gratuitous ARPs. 0=disabled. Set from 5 up to 8640000 seconds to enable.
http-cookie-age
integer
Time in minutes that client web browsers should keep a cookie. Default is 60 seconds. 0 = no time limit.
http-cookie-domain
string
Domain that HTTP cookie persistence should apply to.
http-cookie-domain-from-host
string
    Choices:
  • disable
  • enable
Enable/disable use of HTTP cookie domain from host field in HTTP.
http-cookie-generation
integer
Generation of HTTP cookie to be accepted. Changing invalidates all existing cookies.
http-cookie-path
string
Limit HTTP cookie persistence to the specified path.
http-cookie-share
string
    Choices:
  • disable
  • same-ip
Control sharing of cookies across virtual servers. same-ip means a cookie from one virtual server can be used by anoth...
http-ip-header
string
    Choices:
  • disable
  • enable
For HTTP multiplexing, enable to add the original client IP address in the XForwarded-For HTTP header.
http-ip-header-name
string
For HTTP multiplexing, enter a custom HTTPS header name. The original client IP address is added to this header. If em...
http-multiplex
string
    Choices:
  • disable
  • enable
Enable/disable HTTP multiplexing.
http-redirect
string
    Choices:
  • disable
  • enable
Enable/disable redirection of HTTP to HTTPS
https-cookie-secure
string
    Choices:
  • disable
  • enable
Enable/disable verification that inserted HTTPS cookies are secure.
id
integer
Custom defined ID.
ldb-method
string
    Choices:
  • static
  • round-robin
  • weighted
  • least-session
  • least-rtt
  • first-alive
  • http-host
Method used to distribute sessions to real servers.
mapped-addr
string
Mapped FQDN address name.
mappedip
string
IP address or address range on the destination network to which the external IP address is mapped.
mappedport
string
Port number range on the destination network to which the external port number range is mapped.
max-embryonic-connections
integer
Maximum number of incomplete connections.
monitor
string
Name of the health check monitor to use when polling to determine a virtual servers connectivity status.
nat-source-vip
string
    Choices:
  • disable
  • enable
Enable/disable forcing the source NAT mapped IP to the external IP for all traffic.
outlook-web-access
string
    Choices:
  • disable
  • enable
Enable to add the Front-End-Https header for Microsoft Outlook Web Access.
persistence
string
    Choices:
  • none
  • http-cookie
  • ssl-session-id
Configure how to make sure that clients connect to the same server every time they make a request that is part of the ...
portforward
string
    Choices:
  • disable
  • enable
Enable/disable port forwarding.
portmapping-type
string
    Choices:
  • 1-to-1
  • m-to-n
Port mapping type.
protocol
string
    Choices:
  • tcp
  • udp
  • sctp
  • icmp
Protocol to use when forwarding packets.
realservers
list / elements=string
Realservers.
address
string
Address.
client-ip
string
Only clients in this IP range can connect to this real server.
healthcheck
string
    Choices:
  • disable
  • enable
  • vip
Enable to check the responsiveness of the real server before forwarding traffic.
holddown-interval
integer
Time in seconds that the health check monitor continues to monitor and unresponsive server that should be active.
http-host
string
HTTP server domain name in HTTP header.
id
integer
Real server ID.
ip
string
IP address of the real server.
max-connections
integer
Max number of active connections that can be directed to the real server. When reached, sessions are sent to o...
monitor
string
Name of the health check monitor to use when polling to determine a virtual servers connectivity status.
port
integer
Port for communicating with the real server. Required if port forwarding is enabled.
seq
integer
Seq.
status
string
    Choices:
  • active
  • standby
  • disable
Set the status of the real server to active so that it can accept traffic, or on standby or disabled so no tra...
type
string
    Choices:
  • ip
  • address
Type.
weight
integer
Weight of the real server. If weighted load balancing is enabled, the server with the highest weight gets more...
server-type
string
    Choices:
  • http
  • https
  • ssl
  • tcp
  • udp
  • ip
  • imaps
  • pop3s
  • smtps
  • ssh
Protocol to be load balanced by the virtual server (also called the server load balance virtual IP).
service
string
Service name.
src-filter
string
Source address filter. Each address must be either an IP/subnet (x.x.x.x/n) or a range (x.x.x.x-y.y.y.y). Separate addresses with spaces.
srcintf-filter
string
Interfaces to which the VIP applies. Separate the names with spaces.
ssl-algorithm
string
    Choices:
  • high
  • medium
  • low
  • custom
Permitted encryption algorithms for SSL sessions according to encryption strength.
ssl-certificate
string
The name of the SSL certificate to use for SSL acceleration.
ssl-cipher-suites
list / elements=string
Ssl-Cipher-Suites.
cipher
string
    Choices:
  • TLS-RSA-WITH-RC4-128-MD5
  • TLS-RSA-WITH-RC4-128-SHA
  • TLS-RSA-WITH-DES-CBC-SHA
  • TLS-RSA-WITH-3DES-EDE-CBC-SHA
  • TLS-RSA-WITH-AES-128-CBC-SHA
  • TLS-RSA-WITH-AES-256-CBC-SHA
  • TLS-RSA-WITH-AES-128-CBC-SHA256
  • TLS-RSA-WITH-AES-256-CBC-SHA256
  • TLS-RSA-WITH-CAMELLIA-128-CBC-SHA
  • TLS-RSA-WITH-CAMELLIA-256-CBC-SHA
  • TLS-RSA-WITH-CAMELLIA-128-CBC-SHA256
  • TLS-RSA-WITH-CAMELLIA-256-CBC-SHA256
  • TLS-RSA-WITH-SEED-CBC-SHA
  • TLS-RSA-WITH-ARIA-128-CBC-SHA256
  • TLS-RSA-WITH-ARIA-256-CBC-SHA384
  • TLS-DHE-RSA-WITH-DES-CBC-SHA
  • TLS-DHE-RSA-WITH-3DES-EDE-CBC-SHA
  • TLS-DHE-RSA-WITH-AES-128-CBC-SHA
  • TLS-DHE-RSA-WITH-AES-256-CBC-SHA
  • TLS-DHE-RSA-WITH-AES-128-CBC-SHA256
  • TLS-DHE-RSA-WITH-AES-256-CBC-SHA256
  • TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA
  • TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA
  • TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA256
  • TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA256
  • TLS-DHE-RSA-WITH-SEED-CBC-SHA
  • TLS-DHE-RSA-WITH-ARIA-128-CBC-SHA256
  • TLS-DHE-RSA-WITH-ARIA-256-CBC-SHA384
  • TLS-ECDHE-RSA-WITH-RC4-128-SHA
  • TLS-ECDHE-RSA-WITH-3DES-EDE-CBC-SHA
  • TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA
  • TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA
  • TLS-ECDHE-RSA-WITH-CHACHA20-POLY1305-SHA256
  • TLS-ECDHE-ECDSA-WITH-CHACHA20-POLY1305-SHA256
  • TLS-DHE-RSA-WITH-CHACHA20-POLY1305-SHA256
  • TLS-DHE-RSA-WITH-AES-128-GCM-SHA256
  • TLS-DHE-RSA-WITH-AES-256-GCM-SHA384
  • TLS-DHE-DSS-WITH-AES-128-CBC-SHA
  • TLS-DHE-DSS-WITH-AES-256-CBC-SHA
  • TLS-DHE-DSS-WITH-AES-128-CBC-SHA256
  • TLS-DHE-DSS-WITH-AES-128-GCM-SHA256
  • TLS-DHE-DSS-WITH-AES-256-CBC-SHA256
  • TLS-DHE-DSS-WITH-AES-256-GCM-SHA384
  • TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA256
  • TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256
  • TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA384
  • TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384
  • TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA
  • TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA256
  • TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256
  • TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA384
  • TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384
  • TLS-RSA-WITH-AES-128-GCM-SHA256
  • TLS-RSA-WITH-AES-256-GCM-SHA384
  • TLS-DHE-DSS-WITH-CAMELLIA-128-CBC-SHA
  • TLS-DHE-DSS-WITH-CAMELLIA-256-CBC-SHA
  • TLS-DHE-DSS-WITH-CAMELLIA-128-CBC-SHA256
  • TLS-DHE-DSS-WITH-CAMELLIA-256-CBC-SHA256
  • TLS-DHE-DSS-WITH-SEED-CBC-SHA
  • TLS-DHE-DSS-WITH-ARIA-128-CBC-SHA256
  • TLS-DHE-DSS-WITH-ARIA-256-CBC-SHA384
  • TLS-ECDHE-RSA-WITH-ARIA-128-CBC-SHA256
  • TLS-ECDHE-RSA-WITH-ARIA-256-CBC-SHA384
  • TLS-ECDHE-ECDSA-WITH-ARIA-128-CBC-SHA256
  • TLS-ECDHE-ECDSA-WITH-ARIA-256-CBC-SHA384
  • TLS-DHE-DSS-WITH-3DES-EDE-CBC-SHA
  • TLS-DHE-DSS-WITH-DES-CBC-SHA
  • TLS-AES-128-GCM-SHA256
  • TLS-AES-256-GCM-SHA384
  • TLS-CHACHA20-POLY1305-SHA256
Cipher suite name.
id
integer
Id.
priority
integer
SSL/TLS cipher suites priority.
versions
list / elements=string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • tls-1.3
SSL/TLS versions that the cipher suite can be used with.
ssl-client-fallback
string
    Choices:
  • disable
  • enable
Enable/disable support for preventing Downgrade Attacks on client connections (RFC 7507).
ssl-client-rekey-count
integer
Maximum length of data in MB before triggering a client rekey (0 = disable).
ssl-client-renegotiation
string
    Choices:
  • deny
  • allow
  • secure
Allow, deny, or require secure renegotiation of client sessions to comply with RFC 5746.
ssl-client-session-state-max
integer
Maximum number of client to FortiGate SSL session states to keep.
ssl-client-session-state-timeout
integer
Number of minutes to keep client to FortiGate SSL session state.
ssl-client-session-state-type
string
    Choices:
  • disable
  • time
  • count
  • both
How to expire SSL sessions for the segment of the SSL connection between the client and the FortiGate.
ssl-dh-bits
string
    Choices:
  • 768
  • 1024
  • 1536
  • 2048
  • 3072
  • 4096
Number of bits to use in the Diffie-Hellman exchange for RSA encryption of SSL sessions.
ssl-hpkp
string
    Choices:
  • disable
  • enable
  • report-only
Enable/disable including HPKP header in response.
ssl-hpkp-age
integer
Number of seconds the client should honour the HPKP setting.
ssl-hpkp-backup
string
Certificate to generate backup HPKP pin from.
ssl-hpkp-include-subdomains
string
    Choices:
  • disable
  • enable
Indicate that HPKP header applies to all subdomains.
ssl-hpkp-primary
string
Certificate to generate primary HPKP pin from.
ssl-hpkp-report-uri
string
URL to report HPKP violations to.
ssl-hsts
string
    Choices:
  • disable
  • enable
Enable/disable including HSTS header in response.
ssl-hsts-age
integer
Number of seconds the client should honour the HSTS setting.
ssl-hsts-include-subdomains
string
    Choices:
  • disable
  • enable
Indicate that HSTS header applies to all subdomains.
ssl-http-location-conversion
string
    Choices:
  • disable
  • enable
Enable to replace HTTP with HTTPS in the replys Location HTTP header field.
ssl-http-match-host
string
    Choices:
  • disable
  • enable
Enable/disable HTTP host matching for location conversion.
ssl-max-version
string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • tls-1.3
Highest SSL/TLS version acceptable from a client.
ssl-min-version
string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • tls-1.3
Lowest SSL/TLS version acceptable from a client.
ssl-mode
string
    Choices:
  • half
  • full
Apply SSL offloading between the client and the FortiGate (half) or from the client to the FortiGate and from the Fort...
ssl-pfs
string
    Choices:
  • require
  • deny
  • allow
Select the cipher suites that can be used for SSL perfect forward secrecy (PFS). Applies to both client and server ses...
ssl-send-empty-frags
string
    Choices:
  • disable
  • enable
Enable/disable sending empty fragments to avoid CBC IV attacks (SSL 3.0 & TLS 1.0 only). May need to be disabled for c...
ssl-server-algorithm
string
    Choices:
  • high
  • low
  • medium
  • custom
  • client
Permitted encryption algorithms for the server side of SSL full mode sessions according to encryption strength.
ssl-server-max-version
string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • client
  • tls-1.3
Highest SSL/TLS version acceptable from a server. Use the client setting by default.
ssl-server-min-version
string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • client
  • tls-1.3
Lowest SSL/TLS version acceptable from a server. Use the client setting by default.
ssl-server-session-state-max
integer
Maximum number of FortiGate to Server SSL session states to keep.
ssl-server-session-state-timeout
integer
Number of minutes to keep FortiGate to Server SSL session state.
ssl-server-session-state-type
string
    Choices:
  • disable
  • time
  • count
  • both
How to expire SSL sessions for the segment of the SSL connection between the server and the FortiGate.
status
string
    Choices:
  • disable
  • enable
Enable/disable VIP.
type
string
    Choices:
  • static-nat
  • load-balance
  • server-load-balance
  • dns-translation
  • fqdn
  • access-proxy
Configure a static NAT, load balance, server load balance, DNS translation, or FQDN VIP.
uuid
string
Universally Unique Identifier (UUID; automatically assigned but can be manually reset).
weblogic-server
string
    Choices:
  • disable
  • enable
Enable to add an HTTP header to indicate SSL offloading for a WebLogic server.
websphere-server
string
    Choices:
  • disable
  • enable
Enable to add an HTTP header to indicate SSL offloading for a WebSphere server.
extaddr
string
External FQDN address name.
extintf
string
Interface connected to the source network that receives the packets that will be forwarded to the destination network.
extip
string
IP address or address range on the external interface that you want to map to an address or address range on the destination n...
extport
string
Incoming port number range that you want to map to a port number range on the destination network.
gratuitous-arp-interval
integer
Enable to have the VIP send gratuitous ARPs. 0=disabled. Set from 5 up to 8640000 seconds to enable.
http-cookie-age
integer
Time in minutes that client web browsers should keep a cookie. Default is 60 seconds. 0 = no time limit.
http-cookie-domain
string
Domain that HTTP cookie persistence should apply to.
http-cookie-domain-from-host
string
    Choices:
  • disable
  • enable
Enable/disable use of HTTP cookie domain from host field in HTTP.
http-cookie-generation
integer
Generation of HTTP cookie to be accepted. Changing invalidates all existing cookies.
http-cookie-path
string
Limit HTTP cookie persistence to the specified path.
http-cookie-share
string
    Choices:
  • disable
  • same-ip
Control sharing of cookies across virtual servers. same-ip means a cookie from one virtual server can be used by another. Disa...
http-ip-header
string
    Choices:
  • disable
  • enable
For HTTP multiplexing, enable to add the original client IP address in the XForwarded-For HTTP header.
http-ip-header-name
string
For HTTP multiplexing, enter a custom HTTPS header name. The original client IP address is added to this header. If empty, X-F...
http-multiplex
string
    Choices:
  • disable
  • enable
Enable/disable HTTP multiplexing.
http-redirect
string
    Choices:
  • disable
  • enable
Enable/disable redirection of HTTP to HTTPS
https-cookie-secure
string
    Choices:
  • disable
  • enable
Enable/disable verification that inserted HTTPS cookies are secure.
id
integer
Custom defined ID.
ldb-method
string
    Choices:
  • static
  • round-robin
  • weighted
  • least-session
  • least-rtt
  • first-alive
  • http-host
Method used to distribute sessions to real servers.
mapped-addr
string
Mapped FQDN address name.
mappedip
string
IP address or address range on the destination network to which the external IP address is mapped.
mappedport
string
Port number range on the destination network to which the external port number range is mapped.
max-embryonic-connections
integer
Maximum number of incomplete connections.
monitor
string
Name of the health check monitor to use when polling to determine a virtual servers connectivity status.
name
string
Virtual IP name.
nat-source-vip
string
    Choices:
  • disable
  • enable
Enable/disable forcing the source NAT mapped IP to the external IP for all traffic.
outlook-web-access
string
    Choices:
  • disable
  • enable
Enable to add the Front-End-Https header for Microsoft Outlook Web Access.
persistence
string
    Choices:
  • none
  • http-cookie
  • ssl-session-id
Configure how to make sure that clients connect to the same server every time they make a request that is part of the same ses...
portforward
string
    Choices:
  • disable
  • enable
Enable/disable port forwarding.
portmapping-type
string
    Choices:
  • 1-to-1
  • m-to-n
Port mapping type.
protocol
string
    Choices:
  • tcp
  • udp
  • sctp
  • icmp
Protocol to use when forwarding packets.
realservers
list / elements=string
Realservers.
address
string
Dynamic address of the real server.
client-ip
string
Only clients in this IP range can connect to this real server.
healthcheck
string
    Choices:
  • disable
  • enable
  • vip
Enable to check the responsiveness of the real server before forwarding traffic.
holddown-interval
integer
Time in seconds that the health check monitor continues to monitor and unresponsive server that should be active.
http-host
string
HTTP server domain name in HTTP header.
id
integer
Real server ID.
ip
string
IP address of the real server.
max-connections
integer
Max number of active connections that can be directed to the real server. When reached, sessions are sent to other rea...
monitor
string
Name of the health check monitor to use when polling to determine a virtual servers connectivity status.
port
integer
Port for communicating with the real server. Required if port forwarding is enabled.
seq
integer
Seq.
status
string
    Choices:
  • active
  • standby
  • disable
Set the status of the real server to active so that it can accept traffic, or on standby or disabled so no traffic is ...
type
string
    Choices:
  • ip
  • address
Type of address.
weight
integer
Weight of the real server. If weighted load balancing is enabled, the server with the highest weight gets more connect...
server-type
string
    Choices:
  • http
  • https
  • ssl
  • tcp
  • udp
  • ip
  • imaps
  • pop3s
  • smtps
  • ssh
Protocol to be load balanced by the virtual server (also called the server load balance virtual IP).
service
string
Service name.
src-filter
string
Source address filter. Each address must be either an IP/subnet (x.x.x.x/n) or a range (x.x.x.x-y.y.y.y). Separate addresses with spaces.
srcintf-filter
string
Interfaces to which the VIP applies. Separate the names with spaces.
ssl-algorithm
string
    Choices:
  • high
  • medium
  • low
  • custom
Permitted encryption algorithms for SSL sessions according to encryption strength.
ssl-certificate
string
The name of the SSL certificate to use for SSL acceleration.
ssl-cipher-suites
list / elements=string
Ssl-Cipher-Suites.
cipher
string
    Choices:
  • TLS-RSA-WITH-RC4-128-MD5
  • TLS-RSA-WITH-RC4-128-SHA
  • TLS-RSA-WITH-DES-CBC-SHA
  • TLS-RSA-WITH-3DES-EDE-CBC-SHA
  • TLS-RSA-WITH-AES-128-CBC-SHA
  • TLS-RSA-WITH-AES-256-CBC-SHA
  • TLS-RSA-WITH-AES-128-CBC-SHA256
  • TLS-RSA-WITH-AES-256-CBC-SHA256
  • TLS-RSA-WITH-CAMELLIA-128-CBC-SHA
  • TLS-RSA-WITH-CAMELLIA-256-CBC-SHA
  • TLS-RSA-WITH-CAMELLIA-128-CBC-SHA256
  • TLS-RSA-WITH-CAMELLIA-256-CBC-SHA256
  • TLS-RSA-WITH-SEED-CBC-SHA
  • TLS-RSA-WITH-ARIA-128-CBC-SHA256
  • TLS-RSA-WITH-ARIA-256-CBC-SHA384
  • TLS-DHE-RSA-WITH-DES-CBC-SHA
  • TLS-DHE-RSA-WITH-3DES-EDE-CBC-SHA
  • TLS-DHE-RSA-WITH-AES-128-CBC-SHA
  • TLS-DHE-RSA-WITH-AES-256-CBC-SHA
  • TLS-DHE-RSA-WITH-AES-128-CBC-SHA256
  • TLS-DHE-RSA-WITH-AES-256-CBC-SHA256
  • TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA
  • TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA
  • TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA256
  • TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA256
  • TLS-DHE-RSA-WITH-SEED-CBC-SHA
  • TLS-DHE-RSA-WITH-ARIA-128-CBC-SHA256
  • TLS-DHE-RSA-WITH-ARIA-256-CBC-SHA384
  • TLS-ECDHE-RSA-WITH-RC4-128-SHA
  • TLS-ECDHE-RSA-WITH-3DES-EDE-CBC-SHA
  • TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA
  • TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA
  • TLS-ECDHE-RSA-WITH-CHACHA20-POLY1305-SHA256
  • TLS-ECDHE-ECDSA-WITH-CHACHA20-POLY1305-SHA256
  • TLS-DHE-RSA-WITH-CHACHA20-POLY1305-SHA256
  • TLS-DHE-RSA-WITH-AES-128-GCM-SHA256
  • TLS-DHE-RSA-WITH-AES-256-GCM-SHA384
  • TLS-DHE-DSS-WITH-AES-128-CBC-SHA
  • TLS-DHE-DSS-WITH-AES-256-CBC-SHA
  • TLS-DHE-DSS-WITH-AES-128-CBC-SHA256
  • TLS-DHE-DSS-WITH-AES-128-GCM-SHA256
  • TLS-DHE-DSS-WITH-AES-256-CBC-SHA256
  • TLS-DHE-DSS-WITH-AES-256-GCM-SHA384
  • TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA256
  • TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256
  • TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA384
  • TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384
  • TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA
  • TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA256
  • TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256
  • TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA384
  • TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384
  • TLS-RSA-WITH-AES-128-GCM-SHA256
  • TLS-RSA-WITH-AES-256-GCM-SHA384
  • TLS-DHE-DSS-WITH-CAMELLIA-128-CBC-SHA
  • TLS-DHE-DSS-WITH-CAMELLIA-256-CBC-SHA
  • TLS-DHE-DSS-WITH-CAMELLIA-128-CBC-SHA256
  • TLS-DHE-DSS-WITH-CAMELLIA-256-CBC-SHA256
  • TLS-DHE-DSS-WITH-SEED-CBC-SHA
  • TLS-DHE-DSS-WITH-ARIA-128-CBC-SHA256
  • TLS-DHE-DSS-WITH-ARIA-256-CBC-SHA384
  • TLS-ECDHE-RSA-WITH-ARIA-128-CBC-SHA256
  • TLS-ECDHE-RSA-WITH-ARIA-256-CBC-SHA384
  • TLS-ECDHE-ECDSA-WITH-ARIA-128-CBC-SHA256
  • TLS-ECDHE-ECDSA-WITH-ARIA-256-CBC-SHA384
  • TLS-DHE-DSS-WITH-3DES-EDE-CBC-SHA
  • TLS-DHE-DSS-WITH-DES-CBC-SHA
  • TLS-AES-128-GCM-SHA256
  • TLS-AES-256-GCM-SHA384
  • TLS-CHACHA20-POLY1305-SHA256
Cipher suite name.
id
integer
Id.
priority
integer
SSL/TLS cipher suites priority.
versions
list / elements=string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • tls-1.3
SSL/TLS versions that the cipher suite can be used with.
ssl-client-fallback
string
    Choices:
  • disable
  • enable
Enable/disable support for preventing Downgrade Attacks on client connections (RFC 7507).
ssl-client-rekey-count
integer
Maximum length of data in MB before triggering a client rekey (0 = disable).
ssl-client-renegotiation
string
    Choices:
  • deny
  • allow
  • secure
Allow, deny, or require secure renegotiation of client sessions to comply with RFC 5746.
ssl-client-session-state-max
integer
Maximum number of client to FortiGate SSL session states to keep.
ssl-client-session-state-timeout
integer
Number of minutes to keep client to FortiGate SSL session state.
ssl-client-session-state-type
string
    Choices:
  • disable
  • time
  • count
  • both
How to expire SSL sessions for the segment of the SSL connection between the client and the FortiGate.
ssl-dh-bits
string
    Choices:
  • 768
  • 1024
  • 1536
  • 2048
  • 3072
  • 4096
Number of bits to use in the Diffie-Hellman exchange for RSA encryption of SSL sessions.
ssl-hpkp
string
    Choices:
  • disable
  • enable
  • report-only
Enable/disable including HPKP header in response.
ssl-hpkp-age
integer
Number of seconds the client should honour the HPKP setting.
ssl-hpkp-backup
string
Certificate to generate backup HPKP pin from.
ssl-hpkp-include-subdomains
string
    Choices:
  • disable
  • enable
Indicate that HPKP header applies to all subdomains.
ssl-hpkp-primary
string
Certificate to generate primary HPKP pin from.
ssl-hpkp-report-uri
string
URL to report HPKP violations to.
ssl-hsts
string
    Choices:
  • disable
  • enable
Enable/disable including HSTS header in response.
ssl-hsts-age
integer
Number of seconds the client should honour the HSTS setting.
ssl-hsts-include-subdomains
string
    Choices:
  • disable
  • enable
Indicate that HSTS header applies to all subdomains.
ssl-http-location-conversion
string
    Choices:
  • disable
  • enable
Enable to replace HTTP with HTTPS in the replys Location HTTP header field.
ssl-http-match-host
string
    Choices:
  • disable
  • enable
Enable/disable HTTP host matching for location conversion.
ssl-max-version
string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • tls-1.3
Highest SSL/TLS version acceptable from a client.
ssl-min-version
string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • tls-1.3
Lowest SSL/TLS version acceptable from a client.
ssl-mode
string
    Choices:
  • half
  • full
Apply SSL offloading between the client and the FortiGate (half) or from the client to the FortiGate and from the FortiGate to...
ssl-pfs
string
    Choices:
  • require
  • deny
  • allow
Select the cipher suites that can be used for SSL perfect forward secrecy (PFS). Applies to both client and server sessions.
ssl-send-empty-frags
string
    Choices:
  • disable
  • enable
Enable/disable sending empty fragments to avoid CBC IV attacks (SSL 3.0 & TLS 1.0 only). May need to be disabled for compatibi...
ssl-server-algorithm
string
    Choices:
  • high
  • low
  • medium
  • custom
  • client
Permitted encryption algorithms for the server side of SSL full mode sessions according to encryption strength.
ssl-server-cipher-suites
list / elements=string
Ssl-Server-Cipher-Suites.
cipher
string
    Choices:
  • TLS-RSA-WITH-RC4-128-MD5
  • TLS-RSA-WITH-RC4-128-SHA
  • TLS-RSA-WITH-DES-CBC-SHA
  • TLS-RSA-WITH-3DES-EDE-CBC-SHA
  • TLS-RSA-WITH-AES-128-CBC-SHA
  • TLS-RSA-WITH-AES-256-CBC-SHA
  • TLS-RSA-WITH-AES-128-CBC-SHA256
  • TLS-RSA-WITH-AES-256-CBC-SHA256
  • TLS-RSA-WITH-CAMELLIA-128-CBC-SHA
  • TLS-RSA-WITH-CAMELLIA-256-CBC-SHA
  • TLS-RSA-WITH-CAMELLIA-128-CBC-SHA256
  • TLS-RSA-WITH-CAMELLIA-256-CBC-SHA256
  • TLS-RSA-WITH-SEED-CBC-SHA
  • TLS-RSA-WITH-ARIA-128-CBC-SHA256
  • TLS-RSA-WITH-ARIA-256-CBC-SHA384
  • TLS-DHE-RSA-WITH-DES-CBC-SHA
  • TLS-DHE-RSA-WITH-3DES-EDE-CBC-SHA
  • TLS-DHE-RSA-WITH-AES-128-CBC-SHA
  • TLS-DHE-RSA-WITH-AES-256-CBC-SHA
  • TLS-DHE-RSA-WITH-AES-128-CBC-SHA256
  • TLS-DHE-RSA-WITH-AES-256-CBC-SHA256
  • TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA
  • TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA
  • TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA256
  • TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA256
  • TLS-DHE-RSA-WITH-SEED-CBC-SHA
  • TLS-DHE-RSA-WITH-ARIA-128-CBC-SHA256
  • TLS-DHE-RSA-WITH-ARIA-256-CBC-SHA384
  • TLS-ECDHE-RSA-WITH-RC4-128-SHA
  • TLS-ECDHE-RSA-WITH-3DES-EDE-CBC-SHA
  • TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA
  • TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA
  • TLS-ECDHE-RSA-WITH-CHACHA20-POLY1305-SHA256
  • TLS-ECDHE-ECDSA-WITH-CHACHA20-POLY1305-SHA256
  • TLS-DHE-RSA-WITH-CHACHA20-POLY1305-SHA256
  • TLS-DHE-RSA-WITH-AES-128-GCM-SHA256
  • TLS-DHE-RSA-WITH-AES-256-GCM-SHA384
  • TLS-DHE-DSS-WITH-AES-128-CBC-SHA
  • TLS-DHE-DSS-WITH-AES-256-CBC-SHA
  • TLS-DHE-DSS-WITH-AES-128-CBC-SHA256
  • TLS-DHE-DSS-WITH-AES-128-GCM-SHA256
  • TLS-DHE-DSS-WITH-AES-256-CBC-SHA256
  • TLS-DHE-DSS-WITH-AES-256-GCM-SHA384
  • TLS-ECDHE-RSA-WITH-AES-128-CBC-SHA256
  • TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256
  • TLS-ECDHE-RSA-WITH-AES-256-CBC-SHA384
  • TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384
  • TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA
  • TLS-ECDHE-ECDSA-WITH-AES-128-CBC-SHA256
  • TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256
  • TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA384
  • TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384
  • TLS-RSA-WITH-AES-128-GCM-SHA256
  • TLS-RSA-WITH-AES-256-GCM-SHA384
  • TLS-DHE-DSS-WITH-CAMELLIA-128-CBC-SHA
  • TLS-DHE-DSS-WITH-CAMELLIA-256-CBC-SHA
  • TLS-DHE-DSS-WITH-CAMELLIA-128-CBC-SHA256
  • TLS-DHE-DSS-WITH-CAMELLIA-256-CBC-SHA256
  • TLS-DHE-DSS-WITH-SEED-CBC-SHA
  • TLS-DHE-DSS-WITH-ARIA-128-CBC-SHA256
  • TLS-DHE-DSS-WITH-ARIA-256-CBC-SHA384
  • TLS-ECDHE-RSA-WITH-ARIA-128-CBC-SHA256
  • TLS-ECDHE-RSA-WITH-ARIA-256-CBC-SHA384
  • TLS-ECDHE-ECDSA-WITH-ARIA-128-CBC-SHA256
  • TLS-ECDHE-ECDSA-WITH-ARIA-256-CBC-SHA384
  • TLS-DHE-DSS-WITH-3DES-EDE-CBC-SHA
  • TLS-DHE-DSS-WITH-DES-CBC-SHA
  • TLS-AES-128-GCM-SHA256
  • TLS-AES-256-GCM-SHA384
  • TLS-CHACHA20-POLY1305-SHA256
Cipher suite name.
priority
integer
SSL/TLS cipher suites priority.
versions
list / elements=string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • tls-1.3
SSL/TLS versions that the cipher suite can be used with.
ssl-server-max-version
string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • client
  • tls-1.3
Highest SSL/TLS version acceptable from a server. Use the client setting by default.
ssl-server-min-version
string
    Choices:
  • ssl-3.0
  • tls-1.0
  • tls-1.1
  • tls-1.2
  • client
  • tls-1.3
Lowest SSL/TLS version acceptable from a server. Use the client setting by default.
ssl-server-session-state-max
integer
Maximum number of FortiGate to Server SSL session states to keep.
ssl-server-session-state-timeout
integer
Number of minutes to keep FortiGate to Server SSL session state.
ssl-server-session-state-type
string
    Choices:
  • disable
  • time
  • count
  • both
How to expire SSL sessions for the segment of the SSL connection between the server and the FortiGate.
status
string
    Choices:
  • disable
  • enable
Enable/disable VIP.
type
string
    Choices:
  • static-nat
  • load-balance
  • server-load-balance
  • dns-translation
  • fqdn
  • access-proxy
Configure a static NAT, load balance, DNS translation, or FQDN VIP.
uuid
string
Universally Unique Identifier (UUID; automatically assigned but can be manually reset).
weblogic-server
string
    Choices:
  • disable
  • enable
Enable to add an HTTP header to indicate SSL offloading for a WebLogic server.
websphere-server
string
    Choices:
  • disable
  • enable
Enable to add an HTTP header to indicate SSL offloading for a WebSphere server.
proposed_method
string
    Choices:
  • update
  • set
  • add
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
    Choices:
  • 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: fortimanager00
  collections:
    - fortinet.fortimanager
  connection: httpapi
  vars:
     ansible_httpapi_use_ssl: True
     ansible_httpapi_validate_certs: False
     ansible_httpapi_port: 443
  tasks:
   - name: Configure virtual IP for IPv4.
     fmgr_firewall_vip:
        bypass_validation: True
        adom: ansible
        state: present
        firewall_vip:
           arp-reply: disable #<value in [disable, enable]>
           color: 1
           comment: 'ansible-comment'
           id: 1
           name: 'ansible-test-vip'
           protocol: tcp #<value in [tcp, udp, sctp, ...]>
           type: load-balance #<value in [static-nat, load-balance, server-load-balance, ...]>

- name: Demo of cloning objects in FortiManager
  hosts: fortimanager00
  connection: httpapi
  collections:
    - fortinet.fortimanager
  vars:
    ansible_httpapi_use_ssl: True
    ansible_httpapi_validate_certs: False
    ansible_httpapi_port: 443
    initial_vip_object: 'vip_object0'
    cloned_vip_objects:
        - name: 'vip_object1'
          comment: 'vip_object1 is cloned!'
        - name: 'vip_object2'
          comment: 'vip_object2 is cloned!'
  tasks:
    - name: Create An VIP object
      fmgr_firewall_vip:
        adom: 'root'
        state: 'present'
        firewall_vip:
            arp-reply: 'disable'
            comment: 'The VIP is created via Ansible'
            name: '{{ initial_vip_object }}'
            protocol: 'tcp'
            type: 'load-balance'
    - name: Clone an VIP object using fmgr_clone module.
      fmgr_clone:
        rc_succeeded: [-2]
        clone:
         selector: 'firewall_vip'
         self:
           adom: 'root'
           vip: '{{ initial_vip_object }}'
         target:
           name: '{{ item.name }}'
           comment: '{{ item.comment }}'
      with_items: '{{ cloned_vip_objects }}'

- name: gathering fortimanager facts
  hosts: fortimanager00
  gather_facts: no
  connection: httpapi
  collections:
    - fortinet.fortimanager
  vars:
    ansible_httpapi_use_ssl: True
    ansible_httpapi_validate_certs: False
    ansible_httpapi_port: 443
  tasks:
   - name: retrieve all the virtual IPs for IPv4
     fmgr_fact:
       facts:
           selector: 'firewall_vip'
           params:
               adom: 'ansible'
               vip: ''

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)