community.digitalocean.digital_ocean_firewall 模块 – 管理 DigitalOcean 中的云防火墙
注意
此模块是 community.digitalocean 集合 (版本 1.27.0) 的一部分。
如果您正在使用 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list。
要安装它,请使用:ansible-galaxy collection install community.digitalocean。
要在 playbook 中使用它,请指定:community.digitalocean.digital_ocean_firewall。
community.digitalocean 1.1.0 中的新增功能
概要
- 此模块可用于在 DigitalOcean 云平台上添加或删除防火墙。 
参数
| 参数 | 注释 | 
|---|---|
| DigitalOcean API 基本 URL。 默认值:  | |
| 要分配到防火墙的 Droplet ID 列表 | |
| 专门针对进入 DigitalOcean 的入站网络流量的防火墙规则 | |
| 允许流量的端口,单个端口、范围或全部端口 | |
| 要接受的网络协议。 选项 
 | |
| 允许入站流量的来源位置字典 | |
| 包含防火墙允许流量的 IPv4 地址、IPv6 地址、IPv4 CIDR 和/或 IPv6 CIDR 的字符串列表 | |
| 包含防火墙允许流量的 Droplet ID 的整数列表 | |
| 包含防火墙允许流量的负载均衡器的 ID 的字符串列表 | |
| 包含防火墙允许流量的 Droplet 组对应的标签名称的字符串列表 | |
| 要创建或管理的防火墙规则的名称 | |
| DigitalOcean OAuth 令牌。 可以使用多个其他环境变量来提供此值。 例如,-  | |
| 专门针对来自 DigitalOcean 的出站网络流量的防火墙规则 | |
| 允许出站流量的目的地位置字典 | |
| 包含防火墙允许流量的 IPv4 地址、IPv6 地址、IPv4 CIDR 和/或 IPv6 CIDR 的字符串列表 | |
| 包含防火墙允许流量的 Droplet ID 的整数列表 | |
| 包含防火墙允许流量的负载均衡器的 ID 的字符串列表 | |
| 包含防火墙允许流量的 Droplet 组对应的标签名称的字符串列表 | |
| 允许流量的端口,单个端口、范围或全部端口 | |
| 要接受的网络协议。 选项 
 | |
| 声明防火墙规则的状态。设置为“present”以创建或更新,设置为“absent”以删除。 选项 
 | |
| 要分配到防火墙的标签列表 | |
| 用于轮询 DigitalOcean API 的超时时间(秒)。 默认值:  | |
| 如果设置为  只有在使用自签名证书的个人控制站点上才应将其设置为  选项 
 | 
示例
# Allows tcp connections to port 22 (SSH) from specific sources
# Allows tcp connections to ports 80 and 443 from any source
# Allows outbound access to any destination for protocols tcp, udp and icmp
# The firewall rules will be applied to any droplets with the tag "sample"
- name: Create a Firewall named my-firewall
  digital_ocean_firewall:
    name: my-firewall
    state: present
    inbound_rules:
      - protocol: "tcp"
        ports: "22"
        sources:
          addresses: ["1.2.3.4"]
          droplet_ids: ["my_droplet_id_1", "my_droplet_id_2"]
          load_balancer_uids: ["my_lb_id_1", "my_lb_id_2"]
          tags: ["tag_1", "tag_2"]
      - protocol: "tcp"
        ports: "80"
        sources:
          addresses: ["0.0.0.0/0", "::/0"]
      - protocol: "tcp"
        ports: "443"
        sources:
          addresses: ["0.0.0.0/0", "::/0"]
    outbound_rules:
      - protocol: "tcp"
        ports: "1-65535"
        destinations:
          addresses: ["0.0.0.0/0", "::/0"]
      - protocol: "udp"
        ports: "1-65535"
        destinations:
          addresses: ["0.0.0.0/0", "::/0"]
      - protocol: "icmp"
        ports: "1-65535"
        destinations:
          addresses: ["0.0.0.0/0", "::/0"]
    droplet_ids: []
    tags: ["sample"]
返回值
常见的返回值已在 此处 记录,以下是此模块特有的字段
| 键 | 描述 | 
|---|---|
| DigitalOcean 防火墙资源 返回:成功 示例:  | 
