AWS CLI での Amazon EC2 キーペアの作成、表示、および削除
AWS Command Line Interface (AWS CLI) を使用して、Amazon Elastic Compute Cloud (Amazon EC2) のキーペアを作成、表示、および削除することができます。キーペアは Amazon EC2 インスタンスに接続するときに使用します。
インスタンスを作成するときに Amazon EC2 にキーペアを指定する必要があり、インスタンスに接続するときには、そのキーペアを使用して認証する必要があります。
注記
その他のコマンドの例については、AWS CLI リファレンスガイド
前提条件
ec2
コマンドを実行するには、次のことが必要です。
AWS CLI をインストールして設定します。詳細については、AWS CLI の最新バージョンのインストールまたは更新およびAWS CLI の認証とアクセス認証情報を参照してください。
-
Amazon EC2 アクセスできるように IAM アクセス許可を設定します。Amazon EC2 に対する IAM アクセス許可の詳細については、「Amazon EC2 ユーザーガイド」の「IAM policies for Amazon EC2」を参照してください。
キーペアを作成する
キーペアを作成するには、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"
} ] }
キーとフィンガープリントの詳細については、「Amazon EC2 ユーザーガイド」の「Amazon EC2 キーペア」を参照してください。
キーペアの削除
キーペアを削除するには、
を削除するペアの名前に置き換えて、MyKeyPair
aws ec2
delete-key-pair
コマンドを実行します。
$
aws ec2 delete-key-pair --key-name
MyKeyPair
リファレンス
AWS CLI リファレンス:
その他のリファレンス:
-
AWS SDK および AWS CLI のコード例を表示したり、提供したりするには、GitHub の AWS コード例のリポジトリ
を参照してください。