谷歌云代理商:‌如何设置谷歌云服务器的防火墙规则?‌

本文由【云老大】 TG@yunlaoda360 撰写

使用 Google Cloud Console

  • 转到防火墙政策页面 :登录 Google Cloud Console,导航到 "VPC 网络" > "防火墙"。
  • 创建防火墙规则 :点击 "创建防火墙规则",输入规则名称(项目中需唯一)。
  • (可选)启用日志记录 :点击 "日志 > 开启",如需省略元数据,点击 "显示日志详细信息",清除 "包括元数据" 复选框。
  • 指定网络及优先级 :为规则指定网络和优先级,数字越小优先级越高。
  • 选择流量方向及操作 :选择 "入站" 或 "出站" 流量方向,以及对匹配项执行 "允许" 或 "拒绝" 操作。
  • 设置规则目标 :可选择将规则应用于网络中所有实例、按网络标记或服务账号部分应用等。
  • 保存规则 :点击 "创建"。

使用 gcloud 命令行工具

创建 VPC 防火墙规则的命令如下:

bash

css 复制代码
gcloud compute firewall-rules create RULE_NAME \
    [--network NETWORK; default="default"] \
    [--priority PRIORITY;default=1000] \
    [--direction (ingress|egress|in|out); default="ingress"] \
    [--action (deny | allow )] \
    [--target-tags TAG[,TAG,...]] \
    [--target-service-accounts=IAM_SERVICE_ACCOUNT[,IAM_SERVICE_ACCOUNT,...]] \
    [--source-ranges CIDR_RANGE[,CIDR_RANGE,...]] \
    [--source-tags TAG,TAG,] \
    [--source-service-accounts=IAM_SERVICE_ACCOUNT[,IAM_SERVICE_ACCOUNT,...]] \
    [--destination-ranges CIDR_RANGE[,CIDR_RANGE,...]] \
    [--rules (PROTOCOL[:PORT[-PORT]],[PROTOCOL[:PORT[-PORT]],...]] | all ) \
    [--disabled | --no-disabled] \
    [--enable-logging | --no-enable-logging]

例如,创建一条允许来自特定子网范围的入站 TCP 和 UDP 流量的规则:

bash

lua 复制代码
gcloud compute firewall-rules create allow-subnet-tcp-udp \
    --network my-network \
    --action allow \
    --direction ingress \
    --rules tcp:0-65535,udp:0-65535 \
    --source-ranges 10.0.0.0/24

对于出站流量规则,可使用 --destination-ranges 指定目标 IPv4 或 IPv6 地址范围。若省略 --source-ranges,则出站流量来源默认为任何 IPv4 地址 0.0.0.0/0

使用 API

创建防火墙规则的 API 请求格式如下:

bash

bash 复制代码
POST https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls
{
  "name": "RULE_NAME",
  "network": "projects/PROJECT_ID/global/networks/NETWORK",
  "sourceRanges": ["SOURCE_RANGES"],
  "allowed": [
    {
      "IPProtocol": "PROTOCOL",
      "ports": ["PORTS"]
    }
  ],
  ... other fields
}

请求参数需替换 PROJECT_ID(项目 ID)、RULE_NAME(规则名称)、NETWORK(网络名称)等信息。

更新防火墙规则

  • 使用控制台 :在 "防火墙政策" 页面点击要修改的规则,点击 "修改",修改后点击 "保存"。
  • 使用 gcloud :命令如下:

bash

sql 复制代码
gcloud compute firewall-rules update RULE_NAME \
    [--priority=PRIORITY] \
    [--description=DESCRIPTION] \
    [--target-tags=TAG,...] \
    [--target-service-accounts=IAM_SERVICE_ACCOUNT,_] \
    [--source-ranges=CIDR_RANGE,...] \
    [--source-tags=TAG,...] \
    [--source-service-accounts=IAM_SERVICE_ACCOUNT,_] \
    [--destination-ranges=CIDR_RANGE,...] \
    [--rules=[PROTOCOL[:PORT[-PORT]],...]] \
    [--disabled | --no-disabled] \
    [--enable-logging | --no-enable-logging]
  • 使用 API :使用 PATCH 可更新以下字段:alloweddescriptionsourceRangessourceTagstargetTags。对其他字段使用 PUT 或 POST。
相关推荐
小毅&Nora3 小时前
【后端】【SpringBoot】① 源码解析:从启动到优雅关闭
spring boot·后端·优雅关闭
嘻哈baby3 小时前
从TIME_WAIT爆炸到端口耗尽:Linux短连接服务排查与优化
后端
开心就好20253 小时前
iOS应用性能监控全面解析:CPU、内存、FPS、卡顿与内存泄漏检测
后端
问今域中4 小时前
Spring Boot 请求参数绑定注解
java·spring boot·后端
计算机程序设计小李同学4 小时前
婚纱摄影集成管理系统小程序
java·vue.js·spring boot·后端·微信小程序·小程序
一 乐5 小时前
绿色农产品销售|基于springboot + vue绿色农产品销售系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·宠物
3***68845 小时前
Spring Boot中使用Server-Sent Events (SSE) 实现实时数据推送教程
java·spring boot·后端
C***u1765 小时前
Spring Boot问题总结
java·spring boot·后端
上进小菜猪5 小时前
基于 YOLOv8 的人体与行人检测智能识别实战 [目标检测完整源码]
后端
Elieal6 小时前
5 种方式快速创建 SpringBoot 项目
java·spring boot·后端