fortinet.fortimanager.fmgr_pkg_firewall_proxypolicy 模块 – 配置代理策略。

注意

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

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

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

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

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_proxypolicy

字典

设置的顶级参数。

_policy_block

整数

分配的策略块。

access_proxy

别名:access-proxy

任意

(列表或字符串) 访问代理。

access_proxy6

别名:access-proxy6

任意

(列表或字符串) IPv6 访问代理。

action

字符串

接受或拒绝与策略参数匹配的流量。

选项

  • "accept"

  • "deny"

  • "redirect"

application_list

别名:application-list

字符串

现有应用程序列表的名称。

av_profile

别名:av-profile

字符串

现有防病毒配置文件的名称。

block_notification

别名:block-notification

字符串

启用/禁用阻止通知。

选项

  • "disable"

  • "enable"

casb_profile

别名:casb-profile

字符串

现有 CASB 配置文件的名称。

cifs_profile

别名:cifs-profile

字符串

现有 CIFS 配置文件的名称。

comments

字符串

可选注释。

decrypted_traffic_mirror

别名:decrypted-traffic-mirror

字符串

解密流量镜像。

detect_https_in_http_request

别名:detect-https-in-http-request

字符串

启用/禁用在 HTTP 请求中检测 HTTPS。

选项

  • "disable"

  • "enable"

device_ownership

别名:device-ownership

字符串

启用后,所有权执行将在策略级别进行。

选项

  • "disable"

  • "enable"

diameter_filter_profile

别名:diameter-filter-profile

字符串

现有 Diameter 过滤器配置文件的名称。

disclaimer

字符串

Web 代理免责声明设置

选项

  • "disable"

  • "domain"

  • "policy"

  • "user"

dlp_profile

别名:dlp-profile

字符串

现有 DLP 配置文件的名称。

dlp_sensor

别名:dlp-sensor

字符串

现有 DLP 传感器的名称。

dnsfilter_profile

别名:dnsfilter-profile

任意

(列表) 现有 DNS 过滤器配置文件的名称。

dstaddr

任意

(列表或字符串) 目的地址对象。

dstaddr6

任意

(列表或字符串) IPv6 目的地址对象。

dstaddr_negate

别名:dstaddr-negate

字符串

启用后,目的地址将与任何地址匹配,但指定的目的地址除外。

选项

  • "disable"

  • "enable"

dstintf

任意

(列表或字符串) 目的接口名称。

emailfilter_profile

别名:emailfilter-profile

字符串

现有电子邮件过滤器配置文件的名称。

file_filter_profile

别名:file-filter-profile

字符串

现有文件过滤器配置文件的名称。

global_label

别名:global-label

字符串

全局基于 Web 的管理器可见标签。

groups

任意

(列表或字符串) 组对象的名称。

http_tunnel_auth

别名:http-tunnel-auth

字符串

启用/禁用 HTTP 隧道身份验证。

选项

  • "disable"

  • "enable"

icap_profile

别名:icap-profile

字符串

现有 ICAP 配置文件的名称。

internet_service

别名:internet-service

字符串

启用/禁用为此策略使用 Internet 服务。

选项

  • "disable"

  • "enable"

internet_service6

别名:internet-service6

字符串

启用/禁用为此策略使用 Internet 服务 IPv6。

选项

  • "disable"

  • "enable"

internet_service6_custom

别名:internet-service6-custom

任意

(列表) 自定义 Internet 服务 IPv6 名称。

internet_service6_custom_group

别名:internet-service6-custom-group

任意

(列表) 自定义 Internet 服务 IPv6 组名称。

internet_service6_group

别名:internet-service6-group

任意

(列表) IPv6互联网服务组名称。

internet_service6_name

别名:internet-service6-name

任意

(列表) IPv6互联网服务名称。

internet_service6_negate

别名:internet-service6-negate

字符串

启用后,互联网服务将匹配除选定的IPv6互联网服务之外的任何IPv6互联网服务。

选项

  • "disable"

  • "enable"

internet_service_custom

别名:internet-service-custom

任意

(列表或字符串)自定义互联网服务名称。

internet_service_custom_group

别名:internet-service-custom-group

任意

(列表或字符串)自定义互联网服务组名称。

internet_service_group

别名:internet-service-group

任意

(列表或字符串)互联网服务组名称。

internet_service_id

别名:internet-service-id

任意

(列表或字符串)互联网服务ID。

internet_service_name

别名:internet-service-name

任意

(列表或字符串)互联网服务名称。

internet_service_negate

别名:internet-service-negate

字符串

启用后,互联网服务将匹配除选定的互联网服务之外的任何互联网服务。

选项

  • "disable"

  • "enable"

ips_sensor

别名:ips-sensor

字符串

现有IPS传感器的名称。

ips_voip_filter

别名:ips-voip-filter

字符串

现有VoIP的名称

标签

字符串

VDOM特定的GUI可见标签。

log_http_transaction

别名:log-http-transaction

字符串

启用/禁用HTTP事务日志。

选项

  • "disable"

  • "enable"

logtraffic

字符串

启用/禁用通过策略记录流量。

选项

  • "disable"

  • "all"

  • "utm"

logtraffic_start

别名:logtraffic-start

字符串

启用/禁用策略日志流量启动。

选项

  • "disable"

  • "enable"

mms_profile

别名:mms-profile

字符串

现有MMS配置文件的名称。

名称

字符串

策略名称。

policyid

整数 / 必需

策略ID。

poolname

任意

(列表或字符串)IP池对象的名称。

profile_group

别名:profile-group

字符串

配置文件组的名称。

profile_protocol_options

别名:profile-protocol-options

字符串

现有协议选项配置文件的名称。

profile_type

别名:profile-type

字符串

确定防火墙策略是否只允许安全配置文件组或单个配置文件。

选项

  • "single"

  • "group"

代理

字符串

显式代理的类型。

选项

  • "explicit-web"

  • "transparent-web"

  • "ftp"

  • "wanopt"

  • "ssh"

  • "ssh-tunnel"

  • "access-proxy"

  • "ztna-proxy"

redirect_url

别名:redirect-url

字符串

用于进一步显式Web代理处理的重定向URL。

replacemsg_override_group

别名:replacemsg-override-group

字符串

身份验证替换消息覆盖组。

scan_botnet_connections

别名:scan-botnet-connections

字符串

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

选项

  • "disable"

  • "block"

  • "monitor"

调度

字符串

调度对象的名称。

sctp_filter_profile

别名:sctp-filter-profile

字符串

现有SCTP过滤器配置文件的名称。

服务

任意

(列表或字符串)服务对象的名称。

service_negate

别名:service-negate

字符串

启用后,服务将匹配除指定的目的地服务之外的任何服务。

选项

  • "disable"

  • "enable"

session_ttl

别名:session-ttl

任意

(整数或字符串)此策略接受的会话的TTL(秒)

spamfilter_profile

别名:spamfilter-profile

字符串

现有垃圾邮件过滤器配置文件的名称。

srcaddr

任意

(列表或字符串)源地址对象

srcaddr6

任意

(列表或字符串)IPv6源地址对象。

srcaddr_negate

别名:srcaddr-negate

字符串

启用后,源地址将匹配除指定的源地址之外的任何地址。

选项

  • "disable"

  • "enable"

srcintf

任意

(列表或字符串)源接口名称。

ssh_filter_profile

别名:ssh-filter-profile

字符串

现有SSH过滤器配置文件的名称。

ssh_policy_redirect

别名:ssh-policy-redirect

字符串

将SSH流量重定向到匹配的透明代理策略。

选项

  • "disable"

  • "enable"

ssl_ssh_profile

别名:ssl-ssh-profile

字符串

现有SSL SSH配置文件的名称。

状态

字符串

启用/禁用策略的活动状态。

选项

  • "disable"

  • "enable"

标签

字符串

应用于地址的对象标签的名称。

透明

字符串

启用后,使用客户端的IP地址连接到服务器。

选项

  • "disable"

  • "enable"

用户

任意

(列表或字符串)用户对象的名称。

utm_status

别名:utm-status

字符串

启用UTM配置文件/传感器/列表的使用。

选项

  • "disable"

  • "enable"

uuid

字符串

通用唯一标识符

videofilter_profile

别名:videofilter-profile

字符串

现有VideoFilter配置文件的名称。

virtual_patch_profile

别名:virtual-patch-profile

字符串

虚拟补丁配置文件。

voip_profile

别名:voip-profile

字符串

现有VoIP配置文件的名称。

waf_profile

别名:waf-profile

字符串

现有Web应用程序防火墙配置文件的名称。

webcache

字符串

启用/禁用Web缓存。

选项

  • "disable"

  • "enable"

webcache_https

别名:webcache-https

字符串

启用/禁用HTTPS的Web缓存

选项

  • "disable"

  • "enable"

webfilter_profile

别名:webfilter-profile

字符串

现有Web过滤器配置文件的名称。

webproxy_forward_server

别名:webproxy-forward-server

字符串

Web代理转发服务器的名称。

webproxy_profile

别名:webproxy-profile

字符串

Web代理配置文件的名称。

ztna_ems_tag

别名:ztna-ems-tag

任意

(列表或字符串)ZTNA EMS标签名称。

ztna_proxy

别名:ztna-proxy

任意

(列表)IPv4 ZTNA流量转发代理。

ztna_tags_match_logic

别名:ztna-tags-match-logic

字符串

ZTNA标签匹配逻辑。

选项

  • "or"

  • "and"

proposed_method

字符串

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

选项

  • "update"

  • "set"

  • "add"

rc_failed

列表 / 元素=整数

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

rc_succeeded

列表 / 元素=整数

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

状态

字符串 / 必需

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

选项

  • "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 proxy policies.
      fortinet.fortimanager.fmgr_pkg_firewall_proxypolicy:
        bypass_validation: false
        adom: ansible
        pkg: ansible # package name
        state: present
        pkg_firewall_proxypolicy:
          action: accept # <value in [accept, deny, redirect]>
          comments: ansible-comment
          dstaddr: all
          dstintf: any
          policyid: 1
          schedule: always
          service: ALL
          srcaddr: all
          srcintf: any
          status: 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 proxy policies
      fortinet.fortimanager.fmgr_fact:
        facts:
          selector: "pkg_firewall_proxypolicy"
          params:
            adom: "ansible"
            proxy-policy: "your_value"
            pkg: "ansible" # package name

返回值

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

描述

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)