AWS VPN 概述和使用方法
VPN定义
VPN 是虚拟专用网络的缩写。 正如“虚拟专用网络”一词所暗示的那样,它指的是一种将不同网络私下连接并进行安全通信的技术。
近年来,许多公司将其系统部署在本地和云(IaaS、PaaS、SaaS)等多个不同平台上。 然而,由于不同的平台自然属于不同的网络,因此通常默认通过互联网进行通信。
VPN可以说是一种解决方案,可以让您在使用属于不同网络的多种服务的同时,确保网络之间通信的安全。
VPN分类
虽然简称为VPN,但实际上有好几种分类。 每个分类都有不同的实现技术和用途。 在本文中,我们将解释VPN的主要分类。
粗略分类如下以树形形式显示。 左侧橙色框表示分类角度。
这次,我们将按照“底层网络”和“要实现的协议”进行分类。 在更高层次上,VPN 根据“底层网络”可以分为 Internet VPN 和 IP-VPN。
互联网VPN
它是基于Internet实现的VPN。 基于全球IP之间的通信,通过互联网建立不同网络之间的安全通信。
就“实现的协议”而言,Internet VPN 有两类。 有两种类型:“SSL-VPN”和“IPsec-VPN”。
SSL VPN
SSL-VPN是指使用TLS实现的VPN。 它主要用于客户端和网络之间的安全远程连接。
IPsecVPN
IPsec-VPN是指使用IPsec协议组实现的VPN。 IPsec 主要用于网络位置之间的安全连接。 请注意,IPsec-VPN 有时不仅用作 Internet VPN,还用作 IP-VPN。
IP VPN
*本文不会深入探讨IP-VPN和AWS VPN之间的关系,但由于IP-VPN和Internet VPN经常被并列谈论,所以我将简要介绍它们。
这是基于电信运营商封闭网络实现的VPN。 因此,网络通信质量和安全性比互联网VPN更可靠。 另一方面,使用成本较高。
就“要实现的协议”而言,通常使用使用MPLS协议的“MPLS-VPN”。 请注意,MPLS 不会加密通信。 为了加强安全性,有时会将加密与IPsec结合起来。
*从这个意义上说,IP-VPN 和 IPsec-VPN 通过上面树中的虚线连接。
什么是 AWS VPN?
AWS 提供的 VPN 服务的统称是“AWS VPN”。 “AWS VPN”有两种类型:AWS 站点到站点 VPN 和 AWS 客户端 VPN。 我们将解释每个的概述和定位。
AWS 站点到站点 VPN
AWS Site-to-Site VPN 是一项 AWS 服务,可用于 VPC 和非 VPC 网络之间的站点到站点 VPN 连接。
仅支持 IPsec 作为实施 VPN 的方法。 因此,AWS Site-to-Site VPN可以说是前面提到的分类中实现“IPsec-VPN”的方式之一。
AWS 客户端 VPN
AWS Client VPN 是一项 AWS 服务,可用于在特定客户端和 VPC 之间建立远程访问 VPN。
VPN 是使用基于 OpenVPN 的 VPN 客户端实现的。 由于OpenVPN使用SSL/TLS,因此AWS Client VPN可以说是前面提到的分类中实现“SSL-VPN”的方式之一。
AWS 站点到站点 VPN 的功能
在本章中,我们将解释 AWS Site-to-Site VPN 的优势和使用模式,以便正确使用它。
使用 AWS 站点到站点 VPN 的优势
1.安全通讯
AWS 站点到站点 VPN 使用 IPsec 建立 VPN。 IPsec 对通信进行加密并在通信设备之间执行相互身份验证。 因此,即使基于互联网的连接也可以进行高度安全的通信。
2、成本低廉
AWS 站点到站点 VPN 以比实施封闭网络更低的成本在本地和云之间提供私有连接。 有两个原因。 一点是,由于可以基于互联网通信来实现,因此网络资费比封闭网络低。 其次,在AWS使用费用方面,AWS Site-to-Site VPN的固定费用比用于封闭网络连接的AWS Direct Connect便宜。
3. 短时间内实施
组成 AWS Site-to-Site VPN 的所有 AWS 资源都可以从 AWS 管理控制台轻松创建和删除。 部署 AWS 资源没有前置时间。 因此,只要您有支持IPsec的网络设备,就可以快速建立VPN。
AWS 站点到站点 VPN 使用模式
本部分介绍 AWS Site-to-Site VPN 的一些使用模式。
下面介绍三种使用模式。
- 便宜的私人连接
- AWS Direct Connect 备份
- 增强了 AWS Direct Connect 通信的安全性
便宜的私人连接
这是将 AWS Site-to-Site VPN 实施为 Internet VPN 的模式。
此模式在您的 VPC 和非 VPC 网络之间提供廉价的专用连接。 另一方面,由于它是基于互联网的,因此不能期望稳定的通信。 因此,当不需要高质量通信或只是想降低成本时可以使用它。
AWS Direct Connect 备份
这是一种使用 AWS Site-to-Site VPN 作为主线 AWS Direct Connect 的备份线的模式。
首先,我将简要介绍名为 AWS Direct Connect 的 AWS 服务。 AWS Direct Connect 是一项专用网络服务,用于与您的 VPC 建立高质量的私有连接。 与 AWS Site-to-Site VPN 类似,它是在本地和 VPC 之间实现私有连接的选项。 如果您希望实现比 AWS Site-to-Site VPN 更稳定、更快速的通信,请选择此选项。 但是,它比使用 AWS Site-to-Site VPN 更昂贵。
此模式允许您拥有高度可用的专用网络。 正常情况下,以通信质量较高的AWS Direct Connect为主线进行通信,当主线发生故障时,通信路由切换为AWS Site-to-Site VPN,防止通信失败。 因此,它作为实现系统之间的通信等的有效手段是非常重要的。 然而,重要的是要意识到,如果主线发生故障,通信性能将会恶化。
增强了 AWS Direct Connect 通信的安全性
这是一种增强 AWS Direct Connect 通信安全性的使用模式。
AWS Direct Connect 通信通常未加密,但使用 AWS Site-to-Site VPN(严格来说,IPsec)进行加密。 下图中紫色突出显示的区域是AWS Site-to-Site VPN的通信加密范围。
此模式允许您进一步提高 AWS Direct Connect 通信的安全性。 当系统安全性要求较高且必须进行通信加密时可以使用。
但这种配置还需要使用名为AWS Transit Gateway的AWS服务,这不可避免地使配置变得复杂并增加了使用费用,因此需要考虑连接安全性和成本之间的权衡。
实施 AWS 站点到站点 VPN
本章介绍 AWS Site-to-Site VPN 的实施。 首先,我们将引导您了解 AWS Site-to-Site VPN 的组件,然后介绍实施 AWS Site-to-Site VPN 的步骤。
AWS 站点到站点 VPN 组件
AWS 站点到站点 VPN 的组件包括:
- ①客户网关设备
- ②客户网关
- ③目标网关
- ④VPN连接
有四个。
①客户网关设备
客户网关设备是指在连接VPN的网络中充当VPN网关角色的网络设备本身。 请注意,使用此名称只是为了方便理解 Site-to-Site VPN 配置,它不是在 AWS 上创建的资源。
②客户网关
客户网关是在 AWS 上创建的资源之一。 创建此文件是为了将网络设备(即本地端的客户网关设备)的信息加载到AWS端。
③目标网关
目标网关是在 AWS 端用作 VPN 网关的终端节点的总称。 可以指定两个目标网关:虚拟私有网关和 AWS Transit Gateway。 请注意,这两个终端节点都不是 AWS Site-to-Site VPN 所独有的,也可以指定为 AWS Direct Connect 的连接目标。
*该图是使用虚拟专用网关作为目标网关时的配置图像。
1.虚拟私有网关
虚拟私有网关作为VPC与外部网络私有连接的网关。 每个 VPC 只能关联一个。
2.AWS传输网关
AWS Transit Gateway 是一项 AWS 服务,允许您以中心辐射型配置连接 VPC 和各种网络。 当需要互连大量网络时,与使用网状配置相比,可以简化网络配置。
④VPN连接
VPN 连接是用于在本地端 VPN 网关和 AWS 端目标网关之间建立 IPsec-VPN 的资源。 该资源也可以被认为是 AWS Site-to-Site VPN 的主体。
AWS 站点到站点 VPN 实施步骤
我们将指导您完成前面“AWS Site-to-Site VPN 使用模式”中介绍的“廉价专用连接”配置的步骤。 我们将使用 AWS Site-to-Site VPN 建立 VPN 连接,并从本地端的连接检查终端到 AWS 端的 EC2 进行成功的通信检查。
包括网段信息的整体配置图如下所示。
AWS 副业
首先,在AWS管理控制台上执行配置工作。 任何可以连接到互联网的设备都可以。 不过,由于稍后您将获得包含要在路由器上执行的命令的配置文件,因此如果从路由器管理终端执行会更顺利。
请注意,VPC、子网和 EC2 实例等资源已经创建,从现在开始,我们将仅指导您完成特定于 AWS Site to Site VPN 的设置。
1 创建客户网关
1.1 访问客户网关控制台。
网址:
https://ap-northeast-1.console.aws.amazon.com/vpc/home?region=ap-northeast-1#CustomerGateways :
单击创建客户网关。
1.2 填写红框内的项目,点击“创建客户网关”。
- 名称标签:任何字符串(此处指定“test-cgw”)
- BGP ASN:65000(默认)
- IP地址:本地侧网络WAN侧公网IP地址
- 设备:任何字符串(此处指定“yamaha-cgw”)
1.3 验证客户网关已创建。
2 创建虚拟专用网关
2.1 访问虚拟专用网关控制台。
网址:
https://ap-northeast-1.console.aws.amazon.com/vpc/home?region=ap-northeast-1#VpnGateways :
单击创建虚拟专用网关。
2.2 填写如下红框内的项目,点击“创建虚拟专用网关”。
- 名称标签:任何字符串(此处指定“test-vgw”)
- 自治系统编号 (ASN):Amazon 默认 ASN
2.3 验证虚拟私有网关已创建且状态为“已分离”。
2.4 选择test-vgw,点击右上角“操作”中的“附加到VPC”,将其附加到VPC。
2.5 选择用于 VPN 连接的 VPC,然后单击“附加到 VPC”。
2.6 确认test-vgw的状态为“attached”。
3 路由器设置
3.1 在 VPC 路由表中输入 test-vgw 的路由设置。
如下填写红框中的字段,然后单击“保存更改”。
- 目的地:192.168.200.0/24
*本次用作本地端的私有IP地址范围 - 目标:虚拟专用网关
4 创建 VPN 连接
4.1 访问VPN连接控制台。
网址:
https://ap-northeast-1.console.aws.amazon.com/vpc/home?region=ap-northeast-1#VpnConnections :
单击“创建 VPN 连接”。
4.2 输入如下红框中的信息,点击“创建VPN连接”。
- 名称标签:任何字符串(此处指定为“test-vpnconnection”)
- 目标网关类型:虚拟专用网关
- 虚拟私有网关:之前创建的虚拟私有网关ID
- 客户网关:现有
- 客户网关ID:之前创建的客户网关的ID
- 路由选项:动态(需要 BGP)
4.3 验证是否显示 test-vpnconnection 且状态为“Available”。
4.4 检查“隧道详细信息”选项卡并确认其当前已关闭。
请注意,AWS 站点到站点 VPN 设计为默认创建两个 IPsec 隧道以确保冗余。
5 下载配置文件
5.1 从创建的VPN连接下载Config文件。 此配置文件包含一组要在要建立 VPN 的本地网络设备上执行的命令。 该命令的内容包括到目前为止创建的客户网关、创建VPN连接时输入的信息以及用于建立IPsec-VPN的各个协议的信息。
现场工作
让我们继续讨论本地方面。 在此步骤中,我们将配置路由器设置并检查连接。
下图是本地侧的接线图。
此外,我们将使用YAMAHA的路由器RTX830作为本地路由器。
1 执行网络设备配置文件中的命令
1.1 使用Teraterm等终端模拟器从路由器管理终端访问路由器管理控制台。
1.2 将设置恢复到初始状态,避免不必要的设置。
> 管理员 # 冷启动
1.3 复制之前下载的配置文件的全部内容并按原样运行。
*如果AWS服务设置正确,则不需要进行文件处理,因此我们在此省略详细信息。
2 路由设置
2.1 执行路由配置命令建立VPN连接并通信成功。
*以下命令特定于 YAMAHA 路由器。 请阅读适用于您所使用的路由器型号的相应命令。
登录计时器清除 ip route default gateway xxx1 *默认网关IP地址 ip Route 10.0.0.0/16 网关隧道1隐藏 网关隧道2隐藏 ip lan1 地址 192.168.200.254/24 ip lan2 地址 xxxx/24 *WAN 侧公网 IP 地址
3 连接确认终端的IP分配设置
3.1 执行命令为连接确认终端分配IP地址。
DHCP服务服务器 dhcp 服务器符合 rfc2131 标准(保持静默除外) DHCP 范围 1 192.168.200.1-192.168.200.10/24 统计流量
4 检查连接状态
4.1 检查路由表设置
确保发往建立 VPN 的 VPC (CIDR:10.0.0.0/16) 的通信配置为路由到 TUNNEL[n]。 # 显示ip路由 目标网络 网关 接口类型 其他信息 默认 150.249.252.1 LAN2 静态 10.0.0.0/16 - 隧道[1]静态 10.0.0.0/16 - 隧道[2]静态 xxx0/24 xxxx LAN2 隐式 169.254.18.220/30 - 隧道[2]隐式 169.254.184.60/30 - 隧道[1]隐式
4.2 检查IPsec状态
确保 IPsec 已启用。 具体来说,连接列为“isakmp”或“tun[000n]esp”且远程 ID 为 Amazon 拥有的公共 IP(以 35 或 52 开头)的信息检查是否正在输出。
# 显示 ipsec sa 总计: isakmp:2 发送:2 接收:2 sa sgw isakmp 连接目录寿命[s] 远程 ID -------------------------------------------------- -------------------------- 1 1 - isakmp - 28788 35.75.105.20 2 2 - isakmp - 28788 52.199.233.227 3 1 1 tun[0001]esp 发送 3590 35.75.105.20 4 1 1 tun[0001]esp 接收 3590 35.75.105.20 5 2 2 tun[0002]esp 发送 3590 52.199.233.227 6 2 2 tun[0002]esp 接收 3590 52.199.233.227
4.3 检查BGP状态
「BGP 状态=已建立」となっていることを确认します。 # 显示 bgp 邻居状态 BGP邻居为169.254.184.61,远端AS 64512,本地AS 65000,外部链路 BGP 版本 4,远程路由器 ID 169.254.184.61 BGP 状态 = 已建立,持续时间 00:00:10 最后读取时间 00:00:09,保持时间为 30,保活间隔为 10 秒 收到 3 条消息,0 条通知,0 条在队列中 已发送 5 条消息,0 条通知,0 条在队列中 连接建立1; 下降了 0 上次重置从未 本地主机:169.254.184.62,本地端口:179 国外主机:169.254.184.61,国外端口:42333 BGP邻居为169.254.18.221,远端AS 64512,本地AS 65000,外部链路 BGP 版本 4,远程路由器 ID 169.254.18.221 BGP 状态 = 已建立,持续时间 00:00:05 最后读取 00:00:04,保持时间为 30,保活间隔为 10 秒 收到 3 条消息,0 条通知,0 条在队列中 已发送 5 条消息,0 条通知,0 条在队列中 连接建立1; 下降了 0 上次重置从未 本地主机:169.254.18.222,本地端口:179 国外主机:169.254.18.221,国外端口:40371
4.4 检查VPN连接状态
验证 test-vpnconnection 的状态是否为“up”。
5 通讯确认
5.1 从连接管理终端使用 ping 检查通信。
*以下操作均在Windows终端的命令提示符下进行。
C:\用户\xxxxx> C:\Users\xxxxx>ping 10.0.134.243 Ping 10.0.134.243 32 字节数据: 来自 10.0.134.243 的响应:字节=32 时间=5ms TTL=127 来自 10.0.134.243 的响应:字节=32 时间=6ms TTL=127 来自 10.0.134.243 的响应:字节=32 时间=8ms TTL=127 来自 10.0.134.243 的响应:字节=32 时间=6ms TTL=127 10.0.134.243 的 Ping 统计数据: 数据包数量:发送 = 4,接收 = 4,丢失 = 0(0% 丢失), 大约往返时间(毫秒): 最小值 = 5 毫秒,最大值 = 8 毫秒,平均值 = 6 毫秒
我们已成功确认与 EC2 实例的通信。
*如果上一步的确认结果没有问题但通信失败,可能是EC2端的安全组通信权限设置不够,或者是路由表设置不够。
实施 AWS Site-to-Site VPN 的示例步骤到此结束。
AWS 站点到站点 VPN 定价
最后,我们将解释 AWS Site-to-Site VPN 的定价。
AWS 站点到站点 VPN 计费元素
AWS Site-to-Site VPN 定价由每次连接的固定费用和基于处理的通信数据包数量的计量费用决定。 每种的价格如下。 请注意,价格基于东京地区的使用情况。
固定费用
每个 VPN 连接的费用为 0.048 美元/小时。
*“VPN 连接”是在 AWS Site-to-Site VPN 的组件中引入的。
使用率
如果您实施 AWS Site-to-Site VPN 作为您的 Internet VPN,您将根据 Internet 的出站通信量产生费用。 单价根据传输的数据量而降低。 详情请查看下表。
合计容量 | 单价 |
前 10 TB/月 | 0.114 美元/GB |
接下来 40 TB/月 | 0.089 美元/GB |
接下来 100 TB/月 | 0.086 美元/GB |
150 TB/月以上 | 0.084 美元/GB |
*严格来说,按需付费并不是AWS Site-to-Site VPN费用,而是EC2费用。
收费示例
根据以下假设计算
- 创建一个 VPN 连接
- 30日间利用
- 互联网出站数据传输量为 500GB
- 东京地区使用情况
- 按1美元=145日元计算
项目 | 单价 | 数量(时间、数据量) | 价格(美元) | 费用(日元) |
VPN连接费 | 0.048 | 720时间 | $35 | 5,075 |
数据传输费 | 0.114 | 500GB | $57 | 8,265 |
合计 | 13,340 |
参考:AWS VPN 定价
https://aws.amazon.com/jp/vpn/pricing/
参考:Amazon EC2 按需定价
https://aws.amazon.com/jp/ec2/pricing/on-demand/
最后
到目前为止,我们已经解释了 AWS Site-to-Site VPN 的概述、功能、实施示例和定价。
我们希望本文可以帮助您了解 AWS VPN 和 AWS Site-to-Site VPN 的基础知识,并帮助您考虑更好的云网络配置。
我们还可以帮助您设计和实施 AWS 网络,包括 AWS 站点到站点 VPN。 如果您请求创建结合本地网络和 AWS 的混合配置,请随时与我们联系。