web-dev-qa-db-ja.com

PuTTYを使用して新しいAmazon EC2インスタンスに接続するときにSSHフィンガープリントを確認するにはどうすればよいですか?

新しいEC2で生成されたキーペアを使用してUbuntu 18.04を実行する新しいEC2インスタンスを作成するとき、結果の.pemをputtygenを使用して.ppkに変換し、PuTTYを使用してインスタンスに接続しようとすると、予期されるプロンプトが表示されて確認を求められますSSHフィンガープリント:

PuTTY fingerprint check Prompt

PuTTYは、MD5ハッシュの16進表記を示しています。 これはPuTTYがサポートする唯一のフィンガープリント形式です。

PuTTY以外では、最近の推奨フィンガープリントフォーマット Base64で表されるSHA256ハッシュです

新しく作成したインスタンスのEC2システムログを確認すると、SSHフィンガープリント、Base64表現のSHA256が表示されていることを確認できます。

EC2 system log on new instance

この答え を見ると、Amazon LinuxはBase64ではなく、16進数でハッシュを出力していました(おそらくまだそうですか?)。

EC2システムログに表示されるBase64 SHA256フィンガープリントが、PuTTYの接続先と一致することを確認するにはどうすればよいですか? EC2固有のツールのインストールは避けたいです。

ちなみに、PowerShellからOpenSSHを使用する場合、指紋の確認に問題はありませんでした。 (PuTTYではなくこれを使用することを検討しますが、マウスのサポートが不足しているようです。)

ssh command in PowerShell

また、私は this answer 参考情報を見つけましたが、それは私に答えを与えません。

(スクリーンショットに示されているすべての詳細は、短期間のインスタンスを反映しています。私はキーペアを破棄しました。)

2
Max Barraclough

キーの種類(アルゴリズム)とオプションで指紋を入力した後、ホストキーを(少なくとも一時的に)受け入れますが、パスワードや猫のビデオなどの機密情報はまだ入力しないでください。行う

ssh-keygen -l -f /etc/ssh/ssh_Host_{type}_key.pub

これにより、キーの「モダン」(sha256/base64)フィンガープリントが表示されます。 AWSコンソールの値と一致することを確認します。 -vを追加して、代わりに「ASCIIアート」の図面を確認できます。個人的には見つけられませんでしたが、研究によると比較が容易であると報告されています。しかし、それから私は、かつて新聞にあったとき、新聞にあったかつての「この絵の何が悪いのか」というパズルが得意ではありませんでした。

オプションでまた行います

ssh-keygen -l -E md5 -f {same}

「古代」(md5/hex)フィンガープリントがPuTTYによって示される値と一致することを確認します。

これが誤ったホストであることが判明した場合は、HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\SshHostKeysのレジストリから切断し、誤って受け入れられたキーを削除します。

1