首先确保服务器ssh服务已启动,用户能够正常登录,然后配置客户端,过程如下:

  一、先用自已的用户登录到服务器,比如我用 uplinux 登录到服务器

  二、运行 SSH Secure Shell 工具中的“Secure Shell Client ”,选择菜单中“Edit”-> “Setting”,在打开的窗口左侧依次选择“Global Settings”->“User Authentication”->“Keys”,然后看到如下画面:

  

 

  三、点击“Generate New”,在打开的窗口中点击“Next”看到如下图:

  选择 “RSA”和 “2048”,然后点击“Next”,稍等一会,会计算一个密钥。

  

 

  四、看到如下图,参照图片中的内容进行填写,比如 uplinux 用户可以填写成 uplinux_key,这个无所谓,不要跟其它key重复就好了。

  

 

  在Passphrase中填写一个密码,这个是保护本地私有密钥的密码,也就是说,即使有人盗用了你的计算机,没有这个密码,也仍然不能使用你的密钥。注意,这个不是服务器上用户密码。

  填写完毕点击“Next”

  五、填写完毕后,密钥就生成完了,点击完成。然后看到如下画面:

  

 

  六、选择刚才生成的密钥(我里面有两个,你们不用理会),点击“Upload”,会弹出如下窗口:

  

 

  参考窗口中的内容填写,注意名称是自动出现的,不用管。第二项需要修改为 .ssh ,第三项不用管。

  然后点“Upload”

  注意:这个时候应该是已经登录的状态,不然公钥传不上去。

  七、如果没有提示错误,那么公钥就自动被上传到服务器上去了。

  接着要做一些手工的操作,在命令行界面里,输入如下命令: (左脚注意前面的$符号不是命令,只是个提示符)

  $ cd .ssh/

  $ ls -l

  会至少看到你刚才生成的 .pub 公钥文件和一个 authorization 认证配置文件。如果没有你刚才起的名子的文件,那就有问题,检查上面的过程。

  接着做下面的命令,假设我生成的是 uplinux_key.pub

  $ ssh-keygen -i -f uplinux_key.pub >> authorized_keys

  然后,删除刚才生成的文件:

  $ rm -rf uplinux_key.pub

  $ rm -rf authorization

  再接着,修改文件权限。(注意,本步骤很重要)

  $ chmod 600 *

  $ cd ../

  $ chmod 700 .ssh