EBSを使用するAWS EC2インスタンスがあり、現在の秘密キーの使用を停止して、新しいキーを使用したいと思います。私が理解しているように、AWSコンソールでキーペアを削除するだけで公開キーが削除され、SSH経由で(古い)秘密キーを使用してインスタンスにアクセスできなくなることはありません。
私は回避策を試みました( 詳細はこちら )が、これが古い秘密鍵の使用を妨げないことに気付きました。
新しいインスタンスを作成してすべてを再インストールすることなく、このインスタンスを使い続け、古い秘密鍵の使用を防ぎ、新しい秘密鍵を発行する方法はありますか? LinuxとSSHにアクセスして、特定のキーのサポートを手動で削除できますか?
必要に応じて、インスタンス構成の詳細を提供できます。
AWSコンソールパネルに表示されるEC2キーペアは、EC2インスタンスを初期化するためにのみ使用され、提供されたキーペアでインスタンスへの初期アクセスを許可します。したがって、AWSコンソールパネルでそれらを削除しても、既存のインスタンスに違いはありません。 AWS Doc を参照してください。
古い秘密鍵の使用を防ぐには、リモートEC2インスタンスの.ssh/authorized_keys
ファイルを編集して、対応するエントリを削除する必要があります、EC2キーペアの公開キーです。
新しい公開鍵をauthrozied_keys
ファイルに追加し、古いものを削除する前にテストしてください。そうしないと、EC2インスタンスからロックアウトされる可能性があります。
新しいキーペアを発行するには、ローカルLinuxマシンでssh-keygen
コマンドを使用します。これは、引数なしで呼び出す場合の対話型プログラムです。
そして、ssh-copy-id
を使用して、新しいキーをインスタンスに自動的に適用します。
Linuxを使用している場合、EC2は他のLinuxインストールと同じなので、authorized_keys
ファイルから古いキーを削除し、.ssh
フォルダーとAWSから秘密キーを削除するだけです。それが戻らないことを確認するためのコンソール。
私の記憶が正しければ、Webコンソールのセキュリティキーは、新しいインスタンスが使用する最初のキーを生成しますand EC2 APIへのアクセスを提供します(ツールなどを使用)が、それらを削除しても削除されませんインスタンスから。