本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在中创建、显示和删除 Amazon EC2 密钥对 AWS CLI
您可以使用 AWS Command Line Interface (AWS CLI) 为亚马逊弹性计算云 (AmazonEC2) 创建、显示和删除您的密钥对。您可以使用密钥对连接到 Amazon EC2 实例。
您必须在创建实例EC2时向 Amazon 提供密钥对,然后在连接实例时使用该密钥对进行身份验证。
注意
有关其他命令示例,请参阅参考指南
先决条件
要运行 ec2
命令,您需要:
安装和配置 AWS CLI。有关更多信息,请参阅 安装或更新到最新版本的 AWS CLI 和 身份验证和访问凭证。
-
将您的IAM权限设置为允许 Amazon EC2 访问。有关亚马逊IAM权限的更多信息EC2,请参阅《亚马逊EC2用户指南》EC2中的亚马逊IAM政策。
创建密钥对
要创建密钥对,请使用 aws ec2
create-key-pair
命令以及 --query
选项和 --output text
选项,以通过管道将私有密钥直接传输到文件。
$
aws ec2 create-key-pair --key-name
MyKeyPair
--query 'KeyMaterial' --output text >MyKeyPair.pem
对于 PowerShell,> file
重定向默认为 UTF -8 编码,某些SSH客户端无法使用该编码。因此,您必须通过管道将输出传输到 out-file
命令和显式将编码设置为 ascii
来转换输出。
PS C:\>
aws ec2 create-key-pair --key-name
MyKeyPair
--query 'KeyMaterial' --output text | out-file -encoding ascii -filepathMyKeyPair.pem
生成的 MyKeyPair.pem
文件类似于以下内容。
-----BEGIN RSA PRIVATE KEY----- EXAMPLEKEYKCAQEAy7WZhaDsrA1W3mRlQtvhwyORRX8gnxgDAfRt/gx42kWXsT4rXE/b5CpSgie/ vBoU7jLxx92pNHoFnByP+Dc21eyyz6CvjTmWA0JwfWiW5/akH7iO5dSrvC7dQkW2duV5QuUdE0QW Z/aNxMniGQE6XAgfwlnXVBwrerrQo+ZWQeqiUwwMkuEbLeJFLhMCvYURpUMSC1oehm449ilx9X1F G50TCFeOzfl8dqqCP6GzbPaIjiU19xX/azOR9V+tpUOzEL+wmXnZt3/nHPQ5xvD2OJH67km6SuPW oPzev/D8V+x4+bHthfSjR9Y7DvQFjfBVwHXigBdtZcU2/wei8D/HYwIDAQABAoIBAGZ1kaEvnrqu /uler7vgIn5m7lN5LKw4hJLAIW6tUT/fzvtcHK0SkbQCQXuriHmQ2MQyJX/0kn2NfjLV/ufGxbL1 mb5qwMGUnEpJaZD6QSSs3kICLwWUYUiGfc0uiSbmJoap/GTLU0W5Mfcv36PaBUNy5p53V6G7hXb2 bahyWyJNfjLe4M86yd2YK3V2CmK+X/BOsShnJ36+hjrXPPWmV3N9zEmCdJjA+K15DYmhm/tJWSD9 81oGk9TopEp7CkIfatEATyyZiVqoRq6k64iuM9JkA3OzdXzMQexXVJ1TLZVEH0E7bhlY9d8O1ozR oQs/FiZNAx2iijCWyv0lpjE73+kCgYEA9mZtyhkHkFDpwrSM1APaL8oNAbbjwEy7Z5Mqfql+lIp1 YkriL0DbLXlvRAH+yHPRit2hHOjtUNZh4Axv+cpg09qbUI3+43eEy24B7G/Uh+GTfbjsXsOxQx/x p9otyVwc7hsQ5TA5PZb+mvkJ5OBEKzet9XcKwONBYELGhnEPe7cCgYEA06Vgov6YHleHui9kHuws ayav0elc5zkxjF9nfHFJRry21R1trw2Vdpn+9g481URrpzWVOEihvm+xTtmaZlSp//lkq75XDwnU WA8gkn6O3QE3fq2yN98BURsAKdJfJ5RL1HvGQvTe10HLYYXpJnEkHv+Unl2ajLivWUt5pbBrKbUC gYBjbO+OZk0sCcpZ29sbzjYjpIddErySIyRX5gV2uNQwAjLdp9PfN295yQ+BxMBXiIycWVQiw0bH oMo7yykABY7Ozd5wQewBQ4AdSlWSX4nGDtsiFxWiI5sKuAAeOCbTosy1s8w8fxoJ5Tz1sdoxNeGs Arq6Wv/G16zQuAE9zK9vvwKBgF+09VI/1wJBirsDGz9whVWfFPrTkJNvJZzYt69qezxlsjgFKshy WBhd4xHZtmCqpBPlAymEjr/TOlbxyARmXMnIOWIAnNXMGB4KGSyl1mzSVAoQ+fqR+cJ3d0dyPl1j jjb0Ed/NY8frlNDxAVHE8BSkdsx2f6ELEyBKJSRr9snRAoGAMrTwYneXzvTskF/S5Fyu0iOegLDa NWUH38v/nDCgEpIXD5Hn3qAEcju1IjmbwlvtW+nY2jVhv7UGd8MjwUTNGItdb6nsYqM2asrnF3qS VRkAKKKYeGjkpUfVTrW0YFjXkfcrR/V+QFL5OndHAKJXjW7a4ejJLncTzmZSpYzwApc= -----END RSA PRIVATE KEY-----
您的私钥不存储在中 AWS ,只有在创建私钥时才能检索。以后您无法恢复它。而如果您丢失了私有密钥,则必须创建新的密钥对。
如果您要从 Linux 电脑连接到您的实例,建议您使用以下命令设置您的私有密钥文件的权限,以确保只有您可以读取该文件。
$
chmod 400
MyKeyPair.pem
显示您的密钥对
指纹是从密钥对生成的,您可以使用指纹验证您本地电脑上的私有密钥是否与 AWS中存储的公有密钥匹配。
指纹是从私钥的DER编码副本中提取的SHA1哈希值。创建密钥对时会捕获此值,并与公钥 AWS 一起存储。您可以在 Amazon EC2 控制台中或通过运行 AWS CLI 命令来查看指纹aws ec2
describe-key-pairs
。
以下示例显示 MyKeyPair
的指纹。
$
aws ec2 describe-key-pairs --key-name
MyKeyPair
{ "KeyPairs": [ { "KeyName": "MyKeyPair",
"KeyFingerprint": "1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f"
} ] }
有关密钥和指纹的更多信息,请参阅亚马逊EC2用户指南中的亚马逊EC2密钥对。
删除您的密钥对
要删除密钥对,请运行aws ec2
delete-key-pair
命令,替换为
并附上要删除的货币对的名称。MyKeyPair
$
aws ec2 delete-key-pair --key-name
MyKeyPair
参考信息
AWS CLI 参考:
其他参考资料:
-
要查看和贡献 AWS CLI 代码示例,请参阅上的 “AWS 代码示例存储库
” GitHub。 AWS SDK