我一直在关注本指南设置我的 AWS 架构,但我更喜欢使用 VPN,而不是 ssh 堡垒主机/跳转盒。有很多关于将 VPC 直接连接到客户路由器的指南,例如将办公室连接到您的 AWS 基础设施。
但是,我想让几个个人用户无论身在何处都可以直接从他们的笔记本电脑连接到 VPN。就像个人员工可以通过 VPN 连接到办公室网络一样,我想要一个解决方案,让几个用户可以直接通过 VPN 连接到 AWS 基础设施。
这是 AWS 内置的吗,还是我必须使用 OpenVPN/Openswan 配置一个单独的 EC2 实例来处理它?
答案1
我建议使用 OpenVPN 解决方案:https://docs.openvpn.net/how-to-tutorialsguides/virtual-platforms/amazon-ec2-appliance-ami-quick-start-guide/
或者,如果您不想为此启动实例,您可以在自己的防火墙上终止 VPN,并从那里提供到 AWS 环境的路由。然后,您可以在现场构建自己的 VPN 解决方案,也可以使用边缘设备附带的任何解决方案。
答案2
OpenVPN 和 OpenSwan(或 Libreswan)都可以使用。我不确定我更喜欢哪一个。OpenVPN 设置起来更容易。我从来没有让 2FA 和 PAM 与 Openswan(或任何变体)一起工作
关于 OpenVPN 的一个警告:如果您使用 2FA 实现 openvpn,您可能希望设置会话密钥重新协商reneg-sec=0
您的客户端也必须支持此功能(tunnelblick 似乎不支持)
我还建议在 VPN 内部使用透明的 ssh 代理堡垒。这样您就可以轻松地拥有限制性安全组。这是一个非常坚实的安全基础,如果需要,以后可以在每个阶段使用 2fa 进行扩展。
关于这两个 VPN 选项的一些简要说明:
OpenVPN ipsec
Viscosity ($9) 客户端比 Tunnelblick 更稳定,单个传入端口,单个配置文件,注意:需要一些 iptables 工作
我发现的最简单的 OpenVPN 说明是这里 您还可以使用社区 AMI预建的 openvpn 服务器。(虽然我还没有尝试过)
OpenSwan ipsec + l2tpd
- Mac OS 有内置客户端
- 需要 3 个端口
- 2 个主要包和 3 个配置文件
- 还需要一些 iptables 工作
- 默认情况下,PAM 支持处于禁用状态。很难实施最佳安全实践(10.11 之前的 mac os 仅支持 IKE1,如果没有 pam,安全密码存储和 2fa 就很困难。)