キーペアのフィンガープリントを確認する
キーペアのフィンガープリントを確認するには、Amazon EC2 コンソールの [キーペア] ページに表示される、または describe-key-pair コマンドによって返されるフィンガープリントを、ローカルコンピュータのプライベートキーを使用して生成したフィンガープリントと比較します。これらのフィンガープリントは一致するはずです。
Amazon EC2 がフィンガープリントを計算するとき、Amazon EC2 はフィンガープリントに =
文字でパディングを追加することがあります。ssh-keygen などのその他のツールでは、このパディングを省略することがあります。
キーペアのフィンガープリントではなく Linux EC2 インスタンスのフィンガープリントを検証しようとしている場合は、「インスタンスのフィンガープリントを取得する」を参照してください。
フィンガープリントの計算方法
Amazon EC2 は、RSA および ED25519 キーペアのフィンガープリントを計算するために、さまざまなハッシュ関数を使用します。さらに、RSA キーペアの場合、Amazon EC2 は、キーペアが Amazon EC2 によって作成されたか、Amazon EC2 にインポートされたかに応じて、異なるハッシュ関数を使用して異なる方法でフィンガープリントを計算します。
次の表は、Amazon EC2 で作成され、Amazon EC2 にインポートされた RSA および ED25519 キーペアの、フィンガープリントの計算に使用されるハッシュ関数の一覧です。
(Linux インスタンス) フィンガープリントの計算に使用されるハッシュ関数 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
キーペアのソース | RSA キーペア (Windows および Linux) | ED25519 キーペア (Linux) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Amazon EC2 によって作成された | SHA-1 | SHA-256 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Amazon EC2 にインポートされた | MD5¹ | SHA-256 |
¹ パブリック RSA キーを Amazon EC2 にインポートした場合、フィンガープリントは、MD5 ハッシュ関数を使用して計算されます。これは、サードパーティーのツールを使用する、Amazon EC2 を使用して作成した既存のプライベートキーから新しいパブリックキーを生成するなど、キーペアの作成方法に関係なく当てはまります。
異なるリージョンで同じキーペアを使用する場合
同じキーペアを使用して、異なる AWS リージョン にあるインスタンスに接続する場合は、使用するすべてのリージョンにパブリックキーをインポートする必要があります。Amazon EC2 を使用してキーペアを作成する場合、パブリックキーを他のリージョンにインポートできるよう、パブリックキーマテリアルを取得する することができます。
注記
-
Amazon EC2 を使用して RSA キーペアを作成した場合、Amazon EC2 プライベートキーからパブリックキーを生成すると、インポートされたパブリックキーのフィンガープリントは、元のパブリックキーとは異なるものになります。これは、Amazon EC2 を使用して作成された元の RSA キーのフィンガープリントは SHA-1 ハッシュ関数を使用して計算されるのに対し、インポートされた RSA キーのフィンガープリントは MD5 ハッシュ関数を使用して計算されるためです。
-
ED25519 キーペアでは、同じ SHA-256 ハッシュ関数を使用してフィンガープリントが計算されるため、Amazon EC2 で作成されたか、Amazon EC2 にインポートされたかにかかわらず、フィンガープリントは同一になります。
プライベートキーからフィンガープリントを生成する
ローカルマシンのプライベートキーからフィンガープリントを生成するには、次のいずれかのコマンドを使用します。
Windows ローカルマシンを使用している場合、Windows Subsystem for Linux (WSL) を使用して、次のコマンドを実行できます。Windows 10 インストールガイド
-
Amazon EC2 を使用してキーペアを作成した場合
次の例のように、OpenSSL ツールを使用してフィンガープリントを生成します。
RSA キーペアの場合:
openssl pkcs8 -in
path_to_private_key
-inform PEM -outform DER -topk8 -nocrypt | openssl sha1 -c(Linux インスタンス) ED25519 キーペアの場合:
ssh-keygen -l -f
path_to_private_key
-
(RSA キーペアのみ) パブリックキーを Amazon EC2 にインポートした場合
キーペアの作成方法 (サードパーティーのツールを使用する、Amazon EC2 を使用して作成した既存のプライベートキーから新しいパブリックキーを生成するなど) に関係なく、この手順に従うことができます。
次の例のように、OpenSSL ツールを使用してフィンガープリントを生成します。
openssl rsa -in
path_to_private_key
-pubout -outform DER | openssl md5 -c -
OpenSSH 7.8 以降を使用して OpenSSH キーペアを作成し、パブリックキーを Amazon EC2 にインポートした場合
次の例のように、ssh-keygen を使用してフィンガープリントを生成します。
RSA キーペアの場合:
ssh-keygen -ef
path_to_private_key
-m PEM | openssl rsa -RSAPublicKey_in -outform DER | openssl md5 -c(Linux インスタンス) ED25519 キーペアの場合:
ssh-keygen -l -f
path_to_private_key