IDファイルよりもSSH転送エージェントの優先順位を指定する方法は?

IDファイルよりもSSH転送エージェントの優先順位を指定する方法は?

以前は、SSHプロキシ転送を介して自分のサーバーに接続できました。

ssh -A my.server

次に、ファイルに自分の公開鍵があるサーバーネットワーク上の他のホストに接続しますauthorized_keys

server:~# ssh another.host

サーバーが公開/秘密鍵のペアを作成するまではうまくいきました~/.ssh/id_rsa~/.ssh/id_rsa.pub

ここで接続しようとすると、次の結果が表示されます。Permission denied (publickey).

~/.ssh/id_rsa私はエージェントのキーを渡そうとし、失敗する前にサーバーのキーを試していると思います。

許可される試行回数を増やす方法があるかもしれませんが、my.serverプロキシから渡されたキーの試行の優先順位を指定する別の設定オプションを使用したいと思います。IdentitiesOnly IdentityFile特定のキーサーバーに対して試行されるキーサーバーを制御するために使用できる方法に似ています。試行 - または~/.ssh/id_rsa特定のホストに対する試行を無効にします。主キーのオプション - 他のすべてのホストの名前を変更または指定する必要はありません(真のデフォルト値を保持することを許可します)。

また、公開鍵を追加したくありません。プロキシ転送を使用してログインしたときにのみ接続が発生したいとmy.server思います。another.hostmy.server

答え1

実際の状況はこれより少し複雑です。クライアントは利用可能なすべてのキーを提供し、そのうちのいくつかが失敗すると完全に失敗します。

-vvvコマンドラインに追加すると、詳細なログで確認できます。使用すると-o IdentitiesOnly=yes役に立ちます。

また、オンプレミスに保持しているキーの数を減らすのにも役立ちますssh-agent

最後に考えることができるのは、デフォルトのid_rsa場所からファイルを移動し(クライアントは常にデフォルトの場所からファイルを読み取って閉じることはできません)、~/.ssh/config必要なホストでのみ使用するように構成することです。

関連情報