複数のマシンで同じSSH秘密鍵を使用する


23

2つの異なるLinuxマシンからアクセスしたいGithubリポジトリを持っています。

最初のマシンでは、Githubの指示に従って SSHキーを生成し、結果の公開キーをGithubに追加しました。このクライアントは正常に動作します。

2番目のクライアントの場合、/home/{user}/.ssh/id_rsa最初のクライアントからファイルをコピーしました。これでやらなければならないことはすべてあると思いましたが、接続しようとすると「Permission denied(publickey)」と表示されます。

私は何が欠けていますか?

回答:


32

複数のクライアントから同じSSHキーを使用できる必要があります。ネットワークごとに異なるSSHキーがあり、それらは実際には問題なく複数の異なるコンピューターから使用する暗号化されたUSBドライブに保存されています。

SSHはファイルのアクセス権について非常に慎重なので、最初/home/{user}id_rsaファイル自体までのすべてのアクセス権を確認します。

SSHは実際にはグループまたは世界の書き込み許可を考慮しないためchmod go-w、ホームディレクトリと~/.sshスターター用のディレクトリを確認してください。また、ユーザーが所有していることを確認しますchown ${USER}:${USER}

SSHキー自体についてはchmod 600...

必要に応じて、別のSSH質問への回答にSSHキーの管理方法に関する追加情報があります。


3
それは許可でした
賛成

6

Githubの側から許可を拒否されている場合は、コピーされたSSHキーファイルではなく、システムのデフォルトを選択している可能性があります。これを回避する簡単な方法は、~/.ssh/configファイルを大きくして、次のファイルを入れることです。

Host github.com
  Hostname      github.com
  User          git
  IdentityFile  ~/.ssh/yourkeyfile

これにより、SSHクライアントはgithub.comに対してのみそのキーを使用するようになります。

お役に立てれば。


2
賛成票はありませんが、ありがとう
ヤリン

1

これは古いことは知っていますが、公開キーも2番目のクライアントにコピーする必要があると指摘したいと思います

(またはssh-keygen -y -f〜/ .ssh / id_rsa_ ..>〜/ .ssh / id_rsa ... pubで再計算します)

[1]から:

  1. 公開鍵認証方法:「publickey」

    唯一の必須認証「メソッド名」は「公開鍵」
    認証です。すべての実装はこのメソッドをサポートしなければなりません。
    ただし、すべてのユーザーが公開鍵を持っている必要はありません。また、ほとんどのローカル
    ポリシーでは
    、近い将来、すべてのユーザーに公開鍵認証が必要になることはありません。

    この方法では、秘密鍵の所有が
    認証として機能します。 このメソッド
    は、ユーザーの秘密鍵で作成された署名を送信することにより機能します。 サーバーは、キー
    がユーザーの有効な認証子であることを確認する必要があり、
    署名が有効であることを確認する必要があります。両方が保持される場合、認証要求を
    受け入れなければなりません。それ以外の場合は、拒否する必要があります。サーバー
    は、認証の成功後に追加の認証を要求する場合があることに注意してください。

sshクライアントは、公開キー(上記の太字で参照されている署名)をサーバーに送信することで認証を開始します。サーバーは、公開キーが承認されたキーである場合、ランダムなセッションIDをクライアントに送り返します。クライアントは、そのセッションIDを秘密鍵でエンコードし、サーバーに送り返します。サーバーは公開鍵を使用してそのセッションIDをデコードし、元のセッションIDと一致する場合、クライアントを認証します。

[1] [ http://www.openssh.org/txt/rfc4252.txt][1]


0

これはおそらく、2番目のクライアントでファイルのアクセス許可をコピーしなかったためです。
ただし、秘密キーはprivateです。正しい方法は、2番目のクライアントで新しい秘密キーを作成し、その公開キーをGithubに追加することです


私は、各ユーザーの複数のクライアントで、ユーザーごとに1つのキーペアを実行することを計画していました。しかし、各ユーザーの各クライアントのキーペアは、手に負えなくなるように思えます...?
ヤリン

各マシンの各ユーザーに同じ秘密鍵を使用する場合、問題はないようです。-pフラグを付けてscpを使用してコピーする場合は、許可を確認してください
半径
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.