TortoiseGit 使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥,而git使用的是rsa的密钥。

那如何保证同一key拥有2种格式呢?

一、使用TortoiseGit的PuTTYgen程序生成

使用TortoiseGit的PuTTY Key Generator工具来生成既适用于git的rsa密钥也适用于TortoiseGit的ppk密钥,

具体配置步骤如下:

1)运行TortoiseGit开始菜单中的PuTTYgen 程序

2)点击“Generate”按钮,鼠标在上图的空白地方来回移动直到进度条完毕,就会自动生一个随机的key,如下图示

Image(42)

如有需要,可以为密钥设置对应的访问密码,就是修改上图中“Key passphrase”和“Confirm passphrase”的值。

3)将上图中多行文本框的内容全选、复制,并粘贴到git账户的 SSH public key中,这就是适用于git的公钥。

4)点击上图中的“Save private key”按钮,将生成的key保存为适用于TortoiseGit的私钥(扩展名为.ppk)。

5)运行TortoiseGit开始菜单中的Pageant程序,程序启动后将自动停靠在任务栏中,图标显示为Image(2),双击该图标,弹出key管理列表,如下图示

Image(43)

6)点击上图中的“Add Key”按钮,将第4步保存的ppk私钥添加进来,关闭对话框即可

二、使用TortoiseGit的PuTTYgen程序转换OpenSSH格式的key成PuTTy的ppk格式

本人经常使用SecureCRT工具来远程管理Linux,其使用的是OpenSSH格式的key,为了方便管理,不想再新建一套key。

而对于已经有OpenSSH格式的key,也可以不用再另生成,直接使用TortoiseGit开始菜单中的PuTTYgen 程序,导入OpenSSH key,再另存为ppk格式的key即可。

1)打开PuTTY Key Generator,点击”Conversions“,导入key,如下图示

Image(44)

2)选择OpenSSH格式的key,这里选私钥。如下图示

Image(45)

3)再点击“Save private key“,如下图示

Image(46)

4)格式为PuTTy的ppk格式,写上文件名,如下图示

Image(47)

 

从上面的文中可以看到,PuTTY Key Generator也可以把PuTTy的ppk格式的key转换成OpenSSH格式的key。此处就不演示了。