ansible.builtin.fortios_firewall_proxy_address (v2.8.20) — module

Web proxy address configuration in Fortinet's FortiOS and FortiGate.

| "added in version" 2.8 of ansible.builtin"

Authors: Miguel Angel Munoz (@mamunozgonzalez), Nicolas Thomas (@thomnico)

preview | supported by community

Install Ansible via pip

Install with pip install ansible==2.8.20

Description

This module is able to configure a FortiGate or FortiOS by allowing the user to configure firewall feature and proxy_address category. Examples includes all options and need to be adjusted to datasources before usage. Tested with FOS v6.0.2


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- hosts: localhost
  vars:
   host: "192.168.122.40"
   username: "admin"
   password: ""
   vdom: "root"
  tasks:
  - name: Web proxy address configuration.
    fortios_firewall_proxy_address:
      host:  "{{ host }}"
      username: "{{ username }}"
      password: "{{ password }}"
      vdom:  "{{ vdom }}"
      https: "False"
      firewall_proxy_address:
        state: "present"
        case-sensitivity: "disable"
        category:
         -
            id:  "5"
        color: "6"
        comment: "Optional comments."
        header: "<your_own_value>"
        header-group:
         -
            case-sensitivity: "disable"
            header: "<your_own_value>"
            header-name: "<your_own_value>"
            id:  "13"
        header-name: "<your_own_value>"
        host: "myhostname (source firewall.address.name firewall.addrgrp.name firewall.proxy-address.name)"
        host-regex: "myhostname"
        method: "get"
        name: "default_name_18"
        path: "<your_own_value>"
        query: "<your_own_value>"
        referrer: "enable"
        tagging:
         -
            category: "<your_own_value> (source system.object-tagging.category)"
            name: "default_name_24"
            tags:
             -
                name: "default_name_26 (source system.object-tagging.tags.name)"
        type: "host-regex"
        ua: "chrome"
        uuid: "<your_own_value>"
        visibility: "enable"

Inputs

    
host:
    description:
    - FortiOS or FortiGate ip address.
    required: true

vdom:
    default: root
    description:
    - Virtual domain, among those defined previously. A vdom is a virtual instance of
      the FortiGate that can be configured and used as a different unit.

https:
    default: true
    description:
    - Indicates if the requests towards FortiGate must use HTTPS protocol
    type: bool

password:
    default: ''
    description:
    - FortiOS or FortiGate password.

username:
    description:
    - FortiOS or FortiGate username.
    required: true

firewall_proxy_address:
    default: null
    description:
    - Web proxy address configuration.
    suboptions:
      case-sensitivity:
        choices:
        - disable
        - enable
        description:
        - Enable to make the pattern case sensitive.
      category:
        description:
        - FortiGuard category ID.
        suboptions:
          id:
            description:
            - Fortiguard category id.
            required: true
      color:
        description:
        - Integer value to determine the color of the icon in the GUI (1 - 32, default
          = 0, which sets value to 1).
      comment:
        description:
        - Optional comments.
      header:
        description:
        - HTTP header name as a regular expression.
      header-group:
        description:
        - HTTP header group.
        suboptions:
          case-sensitivity:
            choices:
            - disable
            - enable
            description:
            - Case sensitivity in pattern.
          header:
            description:
            - HTTP header regular expression.
          header-name:
            description:
            - HTTP header.
          id:
            description:
            - ID.
            required: true
      header-name:
        description:
        - Name of HTTP header.
      host:
        description:
        - Address object for the host. Source firewall.address.name firewall.addrgrp.name
          firewall.proxy-address.name.
      host-regex:
        description:
        - Host name as a regular expression.
      method:
        choices:
        - get
        - post
        - put
        - head
        - connect
        - trace
        - options
        - delete
        description:
        - HTTP request methods to be used.
      name:
        description:
        - Address name.
        required: true
      path:
        description:
        - URL path as a regular expression.
      query:
        description:
        - Match the query part of the URL as a regular expression.
      referrer:
        choices:
        - enable
        - disable
        description:
        - Enable/disable use of referrer field in the HTTP header to match the address.
      state:
        choices:
        - present
        - absent
        description:
        - Indicates whether to create or remove the object
      tagging:
        description:
        - Config object tagging.
        suboptions:
          category:
            description:
            - Tag category. Source system.object-tagging.category.
          name:
            description:
            - Tagging entry name.
            required: true
          tags:
            description:
            - Tags.
            suboptions:
              name:
                description:
                - Tag name. Source system.object-tagging.tags.name.
                required: true
      type:
        choices:
        - host-regex
        - url
        - category
        - method
        - ua
        - header
        - src-advanced
        - dst-advanced
        description:
        - Proxy address type.
      ua:
        choices:
        - chrome
        - ms
        - firefox
        - safari
        - other
        description:
        - Names of browsers to be used as user agent.
      uuid:
        description:
        - Universally Unique Identifier (UUID; automatically assigned but can be manually
          reset).
      visibility:
        choices:
        - enable
        - disable
        description:
        - Enable/disable visibility of the object in the GUI.

Outputs

build:
  description: Build number of the fortigate image
  returned: always
  sample: '1547'
  type: str
http_method:
  description: Last method used to provision the content into FortiGate
  returned: always
  sample: PUT
  type: str
http_status:
  description: Last result given by FortiGate on last operation applied
  returned: always
  sample: '200'
  type: str
mkey:
  description: Master key (id) used in the last call to FortiGate
  returned: success
  sample: id
  type: str
name:
  description: Name of the table used to fulfill the request
  returned: always
  sample: urlfilter
  type: str
path:
  description: Path of the table used to fulfill the request
  returned: always
  sample: webfilter
  type: str
revision:
  description: Internal revision number
  returned: always
  sample: 17.0.2.10658
  type: str
serial:
  description: Serial number of the unit
  returned: always
  sample: FGVMEVYYQT3AB5352
  type: str
status:
  description: Indication of the operation's result
  returned: always
  sample: success
  type: str
vdom:
  description: Virtual domain used
  returned: always
  sample: root
  type: str
version:
  description: Version of the FortiGate
  returned: always
  sample: v5.6.3
  type: str