AWS|Azure|GCP及国际版阿里云/腾讯云/华为云全球六大云厂商安全组与网络配置保姆级教程

cloud 2026-05-22 阅读 17
cloud

在云计算的宇宙里,有两句被无数网络工程师的眼泪浸透的至理名言:

  1. “网络没通,大概率是路由或安全组没开。”
  2. “网络被黑,大概率是安全组开了 0.0.0.0/0。”

作为出海业务、跨国架构或者多云部署的IT人,每天打交道最多的就是各大云厂商的网络配置。很多人觉得不就是“点点鼠标开个端口”吗?但真正到了多云架构下,你会发现每个大厂的管辖逻辑、术语甚至坑位都完全不同。AWS 的有状态安全组、Azure 的 NSG 优先级、GCP 的全局 VPC……只要一个细节没吃透,轻则网络不通排查到深夜,重则核心数据库直接在公网“裸奔”。

今天这篇深度硬核长文,不讲虚的 PPT 理论,直接复刻全网最全的六大海外主流云厂商(AWS、Azure、GCP、OCI、Alibaba Cloud International、Tencent Cloud International)的网络拓扑与网络防火墙(安全组)的“保姆级”实操指南。建议收藏,关键时刻这就是你的网络排查排障手册。

一、 核心概念对齐:别被大厂的黑话绕晕了

在正式敲键盘之前,我们必须先把六大厂商的“黑话(术语)”拉到同一个维度。虽然叫法千奇百怪,但底层逻辑无非是三样东西:私有网络(坑位)、路由器/路由表(路标)、防火墙(门卫)

云厂商私有网络 (VPC/VNet)子网 (Subnet)状态防火墙 (安全组/组件)subnet/网络级防火墙
AWSVPC (区域级)Subnet (可用区级)Security Group (有状态)Network ACL (无状态)
AzureVNet (区域级)Subnet (子网)Network Security Group (NSG)同样使用 NSG 绑定子网
GCPVPC (全局/Global)Subnet (区域级)VPC Firewall Rules (有状态)标签/服务账号组合控制
Oracle (OCI)VCN (区域级)Subnet (区域/可用区)Security List / NSGSecurity List (组件级)
阿里云国际VPC (区域级)VSwitch (可用区级)安全组 (Security Group)网络ACL (Network ACL)
腾讯云国际VPC (区域级)Subnet (可用区级)安全组 (Security Group)网络ACL (Network ACL)

核心底层逻辑:有状态(Stateful) vs 无状态(Stateless)

这是新人最容易栽跟头的地方:

  • 有状态(Security Group / 防火墙规则): 你进来了,我就默认让你出去。比如你允许了外部 80 端口访问,那么服务器响应 80 端口回包时,不需要在出站规则里额外开辟随机高端口。
  • 无状态(Network ACL / 某些特定路由): 进出分明,各走各路。你开了进站 80 端口,如果出站规则没开 1024-65535 的临时端口(Ephemeral Ports),流量依然死在半路上。

二、 详解六大海外大厂:实操与避坑指南

1. AWS (Amazon Web Services):老大哥的“双层防御”

AWS 的网络设计极其经典,也是很多云厂商模仿的对象。它的核心思维是:区域级 VPC 划分为不同的可用区(AZ)子网,再用无状态的 NACL 守住子网大门,最后用有状态的 Security Group(安全组)守住实例房门。

🛠️ 黄金配置路径:

  1. 创建自定义 VPC:千万别贪省事用 Default VPC,自己规划网段(例如 10.0.0.0/16)。
  2. 切分子网:至少划分为 Public Subnet(关联了 Internet Gateway,有公网路由)和 Private Subnet(没有公网路由,仅通过 NAT Gateway 出网)。
  3. 安全组配置:入站(Inbound):精准开放。例如 Web 服务器只开 80 和 443,源地址设为 0.0.0.0/0 或 ALB(负载均衡)的安全组 ID。出站(Outbound):默认是 0.0.0.0/0 允许所有,如果合规严苛,需要限制为特定的私网网段。

⚠️ AWS 避坑血泪史:

  • 安全组引用: 别总傻傻地写 IP 地址!AWS 安全组最强的功能是“源地址可以填写另一个安全组 ID”。这意味着,你可以设置“只有后端安全组 B 允许接收来自前端安全组 A 的流量”,任凭前端 EC2 怎么弹性伸缩、IP 怎么变,网络逻辑固若金汤。
  • NACL 默认规则: 自定义 NACL 默认是 Deny All。如果你建了自定义 NACL 又忘了加规则,整个子网瞬间变成网络孤岛。

2. Microsoft Azure:优先级至上的“安全组组长”

微软的 Azure 称私有网络为 VNet。Azure 在安全控制上的逻辑和 AWS 有一点根本性的不同:它的 NSG(Network Security Group) 既可以绑定在网卡(NIC)上,也可以绑定在子网(Subnet)上。而且,Azure 引入了优先级(Priority,100-4096)的概念。

🛠️ 黄金配置路径:

  1. 创建 VNet 与 Subnet:Azure 的 Subnet 不绑定可用区,它是区域级的,这让高可用部署更灵活。
  2. 配置 NSG 规则:规则数字越小,优先级越高。进站(Inbound): 允许管理员从特定 IP 访问 22/3389,优先级设为 100;允许 HTTP/HTTPS,优先级设为 200;其余默认。

⚠️ Azure 避坑血泪史:

  • 默认的三大隐藏规则: Azure 的 NSG 底部自带三个默认规则(你删不掉,只能用更高优先级覆盖):AllowVnetInBound:VNet 内部所有子网默认互通!AllowAzureLoadBalancerInBound:允许 Azure 探针。DenyAllInBound:阻断其余所有。很多小白以为划分了不同子网就隔离了,结果发现开发环境直接摸到了生产环境的数据库,就是因为没有显式写一条高优先级的 Deny 规则阻断跨子网通信。

3. GCP (Google Cloud Platform):打破常理的“全局网络”与“标签大师”

谷歌云(GCP)的网络架构在六大厂里是最特立独行的。它的 VPC 是 Global(全局)的,不属于某个特定区域(Region)。 只要你在一个 VPC 里,全球各地的子网默认通过谷歌的内网骨干网互通。

更绝的是,GCP 没有传统意义上绑定网卡或子网的安全组。它用的是防火墙规则(Firewall Rules)+ 网络标签(Network Tags)或服务账号(Service Accounts)

🛠️ 黄金配置路径:

  1. 定义网络标签:比如给你的虚拟机打上标签 http-server 或 backend-db。
  2. 编写防火墙规则:创建一条规则:“允许流量进来,目标端口 80,443”。目标(Target): 选择“指定的网络标签(Specified target tags)”,填入 http-server。源(Source): 填入 0.0.0.0/0。

⚠️ GCP 避坑血泪史:

  • 标签拼写错误: 标签是一个纯文本字符串。如果你在虚拟机上打的标签是 web-server,但在防火墙规则里手抖打成了 web_server(下划线变连字符),谷歌没有任何纠错提示,你的服务就永远在公网消失了。
  • 默认拒绝 vs 默认允许: GCP 默认会创建一些 default-allow-internal 规则。如果你用的是默认网络,全球所有区域的机器默认都能互相 Ping 通,记得在生产环境中精简这些规则。

4. OCI (Oracle Cloud Infrastructure):严苛到极致的“默认拒绝”

甲骨文云(OCI)这几年因为各种高性价比的免费套餐和强劲的硬件异军突起。OCI 的网络叫 VCN(Virtual Cloud Network)。它的安全逻辑结合了 AWS 和 Azure 的特点,拥有 Security List(安全列表,子网级)Network Security Group(NSG,网卡级)

🛠️ 黄金配置路径:

  1. 创建 VCN:推荐使用“VCN Wizard”,它会自动帮你把 Internet Gateway、NAT Gateway、路由表全部配齐,省去手工关联的痛苦。
  2. 选用 NSG 代替 Security List:OCI 官方目前更推荐使用 NSG,因为安全列表是应用到整个子网的,粒度太粗。
  3. 添加入站规则:OCI 的规则界面非常直观,选择 Stateless(无状态)或有状态,指定 TCP 协议和端口。

⚠️ OCI 避坑血泪史:

  • 铁壁江山,默认全关: OCI 的初始严苛程度是各大云厂商之最。即便你创建虚拟机时分配了公网 IP,并且在控制台里把 NSG 开到了最大(0.0.0.0/0 允许所有),你大概率还是连不上机器。
  • 系统内部防火墙(Ubuntu/Oracle Linux): 这是 OCI 最著名的巨坑! 它的官方镜像内部(操作系统的 iptables 或 ufw)默认把所有入站流量都阻断了。你必须 SSH 进去(如果能进),或者在初始化脚本(Cloud-init)里执行清空 iptables 的命令,外面的流量才能真正进来。

5. 阿里云国际版 (Alibaba Cloud International):对大流量和高并发的高效收拢

阿里云国际版的网络设计(VPC)和安全组在逻辑上和 AWS 非常相似,但在管理复杂性上做了很多本地化和亚洲开发者的习惯优化。它的安全组分为普通安全组企业级安全组

🛠️ 黄金配置路径:

  1. 创建专有网络 VPC 与交换机(VSwitch):注意,阿里云的子网叫交换机(VSwitch)。
  2. 选择安全组类型:普通安全组: 组内实例默认互通,单组支持实例较多。企业级安全组: 组内实例默认隔离,安全性极高,适合金融、电商等生产环境。
  3. 规则授权: 支持“地址段访问”和“安全组组组互访”。

⚠️ 阿里云国际版避坑血泪史:

  • ICMP(Ping)默认不通: 新手建完 ECS 实例后,习惯性地在本地 Ping 一下公网 IP,发现不通就以为网络挂了。其实阿里云国际版的默认安全组规则里往往没有放行 ICMP 协议。去安全组里加一条“协议类型:ICMP”就能解决。
  • 出方向的拦截: 阿里云对一些特定端口(如邮件常用的 25 端口)在网络底层做了全局封禁。如果你要在云上搭建自建邮件服务器,必须提交工单单独申请解封,在安全组里开通是没用的。

6. 腾讯云国际版 (Tencent Cloud International):极简流线型与精细化管理

腾讯云国际版(Tencent Cloud)的网络架构同样基于 VPC。它的安全组设计非常强调“可读性”“模板化”。你可以创建几个标准的安全组模板(如“通用 Web 服务器模板”、“数据库只允许内网模板”),然后一键绑定到不同的实例上。

🛠️ 黄金配置路径:

  1. 创建 VPC 与子网。
  2. 利用安全组实例关联:腾讯云支持一张网卡绑定多个安全组。
  3. 规则生效顺序: 从上到下,一旦匹配成功就不再往下匹配(类似于 Azure 和传统防火墙的逻辑,这一点与 AWS 所有规则取并集不同)。

⚠️ 腾讯云国际版避坑血泪史:

  • 多安全组叠加时的“覆盖效应”: 因为腾讯云的一台 CVM 实例可以绑定多个安全组,而它的规则是按顺序匹配且单个组内有拒绝/允许之分。如果你不小心把一个带有“Deny All”的安全组挪到了最上面,下面所有精心配置的“Allow”规则都会瞬间失效。

三、 高阶架构避坑:多云网络配置的通病与解法

当你成为架构师,需要在一个项目里同时调度上述几家厂商时,真正的挑战才刚刚开始。

1. 跨云连接的“MTU 悬崖”

当你用 VPN 或者专线把 AWS VPC 和 Azure VNet 连起来的时候,经常会遇到一个诡异的现象:小流量的 Ping、SSH 很顺畅,但一传输大文件或跑大 SQL,连接就会无故断开(Timeout)。

  • 原因: 各大厂商底层的网络封装不同,导致MTU(最大传输单元)不一致。AWS 默认可能是 9001(巨型帧)或 1500,而经典 VPN 的 MTU 必须是 1420 或 1350。
  • 解法: 务必在两端的虚拟机或路由器上开启 MSS Clamping(MSS 钳制),或者手动将实例网卡的 MTU 调低到 1420。

2. 多云互联的网段重叠(Overlap)

在规划网络之初,就要死死记住:绝对不要在任何地方使用重复的本地网段。

如果你把 AWS 设为 10.0.0.0/16,Azure 也设为 10.0.0.0/16,当业务发展需要打通跨云对等连接(VPC Peering/Transit Gateway)时,你只能彻底推倒重来。最好的做法是按厂商和业务线严格划分:

  • AWS 生产:10.1.0.0/16
  • Azure 生产:10.2.0.0/16
  • GCP 生产:10.3.0.0/16

四、 总结:云上网络的“四大军规”

不管你用的是哪家云,通往优秀网络架构师的道路上都有四条通行的军规:

最小权限原则: 能开 /32(单IP)绝不开 /24(网段),能开 /24 绝不开 0.0.0.0/0。入站严管,出站精细: 限制内网核心数据库、中间件的出网权限。即使黑客通过 Web 漏洞拿到了服务器的 Webshell,由于出站阻断,他也无法把木马下载进来,更无法把数据外传(C2 回连失败)。动用基础设施即代码(IaC): 超过10个安全组规则时,人类的肉眼和记忆力就不再可靠。用 Terraform 或 Pulumi 来管理你的网络,让每一次安全组的变更都有迹可循、代码化评审。别忘了系统层: 当网络不通时,排查顺序永远是:本地服务监听状态 -> 操作系统内核防火墙(iptables/ufw/Windows Firewall) -> 云厂商安全组 -> 云厂商子网ACL/路由表。

掌控了这六大厂商的网络配置底座,你就拿到了多云架构演进的入场券。面对复杂的跨国出海业务,你也能气定神闲地在键盘上敲下:Connection Allowed。


cloud
← 返回新闻中心