(Tortoise)Git for Windowsを使用したキー処理の実装は、私を混乱させます。私の知る限り、_ssh.exe
_(gits独自のsshプログラム)のいずれかで実装でき、「偽の」ホームディレクトリの_ssh_config
_でホストごとにsshキーを選択できます。私にとっては、これは実際には適用できません。複数のBitbucketアカウントがあり、異なるホストを使用していますが、すべて同じホストです。
次に、TortoiseGitPlink
を使用する方法があります。基本的に、PuTTYで生成されたキーを使用してページェントを設定し、TortoiseGitがそのキーを使用できるようにします(環境変数_SSH_GIT
_をTortoiseGitPlink.exeに設定します)。
ここで私の質問は次のとおりです。GitBashで_ssh-keygen -t rsa -f ~/.ssh/rsa_key
_コマンドを使用して、デフォルトオプションでssh2 rsaキーを作成しました。 GUIを使用してこのファイルを_pageant.exe
_にロードしようとしました。エラーが発生しました:Couldn't load this key (OpenSSH-SSH-2 private key)
。
このキーの問題は何ですか? GitBashで作成され、すべての標準openSSHガイドラインに準拠する必要があります。 PuTTYキーとopenSSHキーに違いがあるのは正しいですか?
Pageantは、PuTTY形式(.ppk
)でのみキーをロードできます。
PuTTYツールで認識されるキーを別の形式でロードしようとすると、次のエラーメッセージが表示されます。
このキーをロードできませんでした(OpenSSH-SSH-2秘密キー)
PuTTYgenを使用してキーを変換する OpenSSH形式からPuTTY形式に変更する必要があります。 Pageantがファイル形式を認識した場合、PuTTYgenはそれを変換できます。
.ppk
形式で保存します。.ppk
形式の秘密鍵をPageantにロードできます。またはさらに簡単に、ssh-keygen
を使用する代わりに、PuTTYgenを使用してPuTTY形式で直接キーを作成します。
独自のキー形式がある理由については、PuTTYウィッシュリストを参照してください。
https://www.chiark.greenend.org.uk/~sgtatham/PuTTY/wishlist/key-formats.html
SSH-2秘密鍵ファイル形式には標準がないと思うことに注意してください。