服务
关于
CloudProse博客
监控,运营和开发运营

删除您的SSH密钥并使用AWS SSM

存储或共享ssh密钥始终存在问题,这是一个很好的解决方案。
Trek10云图标
帕维尔·苏里克(Pawel Sulik) | 2019年8月27日

随着您的AWS环境的发展,您的组织不可避免地开始面临管理ssh密钥的挑战。由于安全性的重要部分依赖于这些密钥,因此诉诸于共享或其他解决方案既棘手又令人生畏。

AWS提供了针对此类问题的解决方案。它为我们提供了SSM服务(AWS系统管理器)。该工具具有几个重要功能,可让我们在Linux或Windows OS上执行某些操作:

  • 任务自动化
  • 修补
  • 运行命令
  • 库存
  • 会议经理

如何开始使用SSM远程会话管理器

AWS通过SSM为我们提供了会话管理器。此功能在2.3版及更高版本的SSM代理中可用。会话管理器允许我们通过使用HTTPS TLS1.2 /端口443连接到实例并获得Shell会话,而无需使用SSH密钥。重要的是要了解这不是SSH连接,而是HTTPS连接。

开始使用会话管理器的要求

2.3及更高版本中的SSM代理

默认情况下,SSM代理已预先安装在以下Amazon Machine Images(AMI)上:

  • 2016年11月或之后发布的Windows Server 2003-2012 R2 AMI
  • Windows Server 2016和2019
  • 亚马逊Linux
  • 亚马逊Linux 2
  • Ubuntu服务器16.04
  • Ubuntu服务器18.04

如果未安装代理,则可以手动设置 根据文件.

但是,如果已经安装了代理,并且您已将该代理用于其他目的(例如打补丁),但版本为2.2或更低,则可以从AWS控制台级别升级。

EC2实例需要一个IAM实例配置文件-您可以遵循 这条指令 创建角色。

值得记住的是,还要创建适当的策略,使您可以将日志保存到S3或Cloudwatch。

为IAM配置文件设置适当的权限-我们建议您根据此处提供的建议创建自己的自定义策略 链接 因为根据最佳实践,SSM不应具有任何冗余权限。

如果以上所有内容均已解决,请使用会话管理器。

如果配置成功,我们应该可以通过浏览器访问我们的服务器!

因此,我们可以轻松地管理服务器,而不必存储任何ssh密钥!

作者
Trek10云图标
帕维尔·苏里克(Pawel Sulik)