sshで複数の秘密鍵を使用するにはどうすればよいですか?


58

秘密鍵/公開鍵認証を使用するようにsshをセットアップできました。今私はできる

ssh user@server1

そして、秘密鍵でログオンします。次に、別のサーバーに接続し、別のキーを使用したいと思います。どのように設定しますか

ssh user@server1

privatekey1を使用します

ssh user@server2

そしてprivatekey2を使用します


7
本当の理由はありません-1つは個人用のmythboxで、もう1つは仕事用のサーバーであり、職場でホームキーを使用したくありませんでした。
ジョシュア

答えはどれも完全な質問に答えていないようです。たとえば、異なるキーprivatekey1とprivatekey2を作成する方法
jpwynn

回答:


49

いくつかのオプションがあります。

  1. を使用して両方のキーをsshエージェントにロードしますssh-add。両方のサーバーに接続すると、両方のキーが利用可能になります

  2. あなたの作成し$HOME/.ssh/configたファイルを作成し、Hostserver1とserver2のための別のセクションを。各HostセクションでIdentityFile、適切な秘密鍵ファイルを指すオプションを追加します


2
sshエージェントは素晴らしいアイデアでした。また、公開キーファイルと秘密キーファイルの両方(key1とkey1.pub)が〜/ .sshにある場合、自動的にロードされます。
ジョシュア

57

これを~/.ssh/configファイルに設定できます。次のようなものがあります。

Host server1
IdentityFile ~/.ssh/key_file1

Host server2
IdentityFile ~/.ssh/key_file2

man ssh_config 参考です


4
またUser、各ホストに対してキーストロークを削減するように指定することもできます。最後に、ホストごとに新しいSSHキーを生成するときssh-keygenに、実際に代替キーパスを入力するようにしてください。
マルコセッピ

言ってhost x ->key1から残りのホストのようにデフォルトのキーを指定するオプションがありますkey2
-azerafati

はい、sh Host * デフォルトを追加します。上書きを下に追加します。また:sh man_ssh_config アスタリスク「*」および感嘆符「!」に関する「ホスト」セクションの部分
immeëmosol
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.