fortinet.fortimanager.fmgr_system_fortiguard – Configure FortiGuard services.

Note

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

To install it use: ansible-galaxy collection install fortinet.fortimanager.

To use it in a playbook, specify: fortinet.fortimanager.fmgr_system_fortiguard.

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
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
system_fortiguard
dictionary
the top level parameters set
antispam-cache
string
    Choices:
  • disable
  • enable
Enable/disable FortiGuard antispam request caching. Uses a small amount of memory but improves performance.
antispam-cache-mpercent
integer
Maximum percent of FortiGate memory the antispam cache is allowed to use (1 - 15%).
antispam-cache-ttl
integer
Time-to-live for antispam cache entries in seconds (300 - 86400). Lower times reduce the cache size. Higher times may improve ...
antispam-expiration
integer
no description
antispam-force-off
string
    Choices:
  • disable
  • enable
Enable/disable turning off the FortiGuard antispam service.
antispam-license
integer
no description
antispam-timeout
integer
Antispam query time out (1 - 30 sec, default = 7).
anycast-sdns-server-ip
string
IP address of the FortiGuard anycast DNS rating server.
anycast-sdns-server-port
integer
Port to connect to on the FortiGuard anycast DNS rating server.
auto-join-forticloud
string
    Choices:
  • disable
  • enable
Automatically connect to and login to FortiCloud.
ddns-server-ip
string
IP address of the FortiDDNS server.
ddns-server-port
integer
Port used to communicate with FortiDDNS servers.
fortiguard-anycast
string
    Choices:
  • disable
  • enable
Enable/disable use of FortiGuards anycast network.
fortiguard-anycast-source
string
    Choices:
  • fortinet
  • aws
  • debug
Configure which of Fortinets servers to provide FortiGuard services in FortiGuards anycast network. Default is Fortinet.
interface
string
Specify outgoing interface to reach server.
interface-select-method
string
    Choices:
  • auto
  • sdwan
  • specify
Specify how to select outgoing interface to reach server.
load-balance-servers
integer
Number of servers to alternate between as first FortiGuard option.
outbreak-prevention-cache
string
    Choices:
  • disable
  • enable
Enable/disable FortiGuard Virus Outbreak Prevention cache.
outbreak-prevention-cache-mpercent
integer
Maximum percent of memory FortiGuard Virus Outbreak Prevention cache can use (1 - 15%, default = 2).
outbreak-prevention-cache-ttl
integer
Time-to-live for FortiGuard Virus Outbreak Prevention cache entries (300 - 86400 sec, default = 300).
outbreak-prevention-expiration
integer
no description
outbreak-prevention-force-off
string
    Choices:
  • disable
  • enable
Turn off FortiGuard Virus Outbreak Prevention service.
outbreak-prevention-license
integer
no description
outbreak-prevention-timeout
integer
FortiGuard Virus Outbreak Prevention time out (1 - 30 sec, default = 7).
persistent-connection
string
    Choices:
  • disable
  • enable
Enable/disable use of persistent connection to receive update notification from FortiGuard.
port
string
    Choices:
  • 53
  • 80
  • 8888
  • 443
Port used to communicate with the FortiGuard servers.
protocol
string
    Choices:
  • udp
  • http
  • https
Protocol used to communicate with the FortiGuard servers.
proxy-password
string
no description
proxy-server-ip
string
IP address of the proxy server.
proxy-server-port
integer
Port used to communicate with the proxy server.
proxy-username
string
Proxy user name.
sandbox-region
string
Cloud sandbox region.
sdns-options
list / elements=string
    Choices:
  • include-question-section
no description
sdns-server-ip
string
no description
sdns-server-port
integer
Port used to communicate with FortiDNS servers.
service-account-id
string
Service account ID.
source-ip
string
Source IPv4 address used to communicate with FortiGuard.
source-ip6
string
Source IPv6 address used to communicate with FortiGuard.
update-build-proxy
string
    Choices:
  • disable
  • enable
Enable/disable proxy dictionary rebuild.
update-extdb
string
    Choices:
  • disable
  • enable
Enable/disable external resource update.
update-ffdb
string
    Choices:
  • disable
  • enable
Enable/disable Internet Service Database update.
update-server-location
string
    Choices:
  • any
  • usa
Signature update server location.
update-uwdb
string
    Choices:
  • disable
  • enable
Enable/disable allowlist update.
videofilter-expiration
integer
no description
videofilter-license
integer
no description
webfilter-cache
string
    Choices:
  • disable
  • enable
Enable/disable FortiGuard web filter caching.
webfilter-cache-ttl
integer
Time-to-live for web filter cache entries in seconds (300 - 86400).
webfilter-expiration
integer
no description
webfilter-force-off
string
    Choices:
  • disable
  • enable
Enable/disable turning off the FortiGuard web filtering service.
webfilter-license
integer
no description
webfilter-timeout
integer
Web filter query time out (1 - 30 sec, default = 7).
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 FortiGuard services.
     fmgr_system_fortiguard:
        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>
        system_fortiguard:
           antispam-cache: <value in [disable, enable]>
           antispam-cache-mpercent: <value of integer>
           antispam-cache-ttl: <value of integer>
           antispam-expiration: <value of integer>
           antispam-force-off: <value in [disable, enable]>
           antispam-license: <value of integer>
           antispam-timeout: <value of integer>
           auto-join-forticloud: <value in [disable, enable]>
           ddns-server-ip: <value of string>
           ddns-server-port: <value of integer>
           load-balance-servers: <value of integer>
           outbreak-prevention-cache: <value in [disable, enable]>
           outbreak-prevention-cache-mpercent: <value of integer>
           outbreak-prevention-cache-ttl: <value of integer>
           outbreak-prevention-expiration: <value of integer>
           outbreak-prevention-force-off: <value in [disable, enable]>
           outbreak-prevention-license: <value of integer>
           outbreak-prevention-timeout: <value of integer>
           port: <value in [53, 80, 8888, ...]>
           sdns-server-ip: <value of string>
           sdns-server-port: <value of integer>
           service-account-id: <value of string>
           source-ip: <value of string>
           source-ip6: <value of string>
           update-server-location: <value in [any, usa]>
           webfilter-cache: <value in [disable, enable]>
           webfilter-cache-ttl: <value of integer>
           webfilter-expiration: <value of integer>
           webfilter-force-off: <value in [disable, enable]>
           webfilter-license: <value of integer>
           webfilter-timeout: <value of integer>
           protocol: <value in [udp, http, https]>
           proxy-password: <value of string>
           proxy-server-ip: <value of string>
           proxy-server-port: <value of integer>
           proxy-username: <value of string>
           sandbox-region: <value of string>
           fortiguard-anycast: <value in [disable, enable]>
           fortiguard-anycast-source: <value in [fortinet, aws, debug]>
           interface: <value of string>
           interface-select-method: <value in [auto, sdwan, specify]>
           sdns-options:
             - include-question-section
           anycast-sdns-server-ip: <value of string>
           anycast-sdns-server-port: <value of integer>
           persistent-connection: <value in [disable, enable]>
           update-build-proxy: <value in [disable, enable]>
           update-extdb: <value in [disable, enable]>
           update-ffdb: <value in [disable, enable]>
           update-uwdb: <value in [disable, enable]>
           videofilter-expiration: <value of integer>
           videofilter-license: <value of integer>

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)