连接到 AWS EC2 SSH 以获得公共位置最佳实践

连接到 AWS EC2 SSH 以获得公共位置最佳实践

我最近一直在学习如何在 Amazon 上设置和运行 Linux 服务器,并且一直在思考从公共场所通过 SSH 访问该服务器的最佳做法。公共场所指的是咖啡店。

我有安全组,我能想到的两个解决方案是将入站更改为所有地方,或者找到我的笔记本电脑的公共 IP,并将其设置为临时入站。

这些解决方案对我来说似乎很奇怪,我会改变安全组每一次。这是正常的吗?还是有其他方法?

另外,当在公共场所使用 SSH 时,我是否应该考虑设置虚拟专用网络,或者这样做会不会有点过度?

答案1

SSH 是加密的,因此无需使用 VPN 进行双重加密。即使有人在窥探流量,他们也无法访问。确保使用公钥进行身份验证,这是 AWS Amazon Linux 实例中的默认设置,但在其他发行版上可能需要更多工作。

如果您计划从各个位置通过 SSH 访问,最好的办法是默认关闭它,添加您的常用 IP,如果您需要从咖啡店访问,请登录 Web 界面(您应该使用 2FA)并允许从该 IP 访问。别忘了稍后将其关闭。让 SSH 向全世界开放可能不是一个很大的风险,但我自己不会这样做,因为我不会从随机位置通过 SSH 访问。如果您的服务器至关重要/敏感,我会小心谨慎,但对于其他事情,风险可能低到中等。当然,您需要备份数据,EBS 快照就足够了。

答案2

是的,最好使用 VPN 来通过 SSH 访问 EC2。即使您在使用公共地址后关闭了访问权限,但只要该地址处于打开状态,风险仍然存在,尤其是当有人在窥探咖啡店 wifi 上的流量时。

如果无法使用 VPN,您可以采取一些步骤来降低风险(无论哪种方式,您都应该这样做):

  1. 配置您的 sshd 以仅接受密钥。无需密码登录。如果您可以进行双因素身份验证,那就更好了。
  2. 不要在多个地方重复使用同一个 ssh 密钥。
  3. 限制您使用 ssh-agent 的密钥。(这是一个有趣的 openssh 错误
  4. 保持 openssh/openssl 修补。

相关内容