fortinet.fortios.fortios_firewall_sniffer 模块 – 配置 Fortinet 的 FortiOS 和 FortiGate 中的嗅探器。

注意

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

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

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

要在剧本中使用它,请指定: fortinet.fortios.fortios_firewall_sniffer

fortinet.fortios 2.0.0 中的新增功能

概要

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

要求

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

  • ansible>=2.15

参数

参数

注释

access_token

字符串

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

enable_log

布尔值

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

选项

  • false ← (默认)

  • true

firewall_sniffer

字典

配置嗅探器。

anomaly

列表 / 元素=字典

配置方法,用于编辑拒绝服务 (DoS) 异常设置。

action

字符串

达到阈值时采取的操作。

选项

  • "pass"

  • "block"

  • "proxy"

log

字符串

启用/禁用异常日志记录。

选项

  • "enable"

  • "disable"

name

字符串 / 必填

异常名称。

quarantine

字符串

隔离方法。

选项

  • "none"

  • "attacker"

quarantine_expiry

字符串

隔离持续时间。(格式

quarantine_log

字符串

启用/禁用隔离日志记录。

选项

  • "disable"

  • "enable"

status

字符串

启用/禁用此异常。

选项

  • "disable"

  • "enable"

synproxy_tcp_mss

字符串

确定 syn 代理模块回复的数据包的 TCP 最大分段大小 (MSS) 值。

选项

  • "0"

  • "256"

  • "512"

  • "1024"

  • "1300"

  • "1360"

  • "1460"

  • "1500"

synproxy_tcp_sack

字符串

启用/禁用 syn 代理模块回复的数据包的 TCP 选择性确认 (SACK)。

选项

  • "enable"

  • "disable"

synproxy_tcp_timestamp

字符串

启用/禁用 syn 代理模块回复的数据包的 TCP 时间戳选项。

选项

  • "enable"

  • "disable"

synproxy_tcp_window

字符串

确定 syn 代理模块回复的数据包的 TCP 窗口大小。

选项

  • "4096"

  • "8192"

  • "16384"

  • "32768"

synproxy_tcp_windowscale

字符串

确定 syn 代理模块回复的数据包的 TCP 窗口缩放选项值。

选项

  • "0"

  • "1"

  • "2"

  • "3"

  • "4"

  • "5"

  • "6"

  • "7"

  • "8"

  • "9"

  • "10"

  • "11"

  • "12"

  • "13"

  • "14"

synproxy_tos

字符串

确定 syn 代理模块回复的数据包的 TCP 区分服务代码点值(服务类型)。

选项

  • "0"

  • "10"

  • "12"

  • "14"

  • "18"

  • "20"

  • "22"

  • "26"

  • "28"

  • "30"

  • "34"

  • "36"

  • "38"

  • "40"

  • "46"

  • "255"

synproxy_ttl

字符串

确定 syn 代理模块回复的数据包的生存时间 (TTL) 值。

选项

  • "32"

  • "64"

  • "128"

  • "255"

threshold

整数

异常阈值。检测到的实例数(每秒数据包数或并发会话数),触发异常操作。

threshold_default

整数

每分钟检测到的实例数,触发操作 (1 - 2147483647)。请注意,每个异常都有不同的阈值。

application_list

字符串

现有应用程序列表的名称。源 application.list.name。

application_list_status

字符串

启用/禁用应用程序控制配置文件。

选项

  • "enable"

  • "disable"

av_profile

字符串

现有防病毒配置文件的名称。源 antivirus.profile.name。

av_profile_status

字符串

启用/禁用防病毒配置文件。

选项

  • "enable"

  • "disable"

casb_profile

字符串

现有 CASB 配置文件的名称。源 casb.profile.name。

casb_profile_status

字符串

启用/禁用 CASB 配置文件。

选项

  • "enable"

  • "disable"

dlp_profile

字符串

现有 DLP 配置文件的名称。源 dlp.profile.name。

dlp_profile_status

字符串

启用/禁用 DLP 配置文件。

选项

  • "enable"

  • "disable"

dlp_sensor

字符串

现有 DLP 传感器的名称。源 dlp.sensor.name。

dlp_sensor_status

字符串

启用/禁用 DLP 传感器。

选项

  • "enable"

  • "disable"

dsri

字符串

启用/禁用 DSRI。

选项

  • "enable"

  • "disable"

emailfilter_profile

字符串

现有电子邮件过滤器配置文件的名称。源 emailfilter.profile.name。

emailfilter_profile_status

字符串

启用/禁用电子邮件过滤器。

选项

  • "enable"

  • "disable"

file_filter_profile

字符串

现有文件过滤器配置文件的名称。源 file-filter.profile.name。

file_filter_profile_status

字符串

启用/禁用文件过滤器。

选项

  • "enable"

  • "disable"

host

字符串

在嗅探流量中过滤的主机(格式示例:1.1.1.1、2.2.2.0/24、3.3.3.3/255.255.255.0、4.4.4.0-4.4.4.240)。

id

整数 / 必填

嗅探器 ID (0 - 9999)。请参见 注释

interface

字符串

将进行流量嗅探的接口名称。源 system.interface.name。

ip_threatfeed

列表 / 元素=字典

现有 IP 威胁源的名称。

name

字符串 / 必填

威胁源名称。源 system.external-resource.name。

ip_threatfeed_status

字符串

启用/禁用 IP 威胁源。

选项

  • "enable"

  • "disable"

ips_dos_status

字符串

启用/禁用 IPS DoS 异常检测。

选项

  • "enable"

  • "disable"

ips_sensor

字符串

现有 IPS 传感器的名称。源 ips.sensor.name。

ips_sensor_status

字符串

启用/禁用 IPS 传感器。

选项

  • "enable"

  • "disable"

ipv6

字符串

启用/禁用嗅探 IPv6 数据包。

选项

  • "enable"

  • "disable"

logtraffic

字符串

针对此策略,可以选择记录所有会话、仅记录已应用安全配置文件的会话,或禁用所有日志记录。

选项

  • "全部"

  • "utm"

  • "disable"

max_packet_count

整数

最大数据包计数 (1 - 1000000)。

non_ip

字符串

启用/禁用嗅探非 IP 数据包。

选项

  • "enable"

  • "disable"

port

字符串

要嗅探的端口 (格式示例:10, :20, 30:40, 50-, 100-200)。

protocol

字符串

IANA 定义的协议类型整数 (0 - 255)。

scan_botnet_connections

字符串

启用/禁用扫描到僵尸网络服务器的连接。

选项

  • "disable"

  • "block"

  • "监控"

spamfilter_profile

字符串

现有垃圾邮件过滤配置文件的名称。来源 spamfilter.profile.name。

spamfilter_profile_status

字符串

启用/禁用垃圾邮件过滤器。

选项

  • "enable"

  • "disable"

status

字符串

启用/禁用嗅探器的活动状态。

选项

  • "enable"

  • "disable"

uuid

字符串

通用唯一标识符 (UUID;自动分配,但可以手动重置)。

vlan

字符串

要嗅探的 VLAN 列表。

webfilter_profile

字符串

现有 Web 过滤器配置文件的名称。来源 webfilter.profile.name。

webfilter_profile_status

字符串

启用/禁用 Web 过滤器配置文件。

选项

  • "enable"

  • "disable"

member_path

字符串

要操作的成员属性路径。

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

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

member_state

字符串

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

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

选项

  • "存在"

  • "不存在"

state

字符串 / 必填

指示是创建还是删除对象。

选项

  • "存在"

  • "不存在"

vdom

字符串

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

默认值: "root"

注释

注意

  • 我们强烈建议使用您自己的值作为 ID,而不是 0。虽然 '0' 是一个特殊的占位符,允许后端为对象分配最新的可用编号,但它确实存在局限性。请在问答中查找更多详细信息。

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

  • 该模块支持 check_mode。

示例

- name: Configure sniffer.
  fortinet.fortios.fortios_firewall_sniffer:
      vdom: "{{ vdom }}"
      state: "present"
      access_token: "<your_own_value>"
      firewall_sniffer:
          anomaly:
              -
                  action: "pass"
                  log: "enable"
                  name: "default_name_6"
                  quarantine: "none"
                  quarantine_expiry: "<your_own_value>"
                  quarantine_log: "disable"
                  status: "disable"
                  synproxy_tcp_mss: "0"
                  synproxy_tcp_sack: "enable"
                  synproxy_tcp_timestamp: "enable"
                  synproxy_tcp_window: "4096"
                  synproxy_tcp_windowscale: "0"
                  synproxy_tos: "0"
                  synproxy_ttl: "32"
                  threshold: "0"
                  threshold_default: "0"
          application_list: "<your_own_value> (source application.list.name)"
          application_list_status: "enable"
          av_profile: "<your_own_value> (source antivirus.profile.name)"
          av_profile_status: "enable"
          casb_profile: "<your_own_value> (source casb.profile.name)"
          casb_profile_status: "enable"
          dlp_profile: "<your_own_value> (source dlp.profile.name)"
          dlp_profile_status: "enable"
          dlp_sensor: "<your_own_value> (source dlp.sensor.name)"
          dlp_sensor_status: "enable"
          dsri: "enable"
          emailfilter_profile: "<your_own_value> (source emailfilter.profile.name)"
          emailfilter_profile_status: "enable"
          file_filter_profile: "<your_own_value> (source file-filter.profile.name)"
          file_filter_profile_status: "enable"
          host: "myhostname"
          id: "36"
          interface: "<your_own_value> (source system.interface.name)"
          ip_threatfeed:
              -
                  name: "default_name_39 (source system.external-resource.name)"
          ip_threatfeed_status: "enable"
          ips_dos_status: "enable"
          ips_sensor: "<your_own_value> (source ips.sensor.name)"
          ips_sensor_status: "enable"
          ipv6: "enable"
          logtraffic: "all"
          max_packet_count: "4000"
          non_ip: "enable"
          port: "<your_own_value>"
          protocol: "<your_own_value>"
          scan_botnet_connections: "disable"
          spamfilter_profile: "<your_own_value> (source spamfilter.profile.name)"
          spamfilter_profile_status: "enable"
          status: "enable"
          uuid: "<your_own_value>"
          vlan: "<your_own_value>"
          webfilter_profile: "<your_own_value> (source webfilter.profile.name)"
          webfilter_profile_status: "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)

  • 米格尔·安吉尔·穆尼奥斯 (@mamunozgonzalez)

  • 尼古拉斯·托马斯 (@thomnico)