kms密钥对可以在EC2密钥对中注册吗?

时间:2020-06-18 13:33:20

标签: amazon-ec2 terraform terraform-provider-aws aws-kms key-pair

我可以将kms密钥对注册为EC2节点上的SSH登录的密钥对吗?

我想使用Terraform对其进行管理。

1 个答案:

答案 0 :(得分:2)

从2020年6月20日开始,AWS KMS不能直接用于管理SSH密钥。

您可以使用KMS为其生成RSA和ECC数据密钥,以进行客户端加密操作,但是您必须自己管理这些密钥。

AWS KMS当前支持:

  1. 使用对称密钥加密(自2020年6月20日起仅使用AES)
  2. 具有非对称密钥的数字签名(自2020年6月20日起,RSA和ECC均如此)

KMS customer master keys (CMKs) for service-side encryption(从SSH客户端实际使用时昂贵且可能太高的延迟):

AWS KMS支持对称和非对称CMK。

  • 对称CMK:表示单个256位秘密加密密钥,它永远不会使AWS KMS保持未加密状态。要使用对称CMK,您必须致电AWS KMS。
  • 不对称CMK:代表数学上相关的公用密钥和专用密钥对,可用于加密和解密或签名和验证,但不能同时用于两者。私钥永远不会使AWS KMS保持未加密状态。您可以通过调用AWS KMS API操作在AWS KMS中使用公钥,或下载公钥并在AWS KMS之外使用它。

将不对称的CMK与SSH一起使用将需要修改的客户端或我不知道的插件,并且价格昂贵且速度慢。

Data keys for use in client-side operations;

AWS KMS还提供了对称数据密钥和非对称数据密钥对,它们被设计用于AWS KMS外部的客户端加密。非对称数据密钥对中的对称数据密钥和私钥受AWS KMS中的对称CMK保护。

  • 对称数据密钥-一种对称加密密钥,可用于对AWS KMS外部的数据进行加密。此密钥受AWS KMS中的对称CMK保护。 *非对称数据密钥对-由公共密钥和私有密钥组成的RSA或椭圆曲线(ECC)密钥对。您可以在AWS KMS之外使用数据密钥对来加密和解密数据,或者对消息签名并验证签名。私钥受AWS KMS中的对称CMK保护。

使用来自KMS的非对称数据密钥更为实用,但可能需要经过修改的客户端使用CMK对其进行解包,或者需要您使用SSH客户端的功能在客户端上管理密钥本身的加密

您还需要将公钥添加到要登录的主机。一个示例是使用Terraform生成CMK,并使用null_resource供应器从中创建不对称数据密钥。

然后,您可以获得非对称数据密钥的公共密钥,并将其作为密钥对添加到EC2中,以供置备实例使用。

这是非常复杂的,不太值得复杂。您最好在本地使用ssh-keygen。