【发布时间】:2022-02-05 05:53:55
【问题描述】:
我想授予 IAM 用户对 EC2 实例的访问权限。
换句话说,我希望他能够使用带有 keys 的 ssh 访问它,就像我使用 root 用户 一样:
ssh -i ACCESS_KEYS_DIRECTORY_PATH ubuntu@ec2-instance-id.region.compute.amazonaws.com
为此,我可以遵循两种情况:
场景 1:
- 使用 root 用户创建 EC2 实例。
- 将允许 IAM 用户访问的策略附加到此 EC2 实例
场景 2:
- 将策略附加到IAM用户,允许他创建EC2实例。
- 使用 IAM 用户登录控制台,然后创建 EC2 实例。
- 生成 ACCESS_KEYS,让用户可以访问此实例。
场景 3:
- 使用 root 用户创建实例
- 由于每个实例都有自己的
ACCESS_KEYS,因此无需执行我上面提到的任何操作,我只需将访问密钥交给 IAM 用户即可。
那么我应该遵循哪种方案以及为什么?
【问题讨论】:
-
对实际实例的访问超出了 IAM 的范围。普通的 linux / ssh 访问机制是授予该级别访问权限的,不涉及 IAM。例如。如果您没有在实例上提供 ssh 密钥,则即使是 root 用户也无法访问它。此时您需要终止并重试。
-
您必须向用户提供
.pem密钥并允许安全组上的必要连接。 SSH 不需要以任何方式访问 IAM。此外,AWS 访问密钥和 RSA 私钥 (.pem) 是完全不同的东西。 -
您需要在 EC2 控制台中创建一个密钥对,并在创建实例时引用该密钥对。或者,如果您已经在运行实例,请将密钥添加到 authorized_keys 文件
-
而且永远不应该你分发 ssh 密钥对,用户需要自己创建密钥,然后有人将该密钥对的公钥添加到服务器。这三种情况都行不通。
标签: amazon-web-services amazon-ec2