检查点
Create a custom network, subnetworks and firewall rules
/ 50
网络组建和管理基础知识
GSP016
概览
在本实验中,您将了解如何在 Google Cloud(包括 Compute Engine 实例)上执行基本的网络组建和管理任务,以及 Google Cloud 和本地设置之间的差异。您将组建一个网络和 3 个子网,构建最终状态如下的环境:
最后,您将了解如何创建防火墙规则,以及如何使用实例标记来应用防火墙规则。
学习内容
- Google Cloud 网络的基本概念和结构
- 如何配置默认网络和用户创建的网络。
- 如何创建防火墙规则,以及如何使用实例标记来应用防火墙规则
设置和要求
点击“开始实验”按钮前的注意事项
请阅读以下说明。实验是计时的,并且您无法暂停实验。计时器在您点击开始实验后即开始计时,显示 Google Cloud 资源可供您使用多长时间。
此实操实验可让您在真实的云环境中开展实验活动,免受模拟或演示环境的局限。我们会为您提供新的临时凭据,让您可以在实验规定的时间内用来登录和访问 Google Cloud。
为完成此实验,您需要:
- 能够使用标准的互联网浏览器(建议使用 Chrome 浏览器)。
- 完成实验的时间 - 请注意,实验开始后无法暂停。
如何开始实验并登录 Google Cloud 控制台
-
点击开始实验按钮。如果该实验需要付费,系统会打开一个弹出式窗口供您选择付款方式。左侧是实验详细信息面板,其中包含以下各项:
- 打开 Google Cloud 控制台按钮
- 剩余时间
- 进行该实验时必须使用的临时凭据
- 帮助您逐步完成本实验所需的其他信息(如果需要)
-
点击打开 Google Cloud 控制台(如果您使用的是 Chrome 浏览器,请右键点击并选择在无痕式窗口中打开链接)。
该实验会启动资源并打开另一个标签页,显示登录页面。
提示:请将这些标签页安排在不同的窗口中,并将它们并排显示。
注意:如果您看见选择账号对话框,请点击使用其他账号。 -
如有必要,请复制下方的用户名,然后将其粘贴到登录对话框中。
{{{user_0.username | "<用户名>"}}} 您也可以在实验详细信息面板中找到用户名。
-
点击下一步。
-
复制下面的密码,然后将其粘贴到欢迎对话框中。
{{{user_0.password | "<密码>"}}} 您也可以在实验详细信息面板中找到密码。
-
点击下一步。
重要提示:您必须使用实验提供的凭据。请勿使用您的 Google Cloud 账号凭据。 注意:在本次实验中使用您自己的 Google Cloud 账号可能会产生额外费用。 -
继续在后续页面中点击以完成相应操作:
- 接受条款及条件。
- 由于该账号为临时账号,请勿添加账号恢复选项或双重验证。
- 请勿注册免费试用。
片刻之后,系统会在此标签页中打开 Google Cloud 控制台。
激活 Cloud Shell
Cloud Shell 是一种装有开发者工具的虚拟机。它提供了一个永久性的 5GB 主目录,并且在 Google Cloud 上运行。Cloud Shell 提供可用于访问您的 Google Cloud 资源的命令行工具。
- 点击 Google Cloud 控制台顶部的激活 Cloud Shell 。
如果您连接成功,即表示您已通过身份验证,且当前项目会被设为您的 PROJECT_ID 环境变量所指的项目。输出内容中有一行说明了此会话的 PROJECT_ID:
gcloud
是 Google Cloud 的命令行工具。它已预先安装在 Cloud Shell 上,且支持 Tab 自动补全功能。
- (可选)您可以通过此命令列出活跃账号名称:
-
点击授权。
-
现在,输出的内容应如下所示:
输出:
- (可选)您可以通过此命令列出项目 ID:
输出:
输出示例:
gcloud
, in Google Cloud, refer to the gcloud CLI overview guide.
了解区域和可用区
某些 Compute Engine 资源位于区域或可用区内。区域是指某一块地理位置,您可以在其中运行自己的资源。每个区域包含一个或多个可用区。例如,us-central1 区域表示美国中部的一个区域,该区域包含的可用区有 us-central1-a
、us-central1-b
、us-central1-c
和 us-central1-f
。
区域 | 可用区 |
---|---|
美国西部 | us-west1-a、us-west1-b |
美国中部 | us-central1-a、us-central1-b、us-central1-d、us-central1-f |
美国东部 | us-east1-b、us-east1-c、us-east1-d |
西欧 | europe-west1-b、europe-west1-c、europe-west1-d |
东亚 | asia-east1-a、asia-east1-b、asia-east1-c |
可用区内的资源称为可用区级资源,例如可用区内的虚拟机实例和永久性磁盘。要将永久性磁盘附加到虚拟机实例,这两项资源必须位于同一可用区内。同理,如果要为某个实例分配一个静态 IP 地址,则该实例与该静态 IP 必须位于同一区域内。
Google Cloud 网络概念
在 Google Cloud Platform 中,网络为数据进出云资源(大多数是 Compute Engine 实例)提供连接。保护您的网络对于保障数据安全和控制对资源的访问权限至关重要。
Google Cloud Platform 支持项目、网络和子网,能够对不相关的资源实现灵活的逻辑隔离。
项目是最外层的容器,用于对共享相同信任边界的资源进行分组。许多开发者会将项目映射到团队,因为每个项目都有自己的访问权限政策 (IAM) 和成员列表。项目还起着收集器的作用,收纳可反映资源使用情况的结算详情和配额详情。项目包含网络,而网络包含子网、防火墙规则和路由(请参阅下面的架构示意图)。
网络将资源直接彼此连接以及连接到外部环境。使用防火墙的网络还包含用于控制传入和传出连接的访问权限政策。网络可以是全球网络(可跨多个区域横向伸缩),也可以是区域性网络(可在一个区域内实现低延迟)。
子网支持将相关资源(Compute Engine 实例)分组到 RFC1918 专用地址空间中。子网只能是区域性网络。子网可以采用自动模式或自定义模式。
- 采用自动模式的网络在每个区域都有一个子网,每个子网都有预先确定的 IP 地址范围和网关。当您创建采用自动模式的网络时,这些子网会自动创建,每个子网的名称与整个网络相同。
- 采用自定义模式的网络在创建时没有子网。要在采用自定义模式的网络中创建实例,您必须首先在该区域创建一个子网并指定其 IP 地址范围。采用自定义模式的网络在每个区域可以有一个或多个子网,也可以没有子网。
设置区域和可用区
某些 Compute Engine 资源位于区域和可用区内。区域是指某个地理位置,您可以在其中运行自己的资源。每个区域包含一个或多个可用区。
在 Cloud Shell 中运行以下 gcloud
命令,设置实验的默认区域和可用区:
任务 1. 查看默认网络
创建新项目时,默认网络配置会为每个区域提供一个自动创建的子网。您最多可以在一个项目中创建四个额外的网络。额外的网络可以是自动子网、自定义子网或旧版网络。
在子网内创建的每个实例都会分配到一个该子网范围内的 IPv4 地址。
- 查看您的网络。点击导航菜单 > VPC 网络。
防火墙
如需详细了解如何使用防火墙规则来隔离子网,请参阅子网和防火墙规则。
每个网络都有一个默认防火墙,用于阻止传输到实例的所有入站流量。要允许流量进入实例,您必须为防火墙创建“允许”规则。此外,默认防火墙会允许来自实例的流量,除非您使用“出站流量”防火墙配置将其配置为阻止出站连接。因此,默认情况下,您可以为要允许入站的流量创建“允许”规则,为要限制出站的流量创建“拒绝”规则。您还可以为出站流量创建默认拒绝政策,并完全禁止外部连接。
一般来说,我们建议您配置最严格的防火墙规则,只让它支持您将允许传输的流量类型。比如,如果您需要允许流量到达某些实例,但限制流量到达其他实例,可创建仅允许流量到达目标实例的规则。相较于允许流量传输到所有实例的宽松防火墙规则,限制更严的配置更具可预测性。如果您希望“拒绝”规则优先于特定的“允许”规则,可以为每个规则设置优先级。系统将首先根据优先级编号最小的规则进行评估。但是,创建多组繁杂的覆盖规则可能会允许或阻止非预期流量。
默认网络已自动创建防火墙规则,如下所示。手动创建的网络不会自动创建防火墙规则,无论该网络是何种类型。对于除默认网络之外的所有网络,您必须创建所需的全部防火墙规则。
为默认网络自动创建的入站流量防火墙规则如下:
|
允许网络中的实例之间通过任何协议和端口建立网络连接。 |
|
允许任何来源与网络中的任何实例通过 TCP 端口 22 建立 SSH 连接。 |
|
允许任何来源与网络中的任何实例通过 TCP 端口 3389 建立 RDP 连接。 |
|
允许来自任何来源的 ICMP 流量传输到网络中的任何实例。 |
- 要查看默认的防火墙规则,可在 Cloud 控制台中依次点击导航菜单 > VPC 网络 > 防火墙。
网络路由
系统会为所有网络自动创建连接到互联网的路由(默认路由)和连接到网络内 IP 范围的路由。路由名称是自动生成的,并且各项目的路由名称各不相同。
- 要查看默认路由,请依次点击导航菜单 > VPC 网络 > 路由,在相应字段中分别选择网络和区域,然后点击“查看”以显示路由。
任务 2. 创建一个自定义网络
手动分配子网范围时,首先需创建一个自定义网络,然后创建要布局在一个区域中的子网。您不必立即为所有区域指定子网,甚至根本不必指定子网,但是,您无法在没有定义子网的区域中创建实例。
创建新的子网时,其名称必须在该区域的相应项目内保持唯一,即使子网位于不同的网络中也必须如此。在不同区域的同一个项目中,可以使用相同的子网名称。子网没有网络级 IPv4 范围或网关 IP,因此这些信息不会显示。
您可以在控制台或 Cloud Shell 中创建自定义网络。我们将在稍后为您介绍这两种方法,但您需要决定在本实验中使用哪一种方法。例如,您不能使用控制台指令完成某个部分的任务,然后使用 gcloud
命令行完成同一部分的任务。
如需创建自定义网络,请执行以下操作:
-
点击导航菜单 > VPC 网络。
-
点击创建 VPC 网络,将其命名为
taw-custom-network
。 -
在自定义标签页上,输入以下信息:
- 子网名称:subnet-
- 区域:
- IP 地址范围:
10.0.0.0/16
- 子网名称:subnet-
-
点击完成。
-
现在,点击添加子网,再在相应的区域中添加两个子网:
- subnet-
, ,10.1.0.0/16 - subnet-
, ,10.2.0.0/16
- subnet-
-
点击创建完成操作。
此时,您的网络已拥有连接到互联网以及您可能创建的任何实例的路由。但没有相应的防火墙规则来允许访问这些实例,甚至无法从其他实例进行访问。要允许访问,您必须创建防火墙规则。
继续添加防火墙规则部分。
任务 3. 添加防火墙规则
要允许访问虚拟机实例,您必须应用防火墙规则。在本实验中,您将使用实例标记将防火墙规则应用于虚拟机实例。防火墙规则将应用于具有相同实例标记的所有虚拟机。
- 首先,打开防火墙以允许 HTTP 互联网请求,然后添加更多防火墙规则。
通过控制台添加防火墙规则
- 在 Cloud 控制台中,前往 VPC 网络,然后点击 taw-custom-network:
- 点击防火墙标签页,然后点击添加防火墙规则。
- 输入以下信息:
字段 |
值 |
注释 |
名称 |
nw101-allow-http |
新规则名称 |
目标 |
指定的目标标记 |
防火墙规则适用的实例。 |
目标标记 |
http |
创建的标记 |
来源过滤条件 |
IPv4 范围 |
防火墙允许来自互联网上所有 IP 地址的流量。 |
来源 IPv4 范围 |
0.0.0.0/0 |
防火墙允许来自互联网上所有 IP 地址的流量。 |
协议和端口 |
选择指定的协议和端口,勾选 tcp 复选框,然后输入 80 |
仅限 HTTP |
屏幕将如下所示:
- 点击创建,等待命令成功完成。接下来,根据需要创建更多防火墙规则。
创建额外的防火墙规则
这些额外的防火墙规则将允许 ICMP、内部通信、SSH 和 RDP 连接。您可以使用控制台来创建这些规则。
- ICMP
字段 |
值 |
注释 |
名称 |
nw101-allow-icmp |
新规则名称 |
目标 |
指定的目标标记 |
从“目标”下拉菜单中选择 |
目标标记 |
rules |
标记 |
来源过滤条件 |
IPv4 范围 |
防火墙允许来自此列表上所有 IP 地址的流量。 |
来源 IPv4 范围 |
0.0.0.0/0 |
防火墙允许来自互联网上所有 IP 地址的流量。 |
协议和端口 |
依次选择指定的协议和端口、其他协议,然后输入 icmp |
防火墙规则适用的协议和端口 |
- 内部通信
字段 |
值 |
注释 |
名称 |
nw101-allow-internal |
新规则名称 |
目标 |
网络中的所有实例 |
从“目标”下拉菜单中选择 |
来源过滤条件 |
IPv4 范围 |
用于将规则应用于特定流量来源的过滤条件 |
来源 IPv4 范围 |
10.0.0.0/16、 10.1.0.0/16、 10.2.0.0/16 |
防火墙允许来自互联网上所有 IP 地址的流量。 |
协议和端口 |
依次选择指定的协议和端口、tcp,然后输入 0-65535,勾选 udp,输入 0-65535,勾选其他协议,然后输入 icmp |
允许 Tcp:0-65535、udp:0-65535、icmp |
- SSH
字段 |
值 |
注释 |
名称 |
nw101-allow-ssh |
新规则名称 |
目标 |
指定的目标标记 |
ssh |
目标标记 |
ssh |
防火墙规则适用的实例 |
来源过滤条件 |
IPv4 范围 |
用于将规则应用于特定流量来源的过滤条件 |
来源 IPv4 范围 |
0.0.0.0/0 |
防火墙允许来自互联网上所有 IP 地址的流量。 |
协议和端口 |
选择指定的协议和端口,勾选 tcp 复选框,然后输入 22 |
允许 tcp:22 |
- RDP
字段 |
值 |
注释 |
名称 |
nw101-allow-rdp |
新规则名称 |
目标 |
网络中的所有实例 |
从“目标”下拉菜单中选择 |
来源过滤条件 |
IPv4 范围 |
过滤 IP 地址 |
来源 IPv4 范围 |
0.0.0.0/0 |
防火墙允许来自互联网上所有 IP 地址的流量。 |
协议和端口 |
选择指定的协议和端口,勾选 tcp,然后输入 3389 |
允许 tcp:3389 |
- 使用控制台查看您网络中的防火墙规则。它应如下所示:
点击检查我的进度以验证是否完成了以下目标:
结束实验
完成实验后,请点击结束实验。您使用的账号和资源会从实验平台中移除。
系统会提示您为实验体验评分。请选择相应的评分星级,输入评论,然后点击提交。
星级的含义如下:
- 1 颗星 = 非常不满意
- 2 颗星 = 不满意
- 3 颗星 = 一般
- 4 颗星 = 满意
- 5 颗星 = 非常满意
如果您不想提供反馈,可以关闭该对话框。
如果要留言反馈、提出建议或做出更正,请使用支持标签页。
恭喜
您学习了如何配置默认网络和用户创建的网络,如何添加子网以及如何应用防火墙规则来控制访问权限。
Google Cloud 培训和认证
…可帮助您充分利用 Google Cloud 技术。我们的课程会讲解各项技能与最佳实践,可帮助您迅速上手使用并继续学习更深入的知识。我们提供从基础到高级的全方位培训,并有点播、直播和虚拟三种方式选择,让您可以按照自己的日程安排学习时间。各项认证可以帮助您核实并证明您在 Google Cloud 技术方面的技能与专业知识。
本手册的最后更新时间:2024 年 10 月 22 日
本实验的最后测试时间:2024 年 10 月 22 日
版权所有 2024 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。