lix_fortinet.fortios.fortios_firewall_internet_service_extension (102.2.120) — module

Configure Internet Services Extension in Fortinet's FortiOS and FortiGate.

| "added in version" 2.0.0 of lix_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 lix_fortinet.fortios:==102.2.120


Add to requirements.yml

  collections:
    - name: lix_fortinet.fortios
      version: 102.2.120

Description

This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify firewall feature and internet_service_extension 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.
- 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 Internet Services Extension.
    fortios_firewall_internet_service_extension:
      vdom:  "{{ vdom }}"
      state: "present"
      access_token: "<your_own_value>"
      firewall_internet_service_extension:
        comment: "Comment."
        disable_entry:
         -
            addr_mode: "ipv4"
            id:  "6"
            ip_range:
             -
                end_ip: "<your_own_value>"
                id:  "9"
                start_ip: "<your_own_value>"
            ip6_range:
             -
                end_ip6: "<your_own_value>"
                id:  "13"
                start_ip6: "<your_own_value>"
            port_range:
             -
                end_port: "65535"
                id:  "17"
                start_port: "1"
            protocol: "0"
        entry:
         -
            addr_mode: "ipv4"
            dst:
             -
                name: "default_name_23 (source firewall.address.name firewall.addrgrp.name)"
            dst6:
             -
                name: "default_name_25 (source )"
            id:  "26"
            port_range:
             -
                end_port: "65535"
                id:  "29"
                start_port: "1"
            protocol: "0"
        id:  "32 (source firewall.internet-service.id)"

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_internet_service_extension:
    default: null
    description:
    - Configure Internet Services Extension.
    suboptions:
      comment:
        description:
        - Comment.
        type: str
      disable_entry:
        description:
        - Disable entries in the Internet Service database.
        elements: dict
        suboptions:
          addr_mode:
            choices:
            - ipv4
            - ipv6
            description:
            - Address mode (IPv4 or IPv6)
            type: str
          id:
            description:
            - Disable entry ID.
            type: int
          ip6_range:
            description:
            - IPv6 ranges in the disable entry.
            elements: dict
            suboptions:
              end_ip6:
                description:
                - End IPv6 address.
                type: str
              id:
                description:
                - Disable entry range ID.
                type: int
              start_ip6:
                description:
                - Start IPv6 address.
                type: str
            type: list
          ip_range:
            description:
            - IPv4 ranges in the disable entry.
            elements: dict
            suboptions:
              end_ip:
                description:
                - End IPv4 address.
                type: str
              id:
                description:
                - Disable entry range ID.
                type: int
              start_ip:
                description:
                - Start IPv4 address.
                type: str
            type: list
          port_range:
            description:
            - Port ranges in the disable entry.
            elements: dict
            suboptions:
              end_port:
                description:
                - Ending TCP/UDP/SCTP destination port (0 to 65535).
                type: int
              id:
                description:
                - Custom entry port range ID.
                type: int
              start_port:
                description:
                - Starting TCP/UDP/SCTP destination port (0 to 65535).
                type: int
            type: list
          protocol:
            description:
            - Integer value for the protocol type as defined by IANA (0 - 255).
            type: int
        type: list
      entry:
        description:
        - Entries added to the Internet Service extension database.
        elements: dict
        suboptions:
          addr_mode:
            choices:
            - ipv4
            - ipv6
            description:
            - Address mode (IPv4 or IPv6)
            type: str
          dst:
            description:
            - Destination address or address group name.
            elements: dict
            suboptions:
              name:
                description:
                - Select the destination address or address group object from available
                  options. Source firewall.address.name firewall .addrgrp.name.
                type: str
            type: list
          dst6:
            description:
            - Destination address6 or address6 group name.
            elements: dict
            suboptions:
              name:
                description:
                - Select the destination address6 or address group object from available
                  options. Source .
                type: str
            type: list
          id:
            description:
            - Entry ID(1-255).
            type: int
          port_range:
            description:
            - Port ranges in the custom entry.
            elements: dict
            suboptions:
              end_port:
                description:
                - Integer value for ending TCP/UDP/SCTP destination port in range (0 to
                  65535).
                type: int
              id:
                description:
                - Custom entry port range ID.
                type: int
              start_port:
                description:
                - Integer value for starting TCP/UDP/SCTP destination port in range (0
                  to 65535).
                type: int
            type: list
          protocol:
            description:
            - Integer value for the protocol type as defined by IANA (0 - 255).
            type: int
        type: list
      id:
        description:
        - Internet Service ID in the Internet Service database. Source firewall.internet-service.id.
        required: true
        type: int
    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