fortinet.fortios.fortios_switch_controller_global 模块 – 在 Fortinet 的 FortiOS 和 FortiGate 中配置 FortiSwitch 全局设置。

注意

此模块是 fortinet.fortios 集合 (版本 2.3.8) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install fortinet.fortios。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求

要在 playbook 中使用它,请指定: fortinet.fortios.fortios_switch_controller_global

fortinet.fortios 2.0.0 中的新增功能

概要

  • 此模块能够通过允许用户设置和修改 switch_controller 功能和全局类别来配置 FortiGate 或 FortiOS (FOS) 设备。示例包括所有参数,在使用前需要将值调整为数据源。已在 FOS v6.0.0 上测试。

要求

执行此模块的主机需要以下要求。

  • ansible>=2.15

参数

参数

注释

access_token

字符串

基于令牌的身份验证。从 FortiGate 的 GUI 生成。

enable_log

布尔值

启用/禁用任务的日志记录。

选项

  • false ← (默认)

  • true

member_path

字符串

要操作的成员属性路径。

如果有多个属性,则用斜杠字符分隔。

标有 member_path 的参数对于执行成员操作是合法的。

member_state

字符串

在指定的属性路径下添加或删除成员。

当指定 member_state 时,将忽略 state 选项。

选项

  • "present"

  • "absent"

switch_controller_global

字典

配置 FortiSwitch 全局设置。

allow_multiple_interfaces

字符串

启用/禁用用于在受管理的 FortiSwitch 和 FortiGate 之间进行冗余连接的多个 FortiLink 接口。

选项

  • "enable"

  • "disable"

字符串

启用/禁用弹跳(以管理方式使链路断开,然后连接)在最后看到隔离设备的交换机端口。有助于重新启动设备的 DHCP 进程。

选项

  • "disable"

  • "enable"

custom_command

列表 / 元素=字典

要推送到 VDOM 中所有 FortiSwitch 的自定义命令列表。

command_entry

字符串 / 必需

FortiSwitch 命令列表。

command_name

字符串

要推送到 VDOM 中所有 FortiSwitch 的自定义命令的名称。来源 switch-controller.custom-command.command-name。

default_virtual_switch_vlan

字符串

将端口添加到虚拟交换机时的默认 VLAN。来源 system.interface.name。

dhcp_option82_circuit_id

列表 / 元素=字符串

列出要包含以告知客户端身份的参数。

选项

  • "intfname"

  • "vlan"

  • "hostname"

  • "mode"

  • "description"

dhcp_option82_format

字符串

DHCP option-82 格式字符串。

选项

  • "ascii"

  • "legacy"

dhcp_option82_remote_id

列表 / 元素=字符串

列出要包含以告知客户端身份的参数。

选项

  • "mac"

  • "hostname"

  • "ip"

dhcp_server_access_list

字符串

启用/禁用 DHCP 嗅探服务器访问列表。

选项

  • "enable"

  • "disable"

dhcp_snoop_client_db_exp

整数

DHCP 嗅探服务器数据库条目的过期时间(300-259200 秒)。

dhcp_snoop_client_req

字符串

客户端 DHCP 数据包广播模式。

选项

  • "drop-untrusted"

  • "forward-untrusted"

dhcp_snoop_db_per_port_learn_limit

整数

每个接口的 dhcp-server 条目学习限制 (0-1024)。

disable_discovery

列表 / 元素=字典

阻止此 FortiSwitch 进行发现。

name

字符串 / 必需

受管理设备 ID。

fips_enforce

字符串

启用/禁用对受管理的 FortiSwitch 设备强制执行 FIPS。

选项

  • "disable"

  • "enable"

firmware_provision_on_authorization

字符串

启用/禁用在授权时自动配置最新固件。

选项

  • "enable"

  • "disable"

https_image_push

字符串

启用/禁用使用 HTTPS 将镜像推送到 FortiSwitch。

选项

  • "enable"

  • "disable"

log_mac_limit_violations

字符串

启用/禁用学习限制违规的日志。

选项

  • "enable"

  • "disable"

mac_aging_interval

整数

非活动 MAC 过期的时间(10-1000000 秒)。

mac_event_logging

字符串

启用/禁用 MAC 地址事件日志记录。

选项

  • "enable"

  • "disable"

mac_retention_period

整数

非活动 MAC 从客户端数据库中删除之前的小时数(0 = 基于 mac-aging-interval 过期)。

mac_violation_timer

整数

设置学习限制违规的超时(0 = 已禁用)。

quarantine_mode

字符串

隔离模式。

选项

  • "by-vlan"

  • "by-redirect"

sn_dns_resolution

字符串

启用/禁用 FortiSwitch 单元的 IP 地址与交换机名称的 DNS 解析。

选项

  • "enable"

  • "disable"

update_user_device

列表 / 元素=字符串

控制哪些来源更新设备用户列表。

选项

  • "mac-cache"

  • "lldp"

  • "dhcp-snooping"

  • "l2-db"

  • "l3-db"

vlan_all_mode

字符串

VLAN配置模式,用户定义的VLAN或所有可能的VLAN。

选项

  • "all"

  • "defined"

vlan_identity

字符串

VLAN的标识。通常用于RADIUS Tunnel-Private-Group-Id。

选项

  • "description"

  • "name"

vlan_optimization

字符串

FortiLink VLAN优化。

选项

  • "enable"

  • "disable"

vdom

字符串

虚拟域,在之前定义的虚拟域中。vdom是FortiGate的虚拟实例,可以将其配置并用作不同的单元。

默认值: "root"

注释

注意

  • 旧版fortiosapi已弃用,httpapi是运行playbook的首选方式。

示例

- name: Configure FortiSwitch global settings.
  fortinet.fortios.fortios_switch_controller_global:
      vdom: "{{ vdom }}"
      switch_controller_global:
          allow_multiple_interfaces: "enable"
          bounce_quarantined_link: "disable"
          custom_command:
              -
                  command_entry: "<your_own_value>"
                  command_name: "<your_own_value> (source switch-controller.custom-command.command-name)"
          default_virtual_switch_vlan: "<your_own_value> (source system.interface.name)"
          dhcp_option82_circuit_id: "intfname"
          dhcp_option82_format: "ascii"
          dhcp_option82_remote_id: "mac"
          dhcp_server_access_list: "enable"
          dhcp_snoop_client_db_exp: "86400"
          dhcp_snoop_client_req: "drop-untrusted"
          dhcp_snoop_db_per_port_learn_limit: "64"
          disable_discovery:
              -
                  name: "default_name_17"
          fips_enforce: "disable"
          firmware_provision_on_authorization: "enable"
          https_image_push: "enable"
          log_mac_limit_violations: "enable"
          mac_aging_interval: "300"
          mac_event_logging: "enable"
          mac_retention_period: "24"
          mac_violation_timer: "0"
          quarantine_mode: "by-vlan"
          sn_dns_resolution: "enable"
          update_user_device: "mac-cache"
          vlan_all_mode: "all"
          vlan_identity: "description"
          vlan_optimization: "enable"

返回值

常用返回值已在此处记录,以下是此模块特有的字段

描述

build

字符串

FortiGate镜像的版本号

返回值: 始终

示例: "1547"

http_method

字符串

上次用于将内容置备到FortiGate的方法

返回值: 始终

示例: "PUT"

http_status

字符串

FortiGate在上次应用的操作中给出的最后结果

返回值: 始终

示例: "200"

mkey

字符串

上次调用FortiGate时使用的主密钥(ID)

返回值: 成功

示例: "id"

name

字符串

用于满足请求的表的名称

返回值: 始终

示例: "urlfilter"

path

字符串

用于满足请求的表的路径

返回值: 始终

示例: "webfilter"

revision

字符串

内部修订号

返回值: 始终

示例: "17.0.2.10658"

serial

字符串

设备的序列号

返回值: 始终

示例: "FGVMEVYYQT3AB5352"

status

字符串

操作结果的指示

返回值: 始终

示例: "success"

vdom

字符串

使用的虚拟域

返回值: 始终

示例: "root"

version

字符串

FortiGate的版本

返回值: 始终

示例: "v5.6.3"

作者

  • 郑链 (@chillancezen)

  • 薛杰 (@JieX19)

  • 陆洪宾 (@fgtdev-hblu)

  • 沈方 (@frankshen01)

  • Miguel Angel Munoz (@mamunozgonzalez)

  • Nicolas Thomas (@thomnico)