Amazon Web Services (AWS) - List EC2 key pairs using the AWS CLI

by
Jeremy Canfield |
Updated: May 25 2023
| Amazon Web Services (AWS) articles
This assumes you have already configured the aws command line tool. If not, check out my article on Getting Started with the AWS CLI.
The aws ec2 describe-key-pairs command can then be used to list the EC2 key pairs that have been created. An EC2 key pair is typically used to make an SSH connection onto your EC2 instances.
~]$ aws ec2 describe-key-pairs
{
"KeyPairs": [
{
"KeyPairId": "key-0551234a925abcd7a",
"KeyFingerprint": "86:0e:bb:db:6b:78:7c:67:0e:b1:91:38:0a:ce:95:71:4d:2b:72:2e",
"KeyName": "default",
"KeyType": "rsa",
"Tags": []
},
{
"KeyPairId": "key-04582539453c591c1",
"KeyFingerprint": "b6:eb:8a:a0:5e:4e:a6:0b:66:3c:3d:93:6d:42:63:d7:f5:32:23:71",
"KeyName": "my-key",
"KeyType": "rsa",
"Tags": [
{
"Key": "Name",
"Value": "my-key"
}
]
}
]
}
And here is an example of how to limit the output using the --query option.
aws ec2 describe-key-pairs --query 'KeyPairs[?KeyName==`default`]'
And here is an example of how to limit the output using the --filters option. This will only work if the key has Tags.
aws ec2 describe-key-pairs --filters "Name=tag-value,Values=my-key"
The aws ec2 create-key-pair command can be used to create a key pair that can then be used to make an SSH connection onto your EC2 instances.
~]$ aws ec2 create-key-pair --key-name my-key
{
"KeyFingerprint": "b6:eb:8a:a0:5e:4e:a6:0b:66:3c:3d:93:6d:42:63:d7:f5:32:23:71",
"KeyMaterial": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQIBAAKCAQEA4ASycG6bvaPyUdDBiOgJ+EW/LWNtO0P7hQiCm8nOh7GAxL40\nMD4nkBejZ0CgoGXRcUOxF0CzBssrVv5d9tSlgVP16Oc3EbfVKWIWnChN5asDy8EP\n7t3Pe1/6dLA4B5iRbVcQV3FZ9NypujS/PUdgKpuhCWt36uq4ncAWlrbqjJuHOJrc\nDPu6d5yuF0eu8n975+3zbf4enCcm7ZaY6WQaenv5RIqQAYsNtYRMHqLGKFJAvddZ\nTuuONgDy/GCrLjE8VkdTMIzjYskd18okRjzNyUNJUjWKZvzFFV9D07QdgzvlZnyZ\nlHOceNjLZTP1QfrKSej9hGgt1YRKq61eBRHNVwIDAQABAoIBAA0nOXLwi6Ru4+N5\n5mMrfKpfLgJ0PA2myDXfcgvDpaTB/1WN9XJ/s8L6IFYHrWa9k7aayuMaoWhctYa+\nGLZNdgpJ675pFQqtSI7Ne5Zfp3M8v1RPWagkzfHoiMQhNKj9hExvOD5qIWYHLtAI\nGNJ4RmU6DhKHhNr+PSjGBo2C3/KxcvBkJth+xjDXIQWWwPi5Cbn4u//eD43KqwGh\nhgiWK+tydF2KnUfIYGx56ujVn5/tecY9+gmVRnRID69iYH1GdsNtcklazu/q7u+w\nlyjNKFaMF5lK7IPWkFU86zi16WJwCjAtQaWiDvSSTUUt4UIBB2vJdwkyVzPjMMTV\n0tkVSYECgYEA+qCspmzX0zTVreU9nY4YA1d6/YZ0cjEXJr0QrHHO3WGEfFVLYhn1\nci+74F8G9n08kYa1yPOzT2UIY4U09dfdwjopK3aajpQKv8BjEKhVS290oqUQd6Mz\nvgov/zN6Pt/oBcVmmFpnNNX3XuppUWSOMBujHsk9NYCDCVbizAxSV2kCgYEA5NIA\n41qTwgfg9LRzAw6VFE5KHT+//7ielXVpNLWSz1oBnN5IklXpJyy+4bgfPXgvHjP0\nTmPH8YpIqZTWj5KJfsYmSmaUo+18+uxS7bx8dMx5FhXTQa7S3L66JeohP3rIp7sz\nsCLqkcXselodxWceRTyVhBNs8Hdwtms9BQFBJr8CgYEAuKb6rR9SICU0LYvRSqyv\nGn8weWu/jYaHlR4FE9hB3i+D6gr5oEyZ3sg2dsfsnFyG7H1An86VVLCObqxs6Zhi\npUAupvwaQWPnS4GWO2aaeRqj51UP/eU7MQ/WbwLhVUOoceAPh75Lfc0LFV5FvBcG\n/4DNPNhthWaqpI3kSQvm+skCgYEAif5HwNSoFTSxKoIEdkx+BV/tfFQs0ugg4xuK\nldoGrnumS1cWRwH+eLyYZQGn/WcUa0+Dvx6XvwfZKEP1XWJO/yA6iVXxwCaB38VT\ngcHRAJMrVvFUlOD8k1mGY0UeRe0jQ1w3ILr94WmOYn8kQx8b9z9BIASjByXQ2II1\nq2YFR3sCgYEA0euiepqA8HXCaaZ2HD8cKXK5cNZKBwa/UlEmB7O54g8rkGaQYq2A\namBZWIMi7EiffDSQWPKpnY3+0m46j4wAmGZXz7OTcLAIYDOqvXSVQv22GYpBNu6e\nSNUGOJ7r54g0d9KL/OAGX6thc4nLbhW9EUfhmy8MnLrz7vhOHj6oGbI=\n-----END RSA PRIVATE KEY-----",
"KeyName": "my-key",
"KeyPairId": "key-04582539453c591c1"
}
Did you find this article helpful?
If so, consider buying me a coffee over at