Amazon VPC - 快速指南

什么是 Amazon VPC?

Amazon Virtual Private Cloud (VPC) 是 Amazon Web Services (AWS) 的一项关键功能,可让您在 AWS 云中设置自己的隔离网络。

  • Amazon VPC 让您完全控制您的网络环境。您可以自定义自己的 IP 地址范围、创建子网以及配置路由表和网关。
  • 借助 Amazon VPC,您可以安全地连接您的 AWS 资源,如 EC2 实例、RDS 数据库和 Lambda 函数。您还可以维护强大的安全措施,如网络访问控制和数据加密。
  • 使用 Amazon VPC,您可以选择您的资源如何相互通信以及与 Internet 通信。它可确保您的基础设施根据您的业务需求进行修改。

简而言之,Amazon VPC 就像云中的个人数据中心,可让您在安全且受控的环境中构建应用程序和服务。

Amazon VPC 的功能

Amazon VPC 具有多种功能,可使企业安全高效地管理其云基础设施。

下面列出了 Amazon VPC 的一些主要功能 −

1. VPC 流日志

流日志是一种功能,可让您捕获和监控 VPC 内的网络流量。它使您能够监控传入和传出流量,从而帮助您了解网络中的信息流并检测任何可疑活动。

2. IP 地址管理器 (IPAM)

IPAM 是一种功能,可让您规划、管理和监控整个 AWS 环境中的 IP 地址。借助 IPAM,您可以自动分配 IP 地址。

IPAM 可防止 IP 冲突并确保您的资源在需要时具有正确的 IP 地址。

3. IPv4 和 IPv6 支持

Amazon VPC 同时支持 IPv4 和 IPv6 寻址。这就是它使您的应用程序能够使用最新的互联网协议进行通信的方式。它使您可以选择使用 Amazon 提供的公共 IPv4 地址、弹性 IPv4 地址或来自 Amazon 提供的 IPv6 子网 CIDR 的 IP 地址。您还可以在 Amazon VPC 中使用自己的 IPv4 或 IPv6 地址。

4. 入口路由

此功能允许您控制如何路由到您的 Amazon VPC 的所有传入和传出流量。它使您能够在流量到达业务工作负载之前将其引导到防火墙等特定端点。

入口路由可增强网络安全性,实现流量过滤、监控和负载平衡。

5. AWS Direct Connect

AWS Direct Connect 功能,顾名思义,在您的本地数据中心和 AWS 之间提供专用的私有连接。它绕过公共互联网,因此提供更一致的网络性能并增强敏感数据的安全性。

6. 可达性分析器

Amazon VPC 可达性分析器是一种网络诊断工具,借助它,您可以分析和排除 VPC 内的网络连接问题。它的主要作用是检查两个端点(例如 EC2 实例)之间的网络路径,并检查它们是否可访问。

如果存在连接问题,则可达性分析器会识别出阻止组件,如安全组、网络访问控制列表 (ACL) 或路由表。

7. 网络访问控制列表 (ACL)

它是 VPC 的可选安全层。它实际上充当防火墙,控制一个或多个子网的流量。您可以使用在 VPC 中设置安全组的相同规则来设置 ACL。

8. 安全组

此功能允许您在实例级别(例如 Amazon EC2 实例)控制进出流量。它还可以充当防火墙。建议将您的 Amazon 实例与一个或多个安全组关联。如果您未指定组,您的实例将自动与 VPC 的默认组关联。

Amazon VPC - 组件

Amazon Virtual Private Cloud (VPC) 允许您在 AWS 云中设置自己的隔离网络。它就像传统的本地网络设置一样。

借助 Amazon VPC,您可以在 AWS 云的逻辑隔离部分安全地连接您的 AWS 资源,例如 EC2 实例。了解 Amazon VPC 的关键组件对于有效地设置和管理您的云基础设施非常重要。

Amazon VPC 的关键组件包括子网、路由表、Internet 网关和 NAT 网关。在本章中,让我们详细了解这些重要组件 −

什么是子网?

子网基本上是 VPC 内的细分,允许您组织和管理您的资源。换句话说,子网是 VPC 中的一系列 IP 地址。

您在子网中启动 AWS 资源。每个子网必须只位于一个可用区 (AZ) 中,并且不能跨越到其他可用区。将资源保存在不同的可用区中可以保护您的应用程序免受单个可用区故障的影响。

子网类型

根据您为子网配置路由的方式,子网可分为以下四类 −

  • 公共子网 − 这些子网通过互联网网关直接连接到互联网。公共子网中的 Web 服务等资源可以访问公共互联网。
  • 私有子网 − 与公共子网相反,私有子网不直接连接到互联网。要访问互联网,这些子网中的资源需要 NAT 设备。
  • 仅 VPN 子网 −顾名思义,仅 VPN 子网通过虚拟专用网关路由到站点到站点 VPN 连接。它们没有到互联网网关的路由。
  • 隔离子网 − 顾名思义,隔离子网没有到其 VPC 之外任何目的地的路由。隔离子网中的资源只能由同一 VPC 中的其他资源访问。

请参阅下图以更好地了解这些关键组件在 Amazon VPC 中的工作和位置。

子网类型

路由表

VPC 的另一个关键组件是路由表。路由表的主要目的是确定 VPC 内流量的路由。路由表包含一组规则或路由,用于指定网络流量的路径。

当子网中的实例(例如 Amazon EC2)接收流量时,路由表将根据目标 IP 地址决定该流量的去向。

VPC 可能具有以下路由表 −

  • 主路由表 − 主路由表是每个 VPC 附带的默认路由表,默认情况下,VPC 中的所有子网都与其关联。
  • 自定义路由表 − 顾名思义,自定义路由表是用户为其 VPC 创建的表。

Internet 网关

Internet 网关允许 VPC 中的资源与 Internet 进行通信。顾名思义,它充当网关,将流量从公共子网路由到互联网,再从互联网路由到公共子网中的实例。

VPC 中的 Internet 网关有两个主要问题

  • 启用 Internet 访问 − Internet 网关允许通过 Internet 访问公共子网中的资源。
  • 安全性 − 可以通过配置安全组和网络访问控制列表 (ACL) 来保护通过 Internet 网关连接的资源。

NAT 网关

NAT 网关是一种网络地址转换 (NAT) 服务,提供对私有子网内资源的访问。

NAT 允许私有子网中的实例(如 Amazon EC2 实例)将出站流量发送到互联网,以下载软件更新或连接到外部 API。此时,它们会阻止入站互联网流量启动与这些资源的连接。

创建您的第一个 VPC

在本章中,让我们了解使用 AWS 管理控制台创建您自己的自定义 Amazon Virtual Private Cloud (VPC) 时可以遵循的步骤。

创建和配置您自己的自定义 VPC

自定义 VPC 允许用户完全控制其网络环境,包括子网、路由表和网关。

步骤 1:登录 AWS 管理控制台

首先,单击链接 https://aws.amazon.com/console/ 转到 AWS 控制台。接下来,使用您的凭证登录到您的 AWS 账户。

在 AWS 控制台的首页上,在顶部的搜索栏中输入"VPC",然后从下拉列表中选择"VPC"服务。

第 2 步:创建自定义 VPC

在 VPC 仪表板上,单击"创建 VPC"按钮开始创建您自己的 VPC。

在"创建 VPC"向导中,选择"仅 VPC"选项。这样您就可以手动配置 VPC 的 CIDR 块和其他设置。

创建自定义 VPC

步骤 3:配置您的 VPC

首先,您需要为 VPC 指定一个描述性名称(例如"MyCustomVPC")。接下来,为您的 VPC 选择 IPv4 CIDR 块。例如,您可以使用 10.0.0.0/16 为您的 VPC 创建大量 IP 地址。

它是可选的,但如果您想使用 IPv6,您可以启用它,Amazon 将自动分配一个 IPv6 CIDR 块

现在您可以选择 "默认""专用" 租户。默认租赁允许跨实例共享租赁。专用租赁将实例分配给为您的帐户预留的硬件。

配置完所有这些设置后,您可以点击页面底部的"创建 VPC"按钮。

步骤 4:配置子网

子网允许您将 VPC 划分为较小的网络。转到 VPC 仪表板的"子网"部分,然后单击"创建子网"

配置子网

接下来,您需要为子网选择一个名称,并为其选择一个可用区(例如,us west 1a)。每个子网都必须位于一个可用区中。

然后,为子网定义一个 CIDR 块。尝试从主 VPC CIDR 块中为子网选择一个较小的范围(例如 10.0.1.0/24)。

如果您需要多个子网,可以重复上述步骤。

步骤 5:配置 Internet 网关

首先,我们将创建一个 Internet 网关。在 VPC 仪表板上,转到"Internet 网关"部分,然后单击"创建 Internet 网关"。创建后,现在选择网关并选择"附加到 VPC",将 Internet 网关附加到您的 VPC。

步骤 6:设置路由表

设置子网和 Internet 网关后,您需要设置路由表。转到"路由表"部分,然后单击"创建路由表"。接下来,您需要将路由表分配给您在上一步中创建的子网。

最后,添加路由以通过 Internet 网关引导流量。例如,添加 0.0.0.0/0 的路由并将其指向您的 Internet 网关。

步骤 7:配置安全组

现在,您需要创建安全组。为此,首先转到"安全组"部分,然后创建一个组,定义允许哪些类型的流量进出您的 VPC 中的资源。

创建安全组后,您需要指定规则来控制访问,例如允许特定端口上的 HTTP 和 HTTPS 流量。

步骤 8:在您的 VPC 中启动资源

现在您的 VPC 已设置,您可以开始在 VPC 中启动 AWS 资源,例如 EC2 实例。

首先,通过单击 EC2 部分并选择"启动实例"来启动 EC2 实例。接下来,选择您在 VPC 中创建的子网之一。

步骤 9:测试连接

启动 EC2 实例后,是时候测试连接以确保一切正常。如果您的 Internet 网关和路由表设置正确,您的实例应该可以访问互联网。

公共子网与私有子网

子网是 VPC 内的细分,允许您组织和管理资源。简而言之,子网允许您将 VPC 划分为较小的网络。在创建自定义 VPC 时,配置子网是重要步骤之一。

从更广泛的意义上讲,我们可以将子网分为两类,即私有子网公共子网。要使用 Amazon VPC,您必须清楚了解这些子网。

公共子网和私有子网之间的差异

下表重点介绍了公共子网和私有子网之间的差异 −

功能 公共子网 私有子网
Internet 访问 使用 Internet 网关直接连接到 Internet。 无法通过 Internet 直接访问私有子网的资源。仅允许私有连接(例如 VPN、NAT 网关)。
网络访问 可以从 Internet 访问公共子网中的实例(例如 Amazon EC2)。 无法直接从 Internet 访问私有子网中的实例。
安全性 公共子网中的实例更容易受到外部流量的影响。这就是为什么它需要一些严格的安全措施,如防火墙和安全组。 它比公共子网更安全,因为它不直接暴露在 Internet 上。流量通过 VPN、NAT 网关等私有连接进行控制。
使用 Internet 网关 公共子网中的实例需要 Internet 网关才能与 Internet 通信。 它不使用 Internet 网关。它使用 NAT 网关或 VPN 进行出站 Internet 访问。
出站流量 它为传出流量提供直接 Internet 访问。例如,用于软件更新或与 API 通信。 私有子网中的出站流量通过 NAT 网关或 VPN 路由以访问 Internet。
入站流量 公共子网可以接收来自 Internet 的入站流量。 私有子网不允许任何来自 Internet 的入站流量。它只能通过私有连接访问。

公共子网的使用案例

公共子网非常适合 −

  • 托管 Web 服务器
  • 面向公众的应用程序
  • 任何其他需要直接 Internet 访问的资源

私有子网的使用案例

私有子网非常适合 −

  • 托管数据库
  • 后端服务器
  • 不需要直接 Internet 访问的敏感数据或应用程序

Amazon VPC - 安全组

在 Amazon Virtual Private Cloud (VPC) 中,安全性是保护您的资源免受未经授权的攻击的最重要因素访问。

AWS 为您的 VPC 网络提供以下两个主要安全层 −

  • 安全组 (SG)
  • 网络访问控制列表 (NACL)

这两个组件协同工作以控制进出 VPC 的流量。它们可确保您的云基础设施具有严格的安全配置。您还可以根据需要自定义安全设置。

在本章中,我们将重点介绍安全组,在下一章中,我们将讨论如何配置网络访问控制列表。

什么是安全组?

安全组充当 VPC 中实例的虚拟防火墙。它控制入站和出站流量。

配置安全组

在本节中,我们将提供为您的 VPC 配置安全组的分步指南 −

步骤 1:访问 Amazon VPC 控制台

首先,单击链接 https://aws.amazon.com/console/ 转到 AWS 控制台。接下来,使用您的凭证登录到您的 AWS 账户并转到 VPC 仪表板。

然后,在安全下,单击安全组

访问 Amazon VPC 控制台

步骤 2:创建新安全组

要创建新安全组,请单击创建安全组按钮。接下来,输入安全组的名称描述

现在,您需要选择要应用此安全组的VPC

创建新安全组

步骤 3:配置入站规则

入站规则指定允许进入实例的流量类型。要添加入站规则,请按照以下步骤 −

首先,在入站规则下,单击添加规则。从下拉菜单中选择流量类型(例如 HTTP、SSH、MySQL)。

接下来,您需要指定流量的源 IP 范围或地址。您还可以根据需要为不同类型的流量添加多个入站规则。

步骤 4:配置出站规则

出站规则控制离开实例的流量。默认情况下,安全组允许所有出站流量。但是,如果您想限制传出连接,也可以指定出站规则。请按照以下步骤操作 −

首先,在出站规则下,单击添加规则。接下来,选择出站连接的流量类型目标

配置出站规则

步骤 5:检查并创建安全组

首先,检查您的入站和出站规则,以确保它们满足您的安全要求。要保存设置,请单击创建安全组

步骤 6:将安全组分配给 EC2 实例

创建安全组后,必须将其附加到 EC2 实例 −

首先,转到 EC2 仪表板。选择要分配安全组的实例。在操作下,单击网络 > 更改安全组

最后,选择您刚刚创建的安全组并单击分配安全组

网络访问控制列表

网络访问控制列表 (NACL)在子网级别提供另一层安全性。与安全组不同,NACL 是无状态的,这意味着每个请求和响应都必须由单独的规则明确允许。

如何配置网络访问控制列表?

下面是为您的 VPC 配置 NACL 的分步指南 −

步骤 1:访问 Amazon VPC 控制台

首先,单击链接 https://aws.amazon.com/console/ 转到 AWS 控制台。使用您的凭证登录 AWS 账户并转到 VPC 仪表板。在安全下,单击网络 ACL。

步骤 2:创建新 NACL

单击创建网络 ACL按钮。首先,您需要为您的 NACL 提供一个名称。现在,选择将应用 NACL 的VPC。最后,单击创建

步骤 3:将 NACL 与子网关联

创建 NACL 后,您需要将其与一个或多个子网关联。

首先,选择您刚刚创建的 NACL。接下来,单击"子网关联"选项卡,然后单击"编辑子网关联"。最后,选择要应用 NACL 的子网,然后单击保存

步骤 4:配置入站规则

入站规则控制允许进入子网的流量。您需要为要允许或拒绝的每种流量类型定义规则。

首先,在"入站规则"下,单击"编辑入站规则"。接下来,点击添加规则,并为每个规则定义以下内容:

  • 规则编号 − 这是规则的数字标识符。
  • 类型 − 您需要选择流量类型(例如,HTTP、HTTPS、SSH)。
  • 协议 − 选择协议(例如,TCP、UDP、ICMP)。您也可以选择所有流量
  • 端口范围 − 它用于定义特定的端口范围(例如,HTTP 为 80,HTTPS 为 443,SSH 为 22)。
  • 来源 −此字段用于指定允许的源 IP 范围(例如,所有 IP 或特定 IP 范围的 0.0.0.0/0)。
  • 允许/拒绝 − 您可以选择允许或拒绝流量。

步骤 5:配置出站规则

出站规则控制允许离开子网的流量。

出站规则下,单击编辑出站规则。单击添加规则并定义规则参数 −

  • 规则编号 − 唯一标识符。
  • 类型 − 流量类型(例如,HTTP、HTTPS)。
  • 协议 −选择协议 (TCP、UDP、ICMP)。
  • 端口范围 − 定义端口范围。
  • 目的地 − 指定允许的目标 IP 范围。
  • 允许/拒绝 − 选择允许或拒绝流量。

第 6 步:保存并查看规则

配置入站和出站规则后,单击保存按钮应用更改。

Amazon VPC - 流日志

流日志是一种功能,可让您捕获和监控 VPC 内的网络流量。它使您能够监控传入和传出流量,从而帮助您了解网络中的信息流并检测任何可疑活动。

VPC 流日志主要记录以下详细信息 −

  • 源和目标 IP 地址
  • 端口
  • 协议
  • 流量方向(入站或出站)
  • 根据安全组和网络访问控制列表 (NACL) 规则允许/拒绝决策

启用 VPC 流日志以监控网络流量

按照以下步骤启用 VPC 流日志以监控 VPC 中的网络流量 −

步骤 1:访问 VPC 管理控制台

首先,您需要登录 AWS 管理控制台。接下来,在搜索栏中输入 VPC,然后从下拉列表中选择 VPC 仪表板

步骤 2:创建 VPC 流日志

从左侧导航窗格中选择 您的 VPC。您需要选择要为其启用流日志的 VPC。

单击 操作 按钮,然后从下拉菜单中选择 创建流日志

步骤 3:配置流日志设置

创建流日志 中,我们需要配置几个设置来控制流日志将捕获哪些数据。

让我们看看要配置什么以及如何配置 −

  • 过滤器 −它提供了各种选项来选择您想要记录的流量类型。
    • 全部 − 捕获所有流量。
    • 拒绝 − 仅捕获被拒绝的流量。
    • 接受 − 仅捕获接受的流量。
  • 目的地 − 它提供了将流日志数据发送到何处的选项。
    • Amazon CloudWatch Logs − 适用于实时监控和分析。
    • Amazon S3 − 适用于长期存储和大规模日志分析。
  • IAM 角色 −选择或创建允许 VPC 流日志服务将日志发布到 CloudWatch 或 S3 的 IAM 角色。
  • 日志格式(可选) − 它是可选的,但您可以根据需要自定义日志格式,以捕获特定字段,例如实例 ID、协议、流量方向等。
  • 标签(可选) − 它也是可选的。您可以向流日志添加标签,以便于识别。

配置完所有内容后,单击创建流日志

步骤 4:查看 VPC 流日志

对于 CloudWatch,请按照以下步骤操作 −

  • 如果您将日志发送到 CloudWatch Logs,请转到 CloudWatch 仪表板。
  • 选择日志,然后选择存储 VPC 流日志的日志组。
  • 在这里,您可以查看、筛选和分析日志数据。

对于 Amazon S3,请按照以下步骤操作 −

  • 如果您选择 Amazon S3 作为目标,请导航到您指定的 S3 存储桶。
  • 在该存储桶内,您将看到可以下载和离线分析的日志文件。

Amazon VPC - 端点

Amazon VPC 端点允许用户私下将其 VPC 连接到受支持的 AWS 服务以及由 AES PrivateLink 提供支持的 VPC 端点服务,而无需 Internet 网关、NAT 设备、VPN 连接或 AWS Direct Connect。

VPC 端点提供了一种更安全、更高效的方式来与 AWS 服务交互,因为您的 VPC 和服务之间的所有流量都保留在 AWS 网络内。

VPC 端点的类型

有两种类型的 VPC 端点 −

1.接口端点

这些 VPC 端点在您的子网中创建一个弹性网络接口,通过 AWS PrivateLink 连接到服务。支持的服务示例包括 Amazon S3、DynamoDB 和许多其他服务。

2. 网关端点

这些 VPC 端点适用于特定的 AWS 服务,例如 Amazon S3 和 DynamoDB。它们更像是将流量从您的 VPC 引导到指定 AWS 服务的路由表条目。

如何设置和使用 VPC 端点?

在您的 VPC 中设置和使用 VPC 端点的过程非常简单。请按照下面给出的步骤 −

步骤 1:打开 VPC 管理控制台

首先,您需要登录到 AWS 管理控制台。在搜索栏中,输入 VPC,然后选择 VPC 仪表板

第 2 步:选择 VPC 端点

现在,检查左侧导航窗格。单击 虚拟私有云 下的 端点。要创建 VPC 端点,请单击 创建端点 按钮。

第 3 步:选择 AWS 服务

现在,在 服务名称 部分中,您需要选择要连接的 AWS 服务。例如,Amazon S3DynamoDB

  • 对于 Amazon S3 和 DynamoDB,您需要创建 网关端点
  • 对于其他服务,例如 EC2 或 SQS,您将使用 接口端点

步骤 4:选择 VPC

现在,转到 VPC 部分并选择要在其中创建端点的 VPC。

首先,选择要在其中创建端点接口的 子网。它仅适用于接口端点。

对于网关端点,您需要选择路由表而不是子网,这会将端点作为路由添加到您的路由表中。

步骤 5:创建端点

设置配置后,单击创建端点按钮。Amazon AWS 将创建 VPC 端点,您将在端点列表中看到它。

步骤 6:修改路由表(仅适用于网关端点)

如果您要创建网关端点,则此步骤是必需的。

首先,转到 VPC 仪表板中的路由表。找到与需要访问服务的子网关联的路由表。最后,为所选 AWS 服务添加一条指向 VPC 网关端点 的路由。

Amazon VPC - 对等连接

什么是 VPC 对等连接?

Amazon VPC 对等连接 是一种网络连接,可让您在 AWS 网络中的两个虚拟私有云 (VPC) 之间建立通信。

VPC 对等连接使用私有 IPv4 或 IPv6 地址。此连接允许不同 VPC 中的实例相互通信,就像它们位于同一网络中一样。AWS 允许我们在您自己的 VPC 之间或不同的 AWS 账户之间创建 VPC 对等连接。

下图显示了两个虚拟私有云之间的 VPC 对等连接 −

什么是 VPC 对等连接?

VPC 对等连接非常安全,因为 VPC 之间的流量保持在 AWS 网络内。它们不需要穿越公共互联网。

设置 VPC 对等连接以进行 VPC 间通信

按照以下步骤设置 VPC 对等连接 −

步骤 1:创建 VPC 对等连接

首先,登录 AWS 管理控制台,然后导航到 VPC 仪表板。在左侧,选择 对等连接 部分下的 对等连接

单击 创建对等连接 按钮。在表单中,选择 请求者 VPC。您还需要指定 接受者 VPC。您可以选择 AWS 账户内的 VPC,也可以输入另一个 AWS 账户的 VPC ID。

完成后,单击 创建对等连接 按钮。

步骤 2:接受 VPC 对等请求

创建对等连接后,转到 VPC 仪表板中的 对等连接 部分。现在,找到新创建的对等连接。

接下来,选择对等连接并单击操作 > 接受请求。请求被接受后,状态将更改为活动

如果接受方 VPC 在另一个账户中,则接受方 VPC 的所有者需要登录到他们的账户以接受请求。

步骤 3:修改路由表

建立对等连接后,我们需要更新两个 VPC 中的路由表以允许流量在它们之间流动。按照以下步骤修改路由表:

要修改路由表,首先转到路由表部分。从那里,选择与需要与其他 VPC 通信的子网关联的路由表。

单击编辑路由,然后单击添加路由。在目标字段中,输入对等 VPC 的CIDR 块。在目标字段中,选择对等连接并选择相关的对等连接。最后,要应用更改,请单击保存路由

在另一个 VPC 中重复上述步骤,更新其路由表以允许流量流回原始 VPC。

步骤 4:更新安全组

修改路由表后,我们需要更新两个 VPC 中的安全组。按照以下步骤修改安全组 −

在 VPC 仪表板中,转到安全组

选择与将与对等 VPC 通信的资源关联的安全组。单击编辑入站规则并添加规则以允许来自对等 VPC 的 CIDR 块的流量。同样,编辑出站规则以允许流量流向对等 VPC。

步骤 5:测试 VPC 对等连接

要测试 VPC 对等连接,请尝试 ping 对等 VPC 中的实例或建立连接。