fortinet.fortimanager.fmgr_pkg_firewall_dospolicy 模块 – 配置 IPv4 DoS 策略。

注意

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

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

要安装它,请使用: ansible-galaxy collection install fortinet.fortimanager

要在 playbook 中使用它,请指定: fortinet.fortimanager.fmgr_pkg_firewall_dospolicy

fortinet.fortimanager 2.0.0 中的新增功能

概要

  • 此模块能够配置 FortiManager 设备。

  • 示例包括所有需要在使用前根据数据源调整的参数和值。

参数

参数

注释

access_token

字符串

无需用户名和密码即可访问 FortiManager 的令牌。

adom

字符串 / 必填

请求 URL 中的参数 (adom)。

bypass_validation

布尔值

仅当模块模式与 FortiManager API 结构不同时才设置为 True,模块将继续执行而无需验证参数。

选项

  • false ← (默认)

  • true

enable_log

布尔值

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

选项

  • false ← (默认)

  • true

forticloud_access_token

字符串

使用 forticloud API 访问令牌对 Ansible 客户端进行身份验证。

pkg

字符串 / 必填

请求 URL 中的参数 (pkg)。

pkg_firewall_dospolicy

字典

设置的顶级参数。

anomaly

列表 / 元素=字典

异常。

action

字符串

达到阈值时采取的操作。

选项

  • "pass"

  • "block"

  • "proxy"

log

字符串

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

选项

  • "disable"

  • "enable"

name

字符串

异常名称。

quarantine

字符串

隔离方法。

选项

  • "none"

  • "attacker"

  • "both"

  • "interface"

quarantine_expiry

别名:quarantine-expiry

字符串

隔离持续时间,从现在起 1 分钟到 364 天、23 小时和 59 分钟。

quarantine_log

别名:quarantine-log

字符串

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

选项

  • "disable"

  • "enable"

status

字符串

启用/禁用此异常传感器的活动状态。

选项

  • "disable"

  • "enable"

synproxy-tcp-mss

字符串

已弃用,请将其重命名为 synproxy_tcp_mss。确定 TCP 最大分段大小

选项

  • "0"

  • "256"

  • "512"

  • "1024"

  • "1300"

  • "1360"

  • "1460"

  • "1500"

synproxy-tcp-sack

字符串

已弃用,请将其重命名为 synproxy_tcp_sack。启用/禁用 TCP 选择性确认

选项

  • "disable"

  • "enable"

synproxy-tcp-timestamp

字符串

已弃用,请将其重命名为 synproxy_tcp_timestamp。为 syn 代理模块回复的数据包启用/禁用 TCP 时间戳选项…

选项

  • "disable"

  • "enable"

synproxy-tcp-window

字符串

已弃用,请将其重命名为 synproxy_tcp_window。确定 syn 代理模块回复的数据包的 TCP 窗口大小…

选项

  • "4096"

  • "8192"

  • "16384"

  • "32768"

synproxy-tcp-windowscale

字符串

已弃用,请将其重命名为 synproxy_tcp_windowscale。确定 syn 代理模块回复的数据包的 TCP 窗口缩放选项值…

选项

  • "0"

  • "1"

  • "2"

  • "3"

  • "4"

  • "5"

  • "6"

  • "7"

  • "8"

  • "9"

  • "10"

  • "11"

  • "12"

  • "13"

  • "14"

synproxy-tos

字符串

已弃用,请将其重命名为 synproxy_tos。确定 TCP 区分服务代码点值

选项

  • "0"

  • "10"

  • "12"

  • "14"

  • "18"

  • "20"

  • "22"

  • "26"

  • "28"

  • "30"

  • "34"

  • "36"

  • "38"

  • "40"

  • "46"

  • "255"

synproxy-ttl

字符串

已弃用,请将其重命名为 synproxy_ttl。确定生存时间

选项

  • "32"

  • "64"

  • "128"

  • "255"

synproxy_tcp_mss

字符串

确定 TCP 最大分段大小

选项

  • "0"

  • "256"

  • "512"

  • "1024"

  • "1300"

  • "1360"

  • "1460"

  • "1500"

synproxy_tcp_sack

字符串

启用/禁用 TCP 选择性确认

选项

  • "disable"

  • "enable"

synproxy_tcp_timestamp

字符串

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

选项

  • "disable"

  • "enable"

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

字符串

确定 TCP 区分服务代码点值

选项

  • "0"

  • "10"

  • "12"

  • "14"

  • "18"

  • "20"

  • "22"

  • "26"

  • "28"

  • "30"

  • "34"

  • "36"

  • "38"

  • "40"

  • "46"

  • "255"

synproxy_ttl

字符串

确定生存时间

选项

  • "32"

  • "64"

  • "128"

  • "255"

threshold

整数

每分钟检测到的实例数,触发操作

threshold_default

别名:threshold(default)

整数

阈值

comments

字符串

注释。

dstaddr

任意

(列表或字符串) 可用地址中的目标地址名称。

interface

字符串

可用接口中的传入接口名称。

name

字符串

策略名称。

policyid

整数 / 必填

策略 ID。

service

任意

(列表或字符串) 可用选项中的服务对象。

srcaddr

任意

(列表或字符串) 可用地址中的源地址名称。

status

字符串

启用/禁用此策略。

选项

  • "disable"

  • "enable"

uuid

字符串

通用唯一标识符

proposed_method

字符串

基础 Json RPC 请求的覆盖方法。

选项

  • "update"

  • "set"

  • "add"

rc_failed

列表 / 元素=整数

将覆盖失败条件的 rc 代码列表。

rc_succeeded

列表 / 元素=整数

将覆盖成功条件的 rc 代码列表。

state

字符串 / 必填

创建、更新或删除对象的指令。

选项

  • "present"

  • "absent"

workspace_locking_adom

字符串

在工作区模式下锁定 FortiManager 的 adom,该值可以是全局的和其他值,包括 root。

workspace_locking_timeout

整数

等待其他用户释放工作区锁定的最大时间(秒)。

默认值: 300

备注

注意

  • 从 2.4.0 版本开始,所有输入参数都使用下划线命名约定 (snake_case)。请将诸如“var-name”之类的参数更改为“var_name”。旧的参数名称仍然可用,但您会收到弃用警告。您可以通过在 ansible.cfg 中设置 deprecation_warnings=False 来忽略此警告。

  • 此 FortiManager 模块支持在工作区锁定模式下运行,顶级参数 `workspace_locking_adom` 和 `workspace_locking_timeout` 用于实现此功能。

  • 要创建或更新对象,请使用 `state present` 指令。

  • 要删除对象,请使用 `state absent` 指令。

  • 通常情况下,如果返回非零 rc 值,则运行一个模块可能会失败。您还可以使用参数 `rc_failed` 和 `rc_succeeded` 覆盖失败或成功的条件。

示例

- name: Example playbook
  hosts: fortimanagers
  connection: httpapi
  vars:
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    ansible_httpapi_port: 443
  tasks:
    - name: Configure IPv4 DoS policies.
      fortinet.fortimanager.fmgr_pkg_firewall_dospolicy:
        bypass_validation: false
        adom: ansible
        pkg: ansible # package name
        state: present
        pkg_firewall_dospolicy:
          comments: "ansible-comment1"
          interface: "sslvpn_tun_intf"
          policyid: 1
          status: enable

- name: Gathering fortimanager facts
  hosts: fortimanagers
  gather_facts: false
  connection: httpapi
  vars:
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    ansible_httpapi_port: 443
  tasks:
    - name: Retrieve all the IPv4 DoS policies
      fortinet.fortimanager.fmgr_fact:
        facts:
          selector: "pkg_firewall_dospolicy"
          params:
            adom: "ansible"
            pkg: "ansible" # package name
            DoS-policy: "your_value"

返回值

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

描述

meta

字典

请求的结果。

返回值:始终返回

request_url

字符串

请求的完整 URL。

返回值:始终返回

示例: "/sys/login/user"

response_code

整数

API 请求的状态。

返回值:始终返回

示例: 0

response_data

列表 / 元素=字符串

API 响应。

返回值:始终返回

response_message

字符串

API 响应的描述性消息。

返回值:始终返回

示例: "OK."

system_information

字典

目标系统的信息。

返回值:始终返回

rc

整数

请求的状态。

返回值:始终返回

示例: 0

version_check_warning

列表 / 元素=字符串

如果剧本中使用的参数不受当前 FortiManager 版本支持,则会发出警告。

返回值:复杂类型

作者

  • 杜欣伟 (@dux-fortinet)

  • 李星 (@lix-fortinet)

  • 薛杰 (@JieX19)

  • 郑琳 (@chillancezen)

  • 沈方 (@fshen01)

  • 卢洪斌 (@fgtdev-hblu)