fortinet.fortios.fortios_system_cluster_sync (1.1.7) — module

Configure FortiGate Session Life Support Protocol (FGSP) session synchronization in Fortinet's FortiOS and FortiGate.

| "added in version" 2.9 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:==1.1.7


Add to requirements.yml

  collections:
    - name: fortinet.fortios
      version: 1.1.7

Description

This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify system feature and cluster_sync category. Examples include all parameters and values need to be adjusted to datasources before usage. Tested with FOS v6.4.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 FortiGate Session Life Support Protocol (FGSP) session synchronization.
    fortios_system_cluster_sync:
      vdom:  "{{ vdom }}"
      state: "present"
      access_token: "<your_own_value>"
      system_cluster_sync:
        down_intfs_before_sess_sync:
         -
            name: "default_name_4 (source system.interface.name)"
        hb_interval: "5"
        hb_lost_threshold: "6"
        ipsec_tunnel_sync: "enable"
        peerip: "<your_own_value>"
        peervd: "<your_own_value> (source system.vdom.name)"
        session_sync_filter:
            custom_service:
             -
                dst_port_range: "<your_own_value>"
                id:  "13"
                src_port_range: "<your_own_value>"
            dstaddr: "<your_own_value>"
            dstaddr6: "<your_own_value>"
            dstintf: "<your_own_value> (source system.interface.name)"
            srcaddr: "<your_own_value>"
            srcaddr6: "<your_own_value>"
            srcintf: "<your_own_value> (source system.interface.name)"
        slave_add_ike_routes: "enable"
        sync_id: "22"
        syncvd:
         -
            name: "default_name_24 (source system.vdom.name)"

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

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

system_cluster_sync:
    default: null
    description:
    - Configure FortiGate Session Life Support Protocol (FGSP) session synchronization.
    suboptions:
      down_intfs_before_sess_sync:
        description:
        - List of interfaces to be turned down before session synchronization is complete.
        suboptions:
          name:
            description:
            - Interface name. Source system.interface.name.
            required: true
            type: str
        type: list
      hb_interval:
        description:
        - Heartbeat interval (1 - 10 sec).
        type: int
      hb_lost_threshold:
        description:
        - Lost heartbeat threshold (1 - 10).
        type: int
      ipsec_tunnel_sync:
        choices:
        - enable
        - disable
        description:
        - Enable/disable IPsec tunnel synchronization.
        type: str
      peerip:
        description:
        - IP address of the interface on the peer unit that is used for the session synchronization
          link.
        type: str
      peervd:
        description:
        - VDOM that contains the session synchronization link interface on the peer unit.
          Usually both peers would have the same peervd. Source system.vdom.name.
        type: str
      session_sync_filter:
        description:
        - Add one or more filters if you only want to synchronize some sessions. Use the
          filter to configure the types of sessions to synchronize.
        suboptions:
          custom_service:
            description:
            - Only sessions using these custom services are synchronized. Use source and
              destination port ranges to define these custome services.
            suboptions:
              dst_port_range:
                description:
                - Custom service destination port range.
                type: str
              id:
                description:
                - Custom service ID.
                required: true
                type: int
              src_port_range:
                description:
                - Custom service source port range.
                type: str
            type: list
          dstaddr:
            description:
            - Only sessions to this IPv4 address are synchronized. You can only enter
              one address. To synchronize sessions for multiple destination addresses,
              add multiple filters.
            type: str
          dstaddr6:
            description:
            - Only sessions to this IPv6 address are synchronized. You can only enter
              one address. To synchronize sessions for multiple destination addresses,
              add multiple filters.
            type: str
          dstintf:
            description:
            - Only sessions to this interface are synchronized. You can only enter one
              interface name. To synchronize sessions to multiple destination interfaces,
              add multiple filters. Source system.interface.name.
            type: str
          srcaddr:
            description:
            - Only sessions from this IPv4 address are synchronized. You can only enter
              one address. To synchronize sessions from multiple source addresses, add
              multiple filters.
            type: str
          srcaddr6:
            description:
            - Only sessions from this IPv6 address are synchronized. You can only enter
              one address. To synchronize sessions from multiple source addresses, add
              multiple filters.
            type: str
          srcintf:
            description:
            - Only sessions from this interface are synchronized. You can only enter one
              interface name. To synchronize sessions for multiple source interfaces,
              add multiple filters. Source system.interface.name.
            type: str
        type: dict
      slave_add_ike_routes:
        choices:
        - enable
        - disable
        description:
        - Enable/disable IKE route announcement on the backup unit.
        type: str
      sync_id:
        description:
        - Sync ID.
        type: int
      syncvd:
        description:
        - Sessions from these VDOMs are synchronized using this session synchronization
          configuration.
        suboptions:
          name:
            description:
            - VDOM name. Source system.vdom.name.
            required: true
            type: str
        type: list
    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