fortinet.fortios.fortios_firewall_service_custom (2.3.6) — module

Configure custom services in Fortinet's FortiOS and FortiGate.

| "added in version" 2.0.0 of fortinet.fortios"

Authors: Link Zheng (@chillancezen), Jie Xue (@JieX19), Hongbin Lu (@fgtdev-hblu), Frank Shen (@frankshen01), Miguel Angel Munoz (@mamunozgonzalez), Nicolas Thomas (@thomnico)

preview | supported by community

Install collection

Install with ansible-galaxy collection install fortinet.fortios:==2.3.6


Add to requirements.yml

  collections:
    - name: fortinet.fortios
      version: 2.3.6

Description

This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify firewall_service feature and custom category. Examples include all parameters and values need to be adjusted to datasources before usage. Tested with FOS v6.0.0


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Configure custom services.
  fortinet.fortios.fortios_firewall_service_custom:
      vdom: "{{ vdom }}"
      state: "present"
      access_token: "<your_own_value>"
      firewall_service_custom:
          app_category:
              -
                  id: "4"
          app_service_type: "disable"
          application:
              -
                  id: "7"
          category: "<your_own_value> (source firewall.service.category.name)"
          check_reset_range: "disable"
          color: "0"
          comment: "Comment."
          fabric_object: "enable"
          fqdn: "<your_own_value>"
          helper: "auto"
          icmpcode: ""
          icmptype: ""
          iprange: "<your_own_value>"
          name: "default_name_18"
          protocol: "TCP/UDP/SCTP"
          protocol_number: "0"
          proxy: "enable"
          sctp_portrange: "<your_own_value>"
          session_ttl: "<your_own_value>"
          tcp_halfclose_timer: "0"
          tcp_halfopen_timer: "0"
          tcp_portrange: "<your_own_value>"
          tcp_rst_timer: "0"
          tcp_timewait_timer: "0"
          udp_idle_timer: "0"
          udp_portrange: "<your_own_value>"
          uuid: "<your_own_value>"
          visibility: "enable"

Inputs

    
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.
    type: str

state:
    choices:
    - present
    - absent
    description:
    - Indicates whether to create or remove the object.
    required: true
    type: str

enable_log:
    default: false
    description:
    - Enable/Disable logging for task.
    required: false
    type: bool

member_path:
    description:
    - Member attribute path to operate on.
    - Delimited by a slash character if there are more than one attribute.
    - Parameter marked with member_path is legitimate for doing member operation.
    type: str

access_token:
    description:
    - Token-based authentication. Generated from GUI of Fortigate.
    required: false
    type: str

member_state:
    choices:
    - present
    - absent
    description:
    - Add or delete a member under specified attribute path.
    - When member_state is specified, the state option is ignored.
    type: str

firewall_service_custom:
    default: null
    description:
    - Configure custom services.
    suboptions:
      app_category:
        description:
        - Application category ID.
        elements: dict
        suboptions:
          id:
            description:
            - Application category id. see <a href='#notes'>Notes</a>.
            required: true
            type: int
        type: list
      app_service_type:
        choices:
        - disable
        - app-id
        - app-category
        description:
        - Application service type.
        type: str
      application:
        description:
        - Application ID.
        elements: dict
        suboptions:
          id:
            description:
            - Application id. see <a href='#notes'>Notes</a>.
            required: true
            type: int
        type: list
      category:
        description:
        - Service category. Source firewall.service.category.name.
        type: str
      check_reset_range:
        choices:
        - disable
        - strict
        - default
        description:
        - Configure the type of ICMP error message verification.
        type: str
      color:
        description:
        - Color of icon on the GUI.
        type: int
      comment:
        description:
        - Comment.
        type: str
      fabric_object:
        choices:
        - enable
        - disable
        description:
        - Security Fabric global object setting.
        type: str
      fqdn:
        description:
        - Fully qualified domain name.
        type: str
      helper:
        choices:
        - auto
        - disable
        - ftp
        - tftp
        - ras
        - h323
        - tns
        - mms
        - sip
        - pptp
        - rtsp
        - dns-udp
        - dns-tcp
        - pmap
        - rsh
        - dcerpc
        - mgcp
        - gtp-c
        - gtp-u
        - gtp-b
        - pfcp
        description:
        - Helper name.
        type: str
      icmpcode:
        description:
        - ICMP code.
        type: int
      icmptype:
        description:
        - ICMP type.
        type: int
      iprange:
        description:
        - Start and end of the IP range associated with service.
        type: str
      name:
        description:
        - Custom service name.
        required: true
        type: str
      protocol:
        choices:
        - TCP/UDP/SCTP
        - ICMP
        - ICMP6
        - IP
        - HTTP
        - FTP
        - CONNECT
        - SOCKS-TCP
        - SOCKS-UDP
        - ALL
        description:
        - Protocol type based on IANA numbers.
        type: str
      protocol_number:
        description:
        - IP protocol number.
        type: int
      proxy:
        choices:
        - enable
        - disable
        description:
        - Enable/disable web proxy service.
        type: str
      sctp_portrange:
        description:
        - Multiple SCTP port ranges.
        type: str
      session_ttl:
        description:
        - Session TTL (300 - 2764800, 0 = default).
        type: str
      tcp_halfclose_timer:
        description:
        - Wait time to close a TCP session waiting for an unanswered FIN packet (1 - 86400
          sec, 0 = default).
        type: int
      tcp_halfopen_timer:
        description:
        - Wait time to close a TCP session waiting for an unanswered open session packet
          (1 - 86400 sec, 0 = default).
        type: int
      tcp_portrange:
        description:
        - Multiple TCP port ranges.
        type: str
      tcp_rst_timer:
        description:
        - Set the length of the TCP CLOSE state in seconds (5 - 300 sec, 0 = default).
        type: int
      tcp_timewait_timer:
        description:
        - Set the length of the TCP TIME-WAIT state in seconds (1 - 300 sec, 0 = default).
        type: int
      udp_idle_timer:
        description:
        - Number of seconds before an idle UDP connection times out (0 - 86400 sec, 0
          = default).
        type: int
      udp_portrange:
        description:
        - Multiple UDP port ranges.
        type: str
      uuid:
        description:
        - Universally Unique Identifier (UUID; automatically assigned but can be manually
          reset).
        type: str
      visibility:
        choices:
        - enable
        - disable
        description:
        - Enable/disable the visibility of the service on the GUI.
        type: str
    type: dict

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