fortinet.fortimanager.fmgr_application_list 模块 – 配置应用程序控制列表。

注意

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

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

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

要在剧本中使用它,请指定: fortinet.fortimanager.fmgr_application_list

fortinet.fortimanager 1.0.0 中的新增功能

概要

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

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

参数

参数

注释

access_token

字符串

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

adom

字符串 / 必需

请求 URL 中的参数 (adom)。

application_list

字典

设置的顶级参数。

app_replacemsg

别名:app-replacemsg

字符串

启用/禁用被阻止应用程序的替换消息。

选项

  • "disable"

  • "enable"

注释

字符串

注释

control_default_network_services

别名:control-default-network-services

字符串

启用/禁用对所选端口上的协议的强制执行。

选项

  • "disable"

  • "enable"

deep_app_inspection

别名:deep-app-inspection

字符串

启用/禁用深度应用程序检测。

选项

  • "disable"

  • "enable"

default_network_services

别名:default-network-services

列表 / 元素=字典

默认网络服务。

id

整数

条目 ID。

port

整数

端口号。

services

列表 / 元素=字符串

网络协议。

选项

  • "http"

  • "ssh"

  • "telnet"

  • "ftp"

  • "dns"

  • "smtp"

  • "pop3"

  • "imap"

  • "snmp"

  • "nntp"

  • "https"

violation_action

别名:violation-action

字符串

未在选定端口下列入白名单的协议的操作。

选项

  • "block"

  • "monitor"

  • "pass"

enforce_default_app_port

别名:enforce-default-app-port

字符串

启用/禁用允许应用程序的默认应用程序端口强制执行。

选项

  • "disable"

  • "enable"

entries

列表 / 元素=字典

条目。

action

字符串

允许或阻止流量,或重置来自此应用程序的流量连接。

选项

  • "pass"

  • "block"

  • "reset"

application

任意

(列表) 允许的应用程序的 ID。

behavior

任意

(列表) 应用程序行为过滤器。

category

任意

(列表或字符串) 类别 ID 列表。

exclusion

任意

(列表) 排除的应用程序的 ID。

id

整数

条目 ID。

log

字符串

启用/禁用此应用程序列表的日志记录。

选项

  • "disable"

  • "enable"

log_packet

别名:log-packet

字符串

启用/禁用数据包日志记录。

选项

  • "disable"

  • "enable"

parameters

列表 / 元素=字典

参数。

id

整数

参数 ID。

members

列表 / 元素=字典

成员。

id

整数

参数。

name

字符串

参数名称。

value

字符串

参数值。

value

字符串

参数值。

per_ip_shaper

别名:per-ip-shaper

字符串

每个 IP 的流量整形器。

popularity

列表 / 元素=字符串

应用程序流行度过滤器

选项

  • "1"

  • "2"

  • "3"

  • "4"

  • "5"

protocols

任意

(列表) 应用程序协议过滤器。

quarantine

字符串

隔离方法。

选项

  • "none"

  • "attacker"

quarantine_expiry

别名:quarantine-expiry

字符串

隔离持续时间。

quarantine_log

别名:quarantine-log

字符串

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

选项

  • "disable"

  • "enable"

rate_count

别名:rate-count

整数

速率计数。

rate_duration

别名:rate-duration

整数

持续时间

rate_mode

别名:rate-mode

字符串

速率限制模式。

选项

  • “周期性”

  • “连续”

rate_track

别名:rate-track

字符串

跟踪数据包协议字段。

选项

  • "none"

  • “源IP”

  • “目标IP”

  • “DHCP客户端MAC”

  • “DNS域名”

风险

任意

(列表) 允许来自此应用程序的流量发生的风险或影响

session_ttl

别名:session-ttl

整数

会话TTL

shaper

字符串

流量整形器。

shaper_reverse

别名:shaper-reverse

字符串

反向流量整形器。

sub_category

别名:sub-category

任意

(列表) 应用程序子类别ID列表。

标签

字符串

标签过滤器。

技术

任意

(列表) 应用程序技术过滤器。

厂商

任意

(列表) 应用程序厂商过滤器。

extended_log

别名:extended-log

字符串

启用/禁用扩展日志记录。

选项

  • "disable"

  • "enable"

force_inclusion_ssl_di_sigs

别名:force-inclusion-ssl-di-sigs

字符串

启用/禁用强制包含SSL深度检测签名。

选项

  • "disable"

  • "enable"

name

字符串 / 必需

列表名称。

选项

列表 / 元素=字符串

默认情况下允许的基本应用程序协议签名。

选项

  • “允许DNS”

  • “允许ICMP”

  • “允许HTTP”

  • “允许SSL”

  • “允许QUIC”

other_application_action

别名:other-application-action

字符串

其他应用程序的操作。

选项

  • "pass"

  • "block"

other_application_log

别名:other-application-log

字符串

启用/禁用其他应用程序的日志记录。

选项

  • "disable"

  • "enable"

p2p_black_list

别名:p2p-black-list

列表 / 元素=字符串

要列入黑名单的P2P应用程序。

选项

  • “Skype”

  • “eDonkey”

  • “BitTorrent”

p2p_block_list

别名:p2p-block-list

列表 / 元素=字符串

要阻止的P2P应用程序。

选项

  • “Skype”

  • “eDonkey”

  • “BitTorrent”

replacemsg_group

别名:replacemsg-group

字符串

替换消息组。

unknown_application_action

别名:unknown-application-action

字符串

允许或阻止来自未知应用程序的流量。

选项

  • "pass"

  • "block"

unknown_application_log

别名:unknown-application-log

字符串

启用/禁用未知应用程序的日志记录。

选项

  • "disable"

  • "enable"

bypass_validation

布尔值

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

选项

  • false ← (默认)

  • true

enable_log

布尔值

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

选项

  • false ← (默认)

  • true

forticloud_access_token

字符串

使用FortiCloud API访问令牌验证Ansible客户端。

proposed_method

字符串

底层Json RPC请求的覆盖方法。

选项

  • “更新”

  • “设置”

  • “添加”

rc_failed

列表 / 元素=整数

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

rc_succeeded

列表 / 元素=整数

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

状态

字符串 / 必需

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

选项

  • “存在”

  • “不存在”

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有助于完成此工作。

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

  • 要删除对象,请使用状态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 application control lists.
      fortinet.fortimanager.fmgr_application_list:
        adom: ansible
        state: present
        application_list:
          app-replacemsg: enable
          comment: "ansible-test-comment"
          deep-app-inspection: enable
          extended-log: disable
          name: "ansible-test"
          other-application-action: pass
          other-application-log: disable
          unknown-application-action: pass
          unknown-application-log: disable

- 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 application list
      fortinet.fortimanager.fmgr_fact:
        facts:
          selector: "application_list"
          params:
            adom: "ansible"
            list: "your_value"

返回值

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

描述

元数据

字典

请求的结果。

返回:始终

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)