跳转到内容
搜索文档

创建 IP 或域名列表

最后更新 查看 MarkdownAgent 设置

Gateway 支持创建 IP、主机名或其他条目的 列表,以便在您的策略中引用。

您在加入 Cloudflare 平台时,很可能已经有了一些预先确定的安全策略。例如,您可能拥有基于主机名、IP 或与单个用户绑定的其他指标的显式拒绝列表。也许某些网络可以访问某些顶点记录,而其他网络则不能。

以简化后续维护的方式迁移到 Cloudflare 的最佳方法是构建尽可能多的可重用对象。这不仅是因为这可以使策略构建更简单,而且因为随着这些应用程序、网络和服务有机地发生变化和增长,对列表的更新将自动应用到所有应用了该列表的地方。

从 CSV 文件创建列表

要测试上传 CSV 列表,您可以下载 IP 地址范围的示例 CSV 文件,或将以下内容复制到文件中:

list-test.csvcsv
value,description
192.0.2.0/24,This is an IP address range in CIDR format
198.51.100.0/24,This is also an IP address range
203.0.113.0/24,This is the third IP address range

格式化要上传的 CSV 文件时:

  • 每行应为一个包含值和可选说明的单一条目。
  • 必须包含表头行,以便 Zero Trust 识别说明。
  • 不允许有尾随空格字符。
  • CRLF(Windows)和 LF(Unix)换行符均有效。

要将列表上传到 Cloudflare 仪表板:

  1. Cloudflare 仪表板中,转到 Zero Trust > Reusable components(可重用组件) > Lists(列表)
  2. 选择 Upload CSV(上传 CSV)
  3. 接下来,指定 List name(列表名称),输入可选说明,然后选择 List type(列表类型)
  4. 将文件拖放到 CSV file(CSV 文件) 窗口中,或选择一个文件。
  5. 选择 Create(创建)
  1. 向您的 cloudflare_api_token 添加以下权限:

    • Zero Trust Write
  2. 解码 CSV 文件的内容并将其存储为本地值:

    locals {
    	ip_list = csvdecode(file("${path.module}/list-test.csv"))
    }
  3. 使用 cloudflare_zero_trust_list 资源创建列表:

    resource "cloudflare_zero_trust_list" "ips_from_csv" {
    	account_id  = var.cloudflare_account_id
    	name        = "IPs imported from CSV"
    	description = "Managed by Terraform"
    	type        = "IP"
    	items 			= local.ip_list
    }

您现在可以通过选择 in list 运算符在策略生成器中使用此列表。

手动创建列表

  1. Cloudflare 仪表板中,转到 Zero Trust > Reusable components(可重用组件) > Lists(列表)
  2. 选择 Create a manual list(创建手动列表)
  3. 接下来,指定 List name(列表名称),输入可选说明,然后选择 List type(列表类型)
  4. Add items(添加条目) 字段中手动输入您的列表元素,然后选择 Add(添加)
  5. 选择 Save(保存)
Create Zero Trust listbash
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/lists" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"description": "Private application IPs",
		"items": [
				{
						"value": "10.226.0.177/32"
				},
				{
						"value": "10.226.1.177/32"
				}
		],
		"name": "Corporate IP list",
		"type": "IP"
	}'
  1. 向您的 cloudflare_api_token 添加以下权限:

    • Zero Trust Write
  2. 使用 cloudflare_zero_trust_list 资源创建列表。

    IP 列表示例:

    resource "cloudflare_zero_trust_list" "wiki_IPs" {
    	account_id  = var.cloudflare_account_id
    	name        = "Company Wiki IP addresses"
    	description = "Managed by Terraform"
    	type        = "IP"
    	items = [
    		{
    			description = "Example IP address range"
    			value = "192.0.2.0/24",
    		},
    		{
    			value = "198.51.100.0/24"
    		}
    	]
    }

    域列表示例:

    resource "cloudflare_zero_trust_list" "wiki_domains" {
    	account_id  = var.cloudflare_account_id
    	name        = "Company Wiki Domains"
    	description = "Managed by Terraform"
    	type        = "DOMAIN"
    	items = [
    		{
    			value = "wiki.example.com"
    		},
    		{
    			value = "wiki2.example.com"
    		}]
    }

您现在可以通过选择 in list 运算符在策略生成器中使用此列表。

这篇文档对您有帮助吗?