32

私はgitのプロジェクトに取り組んでいます。Windows では、git 拡張機能を使用してこのプロジェクトを管理し、パブリック リポジトリにアクセスするために .ppk キーを受け取りました。彼らが私に与えたパスフレーズを使用して、それをgit拡張機能にロードすると、機能します。

今回はLinux(ubuntu-32bit)の仮想マシンを設定し、このマシンからもリポジトリにアクセスしたいと考えています。

このサイトで見た別のスレッドから、次のコマンドを使用してリポジトリを複製します。

ssh-agent bash -c 'ssh-add /home/myHome/mykey.ppk; git clone git@serveraddress:project.git'

次に、シェルはパスフレーズを挿入するように指示します

Enter passphrase for /home/myHome/mykey.ppk:

しかし、挿入すると、それは悪いパスフレーズだとわかります。何度も確認しましたが、Windows で使用しているものと同じパスフレーズを使用していることは確かです。では、Linuxでキーを正しく使用するにはどうすればよいですか?

返信ありがとうございます。

4

1 に答える 1

63

Linux SSH クライアント (通常は OpenSSH) は、Windows SSH クライアント Putty で使用される PPK 形式を読み取ることができません。最初に、与えられた「PPK」キーを OpenSSH キーに変換する必要があります。Linux に「putty」をインストールし、puttygenコマンド ライン ツールを使用します。

$ sudo aptitude install putty
$ mkdir -p ~/.ssh
$ puttygen ~/mykey.ppk -o ~/.ssh/id_rsa -O private-openssh

パスフレーズを入力すると、OpenSSH 互換のキーが標準の場所に取得されます~/.ssh/id_rsa。その後、ssh-add(引数なしで) を使用して、このキーを SSH エージェントに追加できます。

または、Windows の putty が提供する PUTTYgen プログラムを使用することもできます。

于 2012-03-09T09:05:43.813 に答える