让我们在 AWS 和家庭 NW (RTX1100) 之间连接 VPN
目录
大家好。
我是系统解决方案部运营管理部的平田。
这次我将介绍如何通过VPN连接AWS和我家的NW(RTX1100)。
背景
前几天,我负责某个项目与AWS的本地VPN连接,我很好奇,所以尝试在我家的NW和AWS之间建立VPN连接。
进展顺利,所以我决定把它写成一篇博客文章。
AWS端
*假设已经在 VPC 上创建了 EC2 实例。
创建虚拟专用网关
按照以下步骤进入虚拟私有网关创建界面。
AWS 管理控制台 -> VPC -> 虚拟专用网关 -> 创建虚拟专用网关
按照下面的屏幕所示进行配置。
可选择设置名称标签。对于 ASN,选择“Amazon 默认 ASN”。
创建虚拟专用网关后,将创建的虚拟专用网关附加到现有 VPC,如下图所示。
创建客户网关
按照以下步骤进入客户网关创建界面。
AWS 管理控制台 -> VPC -> 客户网关 -> 创建客户网关
按照下面的屏幕所示进行配置。
根据需要设置名称。对于路由,选择“动态”,因为我们这次将使用 BGP 作为路由协议。将 BGP ASN 保留为默认值 65000。对于 IP 地址,输入您的家庭 NW 的公共 IP 地址。
设置 VPN 连接
按照以下步骤进入 VPN 连接创建屏幕。
AWS 管理控制台 -> VPC -> 站点到站点 VPN 连接 -> 创建 VPN 连接
按照下面的屏幕所示进行配置。
根据需要设置名称。选择您之前创建的虚拟专用网关。对于客户网关 ID,选择您之前创建的客户网关。选择动态
作为路由选项有一个叫做tunnel option的项目,不过这次我留空了,没有问题。
下载要在您的家庭 NW 路由器上设置的配置
按照以下步骤下载要在家庭 NW 路由器上设置的配置。
AWS 管理控制台 -> VPC -> 站点到站点 VPN 连接 -> 下载配置
这次我们将使用 YAMAHA 的 RTX1100,因此请下载如下屏幕所示的配置。
配置路由表
按照以下步骤转到路由表屏幕。
AWS 管理控制台 -> VPC -> 路由表
单击“路由传播”选项卡,然后单击“编辑路由传播”按钮,如下图所示。
将显示您之前创建的虚拟专用网关,因此单击复选框以配置设置。
家庭 NW 路由器设置
修改下载的配置
设置您之前在家庭 NW 路由器上下载的配置。
但是,配置中有一些设置需要修改。有两个更正。
修正点1
ip隧道远端地址(归属NW公网IP地址)
将其(家庭 NW 公共 IP 地址)修改为路由器 LAN 上设置的私有 IP 地址。
就我而言,我会将其修复为 192.168.253.1。
修正点2
bgp 导入过滤器 1 等于 0.0.0.0/0
将此“0.0.0.0/0”修改为为 LAN 设置的网络地址。
就我而言,我会将其修复为 192.168.253.0/24。
设置配置
在路由器上设置上述修改后的配置。
这次我将编写最终的路由器配置。
show config # RTX1100 Rev.8.03.94 (Thu Dec 5 19:06:16 2013) # Memory 32Mbytes, 3LAN, 1BRI # 报告日期: Jan 1 10:03:57 1980 timezone +09:00 控制台字符 ascii 控制台提示符 [ aws_test] 登录计时器 1000 ip 路由默认网关 pp 1 ip lan1 地址 192.168.253.1/24 ip lan1 proxyarp 在 pp 选择 1 pp 名称 FLETS pp 在 pppoe 上始终开启 使用 lan2 pppoe 在 pppoe 上自动连接 在 pp 上自动断开连接 身份验证接受 pap chap pp auth myname(ISP 连接 ID)(ISP 连接密码) ppp lcp mru on 1454 ppp ipcp ipaddress on ip pp mtu 1454 ip pp 安全过滤器输入 1 ip pp 安全过滤器输出 2 ip pp nat 描述符 1000 pp 启用 1 隧道选择 1 ipsec隧道 201 ipsec sa 策略 201 1 esp aes-cbc sha-hmac ipsec ike 持续时间 ipsec-sa 1 3600 ipsec ike 加密 1 aes-cbc ipsec ike 组 1 modp1024 ipsec ike 哈希 1 sha ipsec ike keepalive 在 dpd 10 上使用 1 3 ipsec ike本地地址 1 192.168.253.1 ipsec ike pfs 1 on ipsec ike 预共享密钥 1 文本(VPN 私钥密码 1) ipsec ike 远程地址 1 52.193.39.138 ipsec 隧道外部 df 位清除 ip 隧道地址 169.254.24.102/ 30 ip 隧道远程地址 169.254.24.101 ip 隧道 tcp mss 限制 1379 隧道启用 1 隧道选择 2 ipsec 隧道 202 ipsec sa 策略 202 2 esp aes-cbc sha-hmac ipsec ike 持续时间 ipsec-sa 2 3600 ipsec ike 加密 2 aes-cbc ipsec ike group 2 modp1024 ipsec ike hash 2 sha ipsec ike keepalive use 2 on dpd 10 3 ipsec ike 本地地址 2 192.168.253.1 ipsec ike pfs 2 on ipsec ike pre-shared-key 2 text(VPN 私钥密码 2) ipsec ike 远程地址 2 52.196.197.66 ipsec 隧道外部 df 位清除 ip 隧道地址 169.254.25.218/30 ip 隧道远程地址 169.254.25.217 ip 隧道 tcp mss 限制 1379 隧道启用 2 ip 过滤器 1 通过 * * * * * ip 过滤器 2 通过 * * * * * nat 描述符类型 1000 伪装 nat 描述符地址 外部 1000 ipcp nat 描述符地址 内部 1000 bgp 自治系统上的自动 bgp 使用 65000 bgp 邻居 1 64512 169.254.24.101 保留时间=30 本地地址=169.254.24.102 bgp 邻居2 64512 169.254.25.217 保留时间=30 本地地址=169.254.25.218 bgp 导入过滤器 1 等于 192.168.253.0/24 bgp 导入 64512 静态过滤器 1 tftp 主机上的 ipsec 自动刷新 任何 dhcp 服务服务器 dhcp 范围 1 8. 253.100- 192.168.253.200/24 dns服务器8.8.8.8 8.8.4.4
对了,这次我设置为测试时初始化的路由器,所有过滤器都是允许的。实际使用时请务必小心。
操作确认
检查AWS隧道状态
按照以下步骤进入 VPN 连接屏幕。
AWS 管理控制台 -> VPC -> 站点之间的 VPN 连接
单击隧道详细信息选项卡。
确保状态为 up。
检查路由器(RTX1100)的隧道状态
使用 RTX1100 命令检查隧道状态。
[aws_test]# show statustunnel 1 TUNNEL[1]: 描述:接口类型:IPsec 当前状态为在线,从 1980 年 1 月 1 日 09:52:26 接收到:(IPv4) 894。数据包 [65571 八位字节] (IPv6) 0 数据包 [0 八位字节] 已传输:(IPv4) 1289 数据包 [85905 八位字节] (IPv6) 0 数据包 [0 八位字节] [aws_test]# 显示状态隧道 2 TUNNEL[2]:说明:接口类型:IPsec 当前状态为在线,从 1 小时 26 分 27 秒连接接收:(IPv4) 1004 个数据包 [62349 个八位组] (IPv6) 0 个数据包 [0 个八位组] 已发送: (IPv4) 847 个数据包 [54026 个八位字节] (IPv6) 0 个数据包 [0 个八位字节]
确认与 EC2 实例的通信
AWS 和您的家庭 NW 之间的 VPN 连接现已完成,让我们检查一下通信情况。
检查 ping
检查从您的家庭 NW 终端到 EC2 实例 (172.31.37.121) 的 ping 通信。
~ $ ping 172.31.37.121 PING 172.31.37.121 (172.31.37.121): 56 个数据字节 64 个字节,来自 172.31.37.121: icmp_seq=0 ttl=253 time=20.483 ms 64 个字节,来自 172.31.37.121 icmp : _seq=1 ttl=253 次=40.084毫秒来自172.31.37.121的64个字节:icmp_seq=2 ttl=253时间=26.764毫秒
ssh确认
检查从您的家庭 NW 终端到 EC2 实例 (172.31.37.121) 的 ping 通信。
~ $ ssh -i .ssh/aws.pem [电子邮件受保护]上次登录:2019 年 9 月 8 日星期日 11:42:56,来自 ip-192-168-253-100.ap-northeast-1.compute.internal __| |_ ) _| ( / Amazon Linux 2 AMI ___|\___|___| https://aws.amazon.com/amazon-linux-2/ 安全所需的 4 个软件包,共 14 个可用 运行“sudo yum update”以应用所有更新。[ec2-user@ip-172-31-37-121 ~]$
概括
这次,我能够通过 VPN 连接 AWS 和我家的 NW。
RTX1100 可以花几千日元购买使用,所以我认为它非常适合这样的测试。
请注意,使用 AWS 连接到 VPN 需要付费。