如何检查密钥对是否仍在EC2中使用?

时间:2019-05-24 16:32:24

标签: amazon-web-services amazon-ec2 administration devops-services

我们之前的Devops在EC2中创建了多个密钥对。看起来其中一些不再使用了。所以我想删除它们。如何找到密钥对的创建时间以及当前是否使用(最好在控制台中使用)?

3 个答案:

答案 0 :(得分:1)

密钥对是Linux的功能,而不是AWS的功能。

从Amazon Linux AMI启动Amazon EC2实例时,该实例上有一些代码将指定的密钥对复制到/users/ec2-user/.ssh/authorized_keys文件中。在此之后,它就是普通的Linux。

因此,了解实例是否允许通过特定键对登录的唯一方法是在每个用户的.ssh/authorized_keys文件中查找每个实例以查找该键对。

应该指出,不建议使用AWS生成的密钥对来持续管理实例登录。您的组织可能有一个Active Directory或LDAP服务器,因此应将实例配置为使用这些身份验证服务而不是AWS密钥对。这样,只需停用中央位置的用户即可,而不必分别访问每个实例。

底线::请在Amazon EC2和本地上执行常规安全程序。

答案 1 :(得分:0)

当前,AWS没有提供任何方法来检索有关密钥对创建的日期和时间。对于您而言,您可以做的是,在EC2控制台中检查为实例创建的密钥对,并删除其余未使用的密钥对。

答案 2 :(得分:0)

这将提供正在使用的AWS magick -size 256x256 canvas:transparent \ img/a_0_0.png -geometry +111+64 -compose over -composite \ img/b_0_1.png -geometry +94+48 -compose plus -composite \ img/c_0_0.png -geometry +108+88 -compose over -composite \ img/d_0_0.png -geometry +102+62 -compose over -composite \ png32:result.png 的列表。

KeyPairs

它获取aws ec2 --profile default describe-key-pairs --query KeyPairs[].[KeyName] --output text |xargs -I {} aws ec2 --profile default describe-instances --filters Name=key-name,Values={} --query Reservations[].Instances[].[KeyName,InstanceId] --output text| uniq 的列表,并使用该输出来匹配使用KeyPairs的服务器。如果未使用Keys,它将不会出现在列表中。

输出:

  

fake_key
  二次造假键

这也将与关闭的服务器匹配。

我想看看在KeyPair中会是什么样子,所以就到这里。这将获得未使用的键和输出键的列表。

Python

输出:

  

假密钥未使用