【转】PuTTY的ppk密钥与OpenSSH密钥之间的相互转换

 

原文:https://www.xitongzongcai.com/info/50116.html

 

-----------------------

 

好多个定义表明:id_rsa、id_rsa.pub、ppk、pem

现阶段有两个流行的密钥格式:OpenSSH格式的密钥 和 PuTTY格式的密钥。

  1. id_rsa和id_rsa.pub
    全是OpenSSH格式的密钥。
    id_rsa是OpenSSH格式的SSH私钥。
    id_rsa.pub是OpenSSH格式的SSH公钥。
  2. ppk文件
    ppk文件是Putty的私钥。PuTTY Private Key 的简称。
    可是ppk文件中与此同时包括了公钥和私钥,可以用记事本开启查看。
  3. pem文件
    pem文件能够包括任何东西: 具备公共性密钥的资格证书,SSH公钥,公钥私钥,具备公钥私钥的资格证书。 PEM是一个文本文件,可以用记事本开启。

OpenSSH格式 和 PuTTY格式应用的都比较多,常常取得在其中一种格式,而应用中却必须另一种格式的。这就必须转换。

linux下的互相转换

ppk转换为OpenSSH格式

安装putty工具(以ubuntu为例子)

sudo apt-get install putty-tools

已经知道PuTTY格式的ppk密钥puttykey.ppk,获得私钥id_rsa

puttygen /path/to/puttykey.ppk -O private-openssh -o ~/.ssh/id_rsa

获得公钥id_rsa.pub

puttygen /path/to/puttykey.ppk -O public-openssh -o ~/.ssh/id_rsa.pub

OpenSSH格式转换为ppk

安装putty工具(以ubuntu为例子)

sudo apt-get install putty-tools

已经知道OpenSSH格式的私钥keyname,转换为keyname.ppk

puttygen keyname -o keyname.ppk

windows下的互相转换

也是依靠 puttygen 工具。
安装putty工具,随后开启配套设施的puttygen.exe

ppk转换为OpenSSH格式

保存OpenSSH格式的私钥


再保存OpenSSH格式的公钥


OpenSSH格式转换为ppk

TortoiseGit 和 git 对密钥的应用

TortoiseGit默认应用的是putty格式的密钥。
git使用的是OpenSSH格式的密钥。

TortoiseGit能够将tortoisegitplink.exe改为git安装文件目录的下bin\ssh.exe,随后应用OpenSSH格式的密钥。

linux下git假如仅有ppk密钥,要想应用这一密钥,必须进行以下二步:

    1. 把ppk密钥转换为OpenSSH的公钥id_rsa.pub和私钥id_rsa
    2. 把这两个文件移到~/.ssh文件夹下
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章