ssh -iがまだパスワードを求めるメッセージを表示するのはなぜですか?

ssh -iがまだパスワードを求めるメッセージを表示するのはなぜですか?

suユーザーに対する権限があります。そのディレクトリに移動してから公開SSHキーを取得します。にも追加しました。foousertarget.host~/.sshid_rsa.pubauthorized_keys

ssh他のサーバーで有効にしたいです。別のサーバーに行き、公開鍵を保存し、/path/to/foouser.pub次を実行してみました。

ssh -i /path/to/foouser.pub[Eメール保護]

ただし、まだパスワードの入力を求められます。なぜ? SSHホストのfoouser SSH設定で変更する必要がありますか?

答え1

公開鍵ではなくフラグで秘密鍵を使用する必要があります-i

ssh公開鍵は同じ公開鍵に基づいて別のサーバーから送信された質問に合格できないため、非対称暗号化では公開鍵に基づく質問に応答するために秘密鍵を使用する必要があります。試みます。パスワードを含む方法。


非対称暗号化のしくみは次のとおりです。プライベートキーは保持されますプライベート。 誰とも共有しないでください。作成したホストからコピーしてはいけません。 (もちろんメールで送ってはいけません!)

これ人々鍵はどこにでも送ることができます。

公開鍵で暗号化したデータは秘密鍵でのみ復号化でき、秘密鍵で暗号化したデータは公開鍵でのみ復号化できる。

数学的に言えば、RSAアルゴリズムは2つのキーのうちの1つを秘密に保つ必要があることを除いて、2つのキーの間に機能的な違いはありません。ただし、実際のSSH実装では、これら2つのキーが区別され、異なって見えるので、次の点を確認してください。

  • あなたの公開鍵(秘密鍵ではない)がターゲットサーバーの「認証された鍵」ファイルに追加され、
  • 秘密鍵をに渡しますssh -i。 (公開鍵をに渡しても問題になりません-i。機能しません。)

共有したことがある場合プライベートキーを押すか、ターゲットサーバーにコピーします。新しいキーを生成し、古いキーを削除します。


実行した特定の手順をさらに詳しく見ました。バックアップして再起動する必要があります。この時点でfoouseron の鍵ペアを削除しtarget.host、ここに入れた認証済み鍵ファイルから公開鍵を削除する必要があります。秘密鍵をコピーしないでください。

気づくSSHによるアクセス[Eメール保護]someother.hostから来る場合、foouserにキーペアは必要ありません。

はいキーペアを生成する必要があります。someone.hostからユーザー数に応じてSSHを使用してください。から、そしてあなたは置く人々ペアのキーは~foouser/.ssh/authorized_keys続きますtarget.host


段階的に簡単に、ただし、今実行する必要があるセキュリティクリーンアップ手順は省略されます。秘密鍵をコピーしたからです。接続を確立する簡単な方法:

  1. 存在するstartserver.host、ユーザーとしてstartinguser実行しますssh-keygen。パスワードを設定するかどうかはあなた次第です。 (パスワードは秘密鍵が漏洩した場合に追加のセキュリティを追加します。する脅威を受けています。 )デフォルト設定でキーペアを生成するように求められたら、Enterキーを押すだけです。
  2. cat ~/.ssh/id_rsa.pubディスプレイの実行人々キー。
  3. コマンドの出力をコピーします。他のホストへtarget.host)に加えて~foouser/.ssh/authorized_keys
  4. startserver.host実行します。フラグは必要ありません。ssh [email protected]-i

コメントに返信:

秘密鍵を絶対にコピーしてはいけない場合は、秘密ssh -i鍵が必要なときにどのような利点があるかを説明できますか?

ホストからキーペアを生成します。~からssh別のサーバーに移動したいです。

あなたの秘密鍵はそのサーバーに残り、他の場所にコピーされません。 (バックアップにあるかもしれませんが、使用、他の場所にコピーされたことはありません。 )

あなたの人々キーはログインする各サーバーにコピーされ、特にそのサーバーにログインできるようにしたいユーザーのホームディレクトリにあるファイルに追加されますauthorized_keys.ssh

この設定(デフォルト)ではそうする必要はありません-i。ただし、複数のキーペアがある可能性があります。自分のコンピュータでさまざまな目的(別のサーバーグループ)で使用します。要点-iは、秘密鍵IDを読み取る代替場所を指定できることです。を使用cd ~/.ssh; mv id_rsa id_rsa.bak; mv id_rsa.other id_rsaしたり使用しなくてもssh ...同じ効果を得ることができます-i。しかし、-iそれはもっと便利です。

関連情報