On this page
fortinet.fortios.fortios_web_proxy_explicit – Configure explicit Web proxy settings in Fortinet’s FortiOS and FortiGate.
Note
This plugin is part of the fortinet.fortios collection (version 2.1.2).
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.fortios.
To use it in a playbook, specify: fortinet.fortios.fortios_web_proxy_explicit.
New in version 2.10: of fortinet.fortios
Synopsis
- This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify web_proxy feature and explicit category. Examples include all parameters and values need to be adjusted to datasources before usage. Tested with FOS v6.0.0
 
Requirements
The below requirements are needed on the host that executes this module.
- ansible>=2.9.0
 
Parameters
| Parameter | Choices/Defaults | Comments | |||
|---|---|---|---|---|---|
| access_token
        
        string
         | 
      
        
        Token-based authentication. Generated from GUI of Fortigate.
         | 
     ||||
| enable_log
        
        boolean
         | 
      
       
  | 
      
        
        Enable/Disable logging for task.
         | 
     |||
| vdom
        
        string
         | 
      Default: 
        "root"
         | 
      
        
        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.
         | 
     |||
| web_proxy_explicit
        
        dictionary
         | 
      
        
        Configure explicit Web proxy settings.
         | 
     ||||
| ftp_incoming_port
        
        string
         | 
      
        
        Accept incoming FTP-over-HTTP requests on one or more ports (0 - 65535).
         | 
     ||||
| ftp_over_http
        
        string
         | 
      
       
  | 
      
        
        Enable to proxy FTP-over-HTTP sessions sent from a web browser.
         | 
     |||
| http_incoming_port
        
        string
         | 
      
        
        Accept incoming HTTP requests on one or more ports (0 - 65535).
         | 
     ||||
| https_incoming_port
        
        string
         | 
      
        
        Accept incoming HTTPS requests on one or more ports (0 - 65535).
         | 
     ||||
| https_replacement_message
        
        string
         | 
      
       
  | 
      
        
        Enable/disable sending the client a replacement message for HTTPS requests.
         | 
     |||
| incoming_ip
        
        string
         | 
      
        
        Restrict the explicit HTTP proxy to only accept sessions from this IP address. An interface must have this IP address.
         | 
     ||||
| incoming_ip6
        
        string
         | 
      
        
        Restrict the explicit web proxy to only accept sessions from this IPv6 address. An interface must have this IPv6 address.
         | 
     ||||
| ipv6_status
        
        string
         | 
      
       
  | 
      
        
        Enable/disable allowing an IPv6 web proxy destination in policies and all IPv6 related entries in this command.
         | 
     |||
| message_upon_server_error
        
        string
         | 
      
       
  | 
      
        
        Enable/disable displaying a replacement message when a server error is detected.
         | 
     |||
| outgoing_ip
        
        string
         | 
      
        
        Outgoing HTTP requests will have this IP address as their source address. An interface must have this IP address.
         | 
     ||||
| outgoing_ip6
        
        string
         | 
      
        
        Outgoing HTTP requests will leave this IPv6. Multiple interfaces can be specified. Interfaces must have these IPv6 addresses.
         | 
     ||||
| pac_file_data
        
        string
         | 
      
        
        PAC file contents enclosed in quotes (maximum of 256K bytes).
         | 
     ||||
| pac_file_name
        
        string
         | 
      
        
        Pac file name.
         | 
     ||||
| pac_file_server_port
        
        string
         | 
      
        
        Port number that PAC traffic from client web browsers uses to connect to the explicit web proxy (0 - 65535).
         | 
     ||||
| pac_file_server_status
        
        string
         | 
      
       
  | 
      
        
        Enable/disable Proxy Auto-Configuration (PAC) for users of this explicit proxy profile.
         | 
     |||
| pac_file_url
        
        string
         | 
      
        
        PAC file access URL.
         | 
     ||||
| pac_policy
        
        list / elements=string
         | 
      
        
        PAC policies.
         | 
     ||||
| comments
        
        string
         | 
      
        
        Optional comments.
         | 
     ||||
| dstaddr
        
        list / elements=string
         | 
      
        
        Destination address objects.
         | 
     ||||
| name
        
        string / required
         | 
      
        
        Address name. Source firewall.address.name firewall.addrgrp.name.
         | 
     ||||
| pac_file_data
        
        string
         | 
      
        
        PAC file contents enclosed in quotes (maximum of 256K bytes).
         | 
     ||||
| pac_file_name
        
        string
         | 
      
        
        Pac file name.
         | 
     ||||
| policyid
        
        integer / required
         | 
      
        
        Policy ID.
         | 
     ||||
| srcaddr
        
        list / elements=string
         | 
      
        
        Source address objects.
         | 
     ||||
| name
        
        string / required
         | 
      
        
        Address name. Source firewall.address.name firewall.addrgrp.name firewall.proxy-address.name firewall.proxy-addrgrp.name.
         | 
     ||||
| srcaddr6
        
        list / elements=string
         | 
      
        
        Source address6 objects.
         | 
     ||||
| name
        
        string / required
         | 
      
        
        Address name. Source firewall.address6.name firewall.addrgrp6.name.
         | 
     ||||
| status
        
        string
         | 
      
       
  | 
      
        
        Enable/disable policy.
         | 
     |||
| pref_dns_result
        
        string
         | 
      
       
  | 
      
        
        Prefer resolving addresses using the configured IPv4 or IPv6 DNS server .
         | 
     |||
| realm
        
        string
         | 
      
        
        Authentication realm used to identify the explicit web proxy (maximum of 63 characters).
         | 
     ||||
| sec_default_action
        
        string
         | 
      
       
  | 
      
        
        Accept or deny explicit web proxy sessions when no web proxy firewall policy exists.
         | 
     |||
| socks
        
        string
         | 
      
       
  | 
      
        
        Enable/disable the SOCKS proxy.
         | 
     |||
| socks_incoming_port
        
        string
         | 
      
        
        Accept incoming SOCKS proxy requests on one or more ports (0 - 65535).
         | 
     ||||
| ssl_algorithm
        
        string
         | 
      
       
  | 
      
        
        Relative strength of encryption algorithms accepted in HTTPS deep scan: high, medium, or low.
         | 
     |||
| status
        
        string
         | 
      
       
  | 
      
        
        Enable/disable the explicit Web proxy for HTTP and HTTPS session.
         | 
     |||
| strict_guest
        
        string
         | 
      
       
  | 
      
        
        Enable/disable strict guest user checking by the explicit web proxy.
         | 
     |||
| trace_auth_no_rsp
        
        string
         | 
      
       
  | 
      
        
        Enable/disable logging timed-out authentication requests.
         | 
     |||
| unknown_http_version
        
        string
         | 
      
       
  | 
      
        
        Either reject unknown HTTP traffic as malformed or handle unknown HTTP traffic as best as the proxy server can.
         | 
     |||
Notes
Note
- Legacy fortiosapi has been deprecated, httpapi is the preferred way to run playbooks
 
Examples
- hosts: fortigates
  collections:
    - fortinet.fortios
  connection: httpapi
  vars:
   vdom: "root"
   ansible_httpapi_use_ssl: yes
   ansible_httpapi_validate_certs: no
   ansible_httpapi_port: 443
  tasks:
  - name: Configure explicit Web proxy settings.
    fortios_web_proxy_explicit:
      vdom:  "{{ vdom }}"
      web_proxy_explicit:
        ftp_incoming_port: "<your_own_value>"
        ftp_over_http: "enable"
        http_incoming_port: "<your_own_value>"
        https_incoming_port: "<your_own_value>"
        https_replacement_message: "enable"
        incoming_ip: "<your_own_value>"
        incoming_ip6: "<your_own_value>"
        ipv6_status: "enable"
        message_upon_server_error: "enable"
        outgoing_ip: "<your_own_value>"
        outgoing_ip6: "<your_own_value>"
        pac_file_data: "<your_own_value>"
        pac_file_name: "<your_own_value>"
        pac_file_server_port: "<your_own_value>"
        pac_file_server_status: "enable"
        pac_file_url: "<your_own_value>"
        pac_policy:
         -
            comments: "<your_own_value>"
            dstaddr:
             -
                name: "default_name_22 (source firewall.address.name firewall.addrgrp.name)"
            pac_file_data: "<your_own_value>"
            pac_file_name: "<your_own_value>"
            policyid: "25"
            srcaddr:
             -
                name: "default_name_27 (source firewall.address.name firewall.addrgrp.name firewall.proxy-address.name firewall.proxy-addrgrp.name)"
            srcaddr6:
             -
                name: "default_name_29 (source firewall.address6.name firewall.addrgrp6.name)"
            status: "enable"
        pref_dns_result: "ipv4"
        realm: "<your_own_value>"
        sec_default_action: "accept"
        socks: "enable"
        socks_incoming_port: "<your_own_value>"
        ssl_algorithm: "high"
        status: "enable"
        strict_guest: "enable"
        trace_auth_no_rsp: "enable"
        unknown_http_version: "reject"
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| build
        
        string
         | 
      always | 
        
        Build number of the fortigate image
         Sample:
        
       
        1547
         | 
     
| http_method
        
        string
         | 
      always | 
        
        Last method used to provision the content into FortiGate
         Sample:
        
       
        PUT
         | 
     
| http_status
        
        string
         | 
      always | 
        
        Last result given by FortiGate on last operation applied
         Sample:
        
       
        200
         | 
     
| mkey
        
        string
         | 
      success | 
        
        Master key (id) used in the last call to FortiGate
         Sample:
        
       
        id
         | 
     
| name
        
        string
         | 
      always | 
        
        Name of the table used to fulfill the request
         Sample:
        
       
        urlfilter
         | 
     
| path
        
        string
         | 
      always | 
        
        Path of the table used to fulfill the request
         Sample:
        
       
        webfilter
         | 
     
| revision
        
        string
         | 
      always | 
        
        Internal revision number
         Sample:
        
       
        17.0.2.10658
         | 
     
| serial
        
        string
         | 
      always | 
        
        Serial number of the unit
         Sample:
        
       
        FGVMEVYYQT3AB5352
         | 
     
| status
        
        string
         | 
      always | 
        
        Indication of the operation's result
         Sample:
        
       
        success
         | 
     
| vdom
        
        string
         | 
      always | 
        
        Virtual domain used
         Sample:
        
       
        root
         | 
     
| version
        
        string
         | 
      always | 
        
        Version of the FortiGate
         Sample:
        
       
        v5.6.3
         | 
     
Authors
- Link Zheng (@chillancezen)
 - Jie Xue (@JieX19)
 - Hongbin Lu (@fgtdev-hblu)
 - Frank Shen (@frankshen01)
 - Miguel Angel Munoz (@mamunozgonzalez)
 - Nicolas Thomas (@thomnico)
 
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/latest/collections/fortinet/fortios/fortios_web_proxy_explicit_module.html