Unix環境でputtygenで生成された公開鍵を使用する?

Unix環境でputtygenで生成された公開鍵を使用する?

重複の可能性あり:
Linux で .ppk キーを OpenSSH キーに変換するにはどうすればいいですか?

(unix、ここでは: ubuntu 10.4)

私は、UNIX で SSH キー ペアを作成する方法 (ssh-keygen) と、Windows でそれを実行する方法 (puttygen) を知っています。私のケースで不足しているのは、Windows で生成されたキー ペア (puttygen) を UNIX シェルで使用する方法です。

この場合、git で ssh キーとして使用するために、公開キーをどこに配置する必要がありますか。

答え1

必要なキーに応じて...

秘密鍵 – ログイン用からUnixシステムを別のUnixシステムに変換する

まず、PuTTYgen を使用して、キーを PuTTY 形式から OpenSSH が使用できる形式に変換する必要があります。

  • Windows版のPuTTYgenでは、変換 → OpenSSH キーのエクスポートメニュー項目;

  • Linux 版では、puttygen mykey.ppk -O private-openssh -o mykey.

公開鍵のみ – Windowsからのログイン用ユニックス

ダニエルの回答を参照してください。

答え2

Puttygen ウィンドウには、SSH で想定される形式の公開キーを含むテキスト領域が含まれています。

~/.ssh/authorized_keysそれをコピーし、サーバー上のファイルに別の行として追加します。ファイルとディレクトリがグループやその他のユーザーによって読み取り/書き込み可能でないことを確認してくださいchmod go-rwx ~/.ssh ~/.ssh/authorized_keys。つまり、 を実行します。

その後、サーバーは認証に秘密鍵を使用してログインを受け入れます。

答え3

はい、あまり明確に説明できなかったと思いますが、解決策を見つけました:

  1. puttygenを起動する
  2. 秘密鍵を読み込む
  3. メニュー変換|OpenSSHキーのエクスポート
  4. どこかに保存し、開いて、内容をクリップボードにコピーし、Linux のファイル $HOME/.ssh/id_dsa に貼り付けます。
  5. (オプション) テキスト領域「OpenSSH authorized_keys ファイルに貼り付けるための公開キー」の内容をコピーし、Linux のファイル $HOME/.ssh/id_dsa.pub に貼り付けます。

これで、シェルからこの SSH キーを使用してリモート システムにログインできるようになります。

補足: Windows から git をシームレスに使用するには、Linux シェルの putty を使用して git に接続し、putty セッションで次のオプションを設定します。

ここに画像の説明を入力してください

(そして、公開鍵を ~/.ssh/authorized_keys に置く必要があります。)

関連情報