1台のマシンでのみ使用できるSSHキー

1台のマシンでのみ使用できるSSHキー

私の要求は簡単です。サーバーにSSHキーペア(公開とプライベート)を作成しました。「ㅏ」。これで、AWS IAMにパブリックSSHキーをアップロードし、SSH経由でCodeCommitリポジトリに接続するためのSSHキーIDを作成しました。 SSH 鍵 ID 値とサーバー「A」の秘密鍵ファイル・パスを更新した後、リポジトリーに".ssh/config"正常に接続できる必要があり、そうすることができました。今私の要件は、別のサーバーからリポジトリに接続しようとしているときです。「雨」(秘密鍵がサーバーに送信され、ファイルが.ssh/configサーバー「A」と同じように更新されました。)接続できないはずです。つまり、キーペアは作成されたサーバーでのみ機能する必要があり、他のサーバーからの接続は許可されません。可能ですか?インターネット検索をしてみると、信頼できるコンテンツが見つかりません。

答え1

authorized_keysリモートデバイスが共通ファイルを使用している場合は問題ありません。

これsshd(8)マニュアルページauthorized_keysファイル形式について説明します。このファイルにはさまざまなオプションがあり、そのうちの1つは次のとおりです。

from="pattern-list"

公開鍵認証に加えて、リモートホストの正式名またはIPアドレスをコンマ区切りのパターンリストに表示する必要があることを指定します。パターンを参照してください。 ssh_config(5)パターンに関する追加情報。

したがって、これらの行は以下からのみアクセスを許可しますhosta.example.org

from="hosta.example.org" ssh-rsa AAAA...== [email protected]

2つのクライアントホストAとBに対して異なるキーを生成しない理由は不明です。これにより、どのホストがどこにアクセスできるかを制御するのが非常に簡単になります。キーはホストに接続されます。

答え2

サーバーの B SSH 構成に秘密鍵を追加したため、これは不可能です。ただし、1つのIPでのみSSH接続を許可するファイアウォールルールなど、他の方法でサーバーAへのアクセスを制限できます。

関連情報