fortinet.fortimanager.fmgr_dnsfilter_profile – Configure DNS domain filter profiles.

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

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
dnsfilter_profile
dictionary
the top level parameters set
block-action
string
    Choices:
  • block
  • redirect
Action to take for blocked domains.
block-botnet
string
    Choices:
  • disable
  • enable
Enable/disable blocking botnet C&C DNS lookups.
comment
string
Comment.
dns-translation
list / elements=string
no description
addr-type
string
    Choices:
  • ipv4
  • ipv6
DNS translation type (IPv4 or IPv6).
dst
string
IPv4 address or subnet on the external network to substitute for the resolved address in DNS query replies. Can be sin...
dst6
string
IPv6 address or subnet on the external network to substitute for the resolved address in DNS query replies. Can be sin...
id
integer
ID.
netmask
string
If src and dst are subnets rather than single IP addresses, enter the netmask for both src and dst.
prefix
integer
If src6 and dst6 are subnets rather than single IP addresses, enter the prefix for both src6 and dst6 (1 - 128, defaul...
src
string
IPv4 address or subnet on the internal network to compare with the resolved address in DNS query replies. If the resol...
src6
string
IPv6 address or subnet on the internal network to compare with the resolved address in DNS query replies. If the resol...
status
string
    Choices:
  • disable
  • enable
Enable/disable this DNS translation entry.
domain-filter
dictionary
no description
domain-filter-table
integer
DNS domain filter table ID.
external-ip-blocklist
string
One or more external IP block lists.
ftgd-dns
dictionary
no description
filters
list / elements=string
no description
action
string
    Choices:
  • monitor
  • block
Action to take for DNS requests matching the category.
category
string
Category number.
id
integer
ID number.
log
string
    Choices:
  • disable
  • enable
Enable/disable DNS filter logging for this DNS profile.
options
list / elements=string
    Choices:
  • error-allow
  • ftgd-disable
no description
log-all-domain
string
    Choices:
  • disable
  • enable
Enable/disable logging of all domains visited (detailed DNS logging).
name
string
Profile name.
redirect-portal
string
IP address of the SDNS redirect portal.
redirect-portal6
string
IPv6 address of the SDNS redirect portal.
safe-search
string
    Choices:
  • disable
  • enable
Enable/disable Google, Bing, and YouTube safe search.
sdns-domain-log
string
    Choices:
  • disable
  • enable
Enable/disable domain filtering and botnet domain logging.
sdns-ftgd-err-log
string
    Choices:
  • disable
  • enable
Enable/disable FortiGuard SDNS rating error logging.
youtube-restrict
string
    Choices:
  • strict
  • moderate
Set safe search for YouTube restriction level.
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
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 DNS domain filter profiles.
     fmgr_dnsfilter_profile:
        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>
        state: <value in [present, absent]>
        dnsfilter_profile:
           block-action: <value in [block, redirect]>
           block-botnet: <value in [disable, enable]>
           comment: <value of string>
           external-ip-blocklist: <value of string>
           log-all-domain: <value in [disable, enable]>
           name: <value of string>
           redirect-portal: <value of string>
           safe-search: <value in [disable, enable]>
           sdns-domain-log: <value in [disable, enable]>
           sdns-ftgd-err-log: <value in [disable, enable]>
           youtube-restrict: <value in [strict, moderate]>
           dns-translation:
             -
                 dst: <value of string>
                 id: <value of integer>
                 netmask: <value of string>
                 src: <value of string>
                 status: <value in [disable, enable]>
                 addr-type: <value in [ipv4, ipv6]>
                 dst6: <value of string>
                 prefix: <value of integer>
                 src6: <value of string>
           redirect-portal6: <value of string>
           domain-filter:
              domain-filter-table: <value of integer>
           ftgd-dns:
              filters:
                -
                    action: <value in [monitor, block]>
                    category: <value of string>
                    id: <value of integer>
                    log: <value in [disable, enable]>
              options:
                - error-allow
                - ftgd-disable

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)