puttygen用法(Creating a new SSH key)

PuTTYgen是一套可以产生金钥的工具,它可生成RSA以及DSA的金钥,做出来的公开以及私有金钥,可以用于PuTTY 、 PSCP 、 Plink以及Pageant 。

  • 产生一个新的金钥:
    1. 直接点选PuTTYgen 图示。
    2. 第一步,选择所要生成之金钥的演算法(RSA / DSA) 、 SSH 版本以及金钥的长度,如下图所示。

      puttygen用法(Creating a new SSH key)
      puttygen用法(Creating a new SSH key)
    3. 按下后,在下图所表示的红框内任意移动滑鼠,直到金钥产生结束,此时,电脑会收集滑鼠任意移动所得到的资讯,最为产生金钥的乱数依据,如下图。

      puttygen用法(Creating a new SSH key)
      puttygen用法(Creating a new SSH key)
    4. 产生完后,可更改金钥的备注,另外请任意输入自己不易忘记的句子,做为启动私钥的通行码之用,之后将私钥储存在安全的地方,如下图所示。

      puttygen用法(Creating a new SSH key)
      puttygen用法(Creating a new SSH key)
  • 以下将讲解上述过程中遇到的各个选项及其代表意义:
    • 生成之金钥的演算法:
      1. SSH 1 协定仅能使用RSA 做为生成金钥的演算法,而SSH 2 协定能够支援RSA 以及DSA 两种演算法。
      2. PuTTY 的作者强烈建议使用者使用RSA 来生成金钥,因为DSA 有一些设计不良的地方,可能会导致是用者的私钥被有心人士窃听,倘若非要使用DSA 时,也请不要在每台远端伺服机使用同样的金钥。
    • 金钥的长度:长度越长,相对而言,也就更为安全,但对于大部分的情况之下, 1024 bit 已经很足够。
    • 启动私钥:当储存私钥至近端电脑时,若没有输入通行码(passphrase) ,则私钥不会再被加密,意指任何人若取得此私钥则对方将听行无阻。若在储存之际,有事先输入自己熟记的一串通行码,则就算私钥被拿走,对方也无法取用其中的内容。请记住你的通行码,它并无法经由其他方式取得它。
    • 关于相容性的问题:
      • 大部分的SSH 1 client 使用标准定义的私钥, PuTTY 也是依照标准来执行,所以不会有与其他的SSH client 相冲突。
      • 然而SSH 2 的私钥并没有一个标准的格式,所以任一套软体(PuTTY 、 OpenSSH 、 ssh.com) 生成的金钥无法立刻在其他套软体上执行。PuTTYgen能够将私钥输出成OpenSSH以及ssh.com的格式,请先下载最新测试版的 PuTTYgen,先将私钥汇入PuTTYgen后,在Converstions中选择所要输出的格式,在储存新的私钥之前,请先移除通行码。
  • 如何利用金钥来提供连线认证:
    • 如果你使用SSH 1 协定,请先至远端家目录的.ssh 目录,以文字编辑器开启档案authorized_keys ,先暂时回到近端电脑,使用PuTTYgen 载入所储存之私钥,载入后,请将上图黄色框框内的所有文字复制,再回到authorized_keys 档案中,将复制内的东西全部贴上,存档离开即可。
    • 倘若远端伺服机提供的是早期版本的OpenSSH 2 ,先前的档案要改名为authorized_keys2 。
    • 如果远端伺服机为ssh.com ,你必须先将转换过公钥上传至家目录的.ssh2 目录,并且编辑档案authorization ,在档案中寻找一行开头为key ,并且将key 后面的档案名称更改成你刚刚上传的公钥档案名。
    • 请注意位于家目录的.ssh 目录的档案权限及属性,它仅可以让自己写入。

 

本文:puttygen用法(Creating a new SSH key)