リモートサーバーの秘密鍵を使用してSSH経由で接続できますか?

リモートサーバーの秘密鍵を使用してSSH経由で接続できますか?

AWS でインスタンスを作成するときに、AWS がインスタンスのプライベートキーファイルを作成し、このプライベートキーファイルをローカルシステムにダウンロードし、ssh -i <this_private_key> user@aws-ip で接続することを確認しました。インスタンスアドレス。

他のクラウドの他のLinuxサーバーでこの認証方式を試してみました。 ~/.ssh/id_rsaから秘密鍵をコピーして保存し、秘密鍵をコピーした1つのUbuntuサーバーから接続しようとしましたが、接続が拒否されました。マシン。通常、リモートサーバーのauthorized_keysファイルのSSHキーペアPUBLICキーを作成する必要があることに気づいており、常にこの方法を使用していますが、AWSシナリオとその仕組みに興味があります。リモートシステムの秘密鍵を使用して、AWSのように他のクラウドのリモートサーバーまたは自分のPC上の仮想マシンに接続できますか?

ベストアンサー1

SSH証明書認証(PKI)は、秘密鍵(秘密鍵)と公開鍵(秘密にする必要はありません)を使用します。 PKI 接続を確立すると、秘密鍵がクライアントに安全に保存され、対応する公開鍵がサーバーに配置されます。複数の公開鍵と秘密鍵のペアがあり、どちらを使用するかを知らせることができますssh(コマンドラインまたはssh -i {identity_file}各ホストブロックの設定ファイルから)。

便宜上、AWS では、新しいインスタンスにログインするためのパブリック/プライベートキーを作成できます。安全な接続を介して秘密鍵をダウンロードしてローカルに保存します。すでに公開鍵があるので、これから秘密鍵のコピーと公開鍵のコピーを組み合わせることで、認証された接続試行が可能になります。

コマンドを実行するときにssh -i {private_key} {remote_host}…実際に発生するのは、コマンドが接続を確立sshするためのネゴシエーションの一部としてこの秘密鍵を使用することです。公開鍵を他の宛先にコピーしない限り、他の何も公開鍵を持つことはできません。

必要な数のリモートコンピュータに同じ公開鍵を配置できます。これにより、プライベートキーインスタンスがこれらのリモートコンピュータへのアクセスを確認できます。

秘密鍵を別のサーバーにコピーして共有しないでください。代わりに、可能であれば、クライアントで処理する各場所(つまり、SSH接続を開始する場所)ごとに別々の公開/秘密鍵の組み合わせを作成し、新しく生成された公開鍵を適切なターゲットサーバーにコピーする必要があります。

最後に、あなたはこう尋ねます。 」他のクラウドのリモートサーバーやAWSなど、自分のPC上の仮想マシンに接続できますか?リモートマシンの秘密鍵だけを使用できますか?「秘密鍵の1つに対応する公開鍵を持つリモートサーバーにのみ接続できます。

おすすめ記事