SSH-PuTTY–详细使用教程(三)

最近做SSH代理,在网上搜索了一些教程,在Putty的使用方面,下面的教程堪称最全面详细了,也转来供有需要的朋友的参考,自己也做一份记录保存以便日后参考。全文教程分四个部份发布,这是第三部分。 原文摘自:乐趣思 Windows下SSH客服端PuTTY–详细使用教程(三)

备份 PuTTY 的设置

用 PuTTY 最不爽的就是,它把所有的设置都保存到注册表了,本来这不是什么问题。但是难免会重装一下机器,用下面的命令可以备份 PuTTY 的所有设置。 putty把配置都保存在注册表里,打开CMD随便找个路径,然后输入以下命令即可在当前目录下得到备份的reg文件

regedit /e puttycfg.reg "HKEY_CURRENT_USER\Software\SimonTatham\PuTTY"

删除 PuTTY 的设置

如果只是在其他机器上临时用了一个 PuTTY,用完以后想删除 PuTTY 的配置,就在控制台里输入如下的命令:

putty.exe –cleanup

用 PuTTYgen 来生成密钥,以后可以不用密码登录服务器了

PuTTYgen 是密钥生成器,用来生成一对公钥和私钥供 PuTTY、PSCP、Plink、Pagent 来使用。直接运行 PuTTYgen 可以看到如下的界面。
SSH-PuTTY–详细使用教程(三)
点击 Generate 按钮就开始生成一个公钥和私钥对,生成完毕后,点下面的 Save private key 就可以把私钥保存起来,扩展名是 .ppk 的文件。Load 按钮可以把先前保存的私钥重新打开,然后做些修改,比如修改注释和私钥口令,或者把 PuTTY 格式的私钥转换为OpenSSH 格式的。

开始用 PuTTYgen 创建密钥

单击 Generate 按钮,然后你会看到进度条上面有个提示“Please generate some radomness by moving the mouse over theblank area.”,意思就是让你用鼠标在空白区域随机移动。随着鼠标在空白区域的移动,进度条会一直走下去。停止移动鼠标,进度条也就停止了。那我们就移动鼠 标,直到进度条走满为止。
SSH-PuTTY–详细使用教程(三)
等进度条走完之后,会出现下面的界面
SSH-PuTTY–详细使用教程(三)
最上面那个大大的只读文本框里面是公钥,用来保存到 OpenSSH 的 authorized_keys 文件中,这个文件中的每一行都是一个公钥。默认情况下,这个文件位于 Linux 用户主目录的 .ssh/ 子目录中,如果文件和目录都不存在,可以直接创建。但是创建的文件、目录和用户主目录($HOME, $HOME/.ssh, $HOME/.ssh/authorized_keys)的权限有个限制就是对除了本帐户的其他所有帐户都要求是只读的,否则的话,即使公钥、私钥都匹配 无误,也是无法登入系统的。这是 SSH 服务器的一个安全要求,因为如果别的帐户可以修改你的 authorized_keys 的话,恶意的增加一个公钥,那对方不用你的帐户口令也能以你的帐户登入系统了。对于一些特殊要求,你可以在 SSH 服务器的配置文件 sshd_config 中用指令

StrictModes no
来取消这个限制。在 sshd_config 的帮助手册中可以看到
StrictModes
Specifies whether sshd should check file modes and ownership of
the user’s files and home directory before accepting login. This
is normally desirable because novices sometimes accidentally
leave their directory or files world-writable. The default is
“yes”.
小技巧:每次修改 authorized_keys 这个文件时,你可以用如下的命令来修改,确保所有的文件属性和权限无误

mkdir -p $HOME/.ssh && touch $HOME/.ssh/authorized_keys && chmod go-w $HOME $HOME/.ssh $HOME/.ssh/authorized_keys && vim $HOME/.ssh/authorized_keys
还有一个要强调的是那个 Key comment,这是密钥的注释,一定要修改。因为这个密钥是给自己用的,所以最起码要输入自己的名字,用默认的注释很容易和其他人的密钥混淆的。如果担 心自己的密码忘记了,可以在后面加上密码提示,当然了,不要让别人用注释猜出你的密钥口令。比如,我可以把注释修改为

ChaiFeng [20061120] w.z.

后面的 w.z. 就是我的密码提示,能猜出来么?呵呵
SSH-PuTTY–详细使用教程(三)
输入注释,上面的公钥也会随之发生变化。
现在最重要的是,输入自己的密钥口令。就是 Key passphrase 和 Confirm passphrase 这个两个输入框。如果不输入口令,直接保存私钥会看到这个提示。为了安全起见还是输入口令吧,要不任何人得到这个私钥都可以不用口令登入系统了。
SSH-PuTTY–详细使用教程(三)
最后单击 Save private key 来保存私钥吧,保存到自己认为安全的地方,比如存放到私人的 USB 闪存盘上。需要登录时,插上 USB 闪存盘。登录完毕后就可以把 USB 闪存盘取下来,哈哈,这样子就比较安全了。大家也注意到了,还有个 Save public key 按钮,这个是保存 SSH2 格式的公钥,有些 SSH 服务器要求用这种格式的公钥文件。一般情况下,我们是不需要的,所以这里也就保存了。以后还想的话,就用 PuTTYgen 把私钥 Load 出来,然后再保存也可以。

用密钥登录服务器的流程

上面杂七杂八的说了一堆创建密钥时的事情,大家会不会已经有些乱了呢?我把这个过程再罗列一遍:

1. 如果没有公钥/密钥对,就用 PuTTYgen 创建一个,已经有了就可以忽略这一步。一个公钥/密钥对可以用在不
同的服务器上,所以也不需要重复创建,关键要有足够强健的密码和安全的存放。
2. 象先前一样输入帐户名和口令登录到主机上。
3. 输入如下命令,来编辑 authorized_keys 文件
mkdir -p $HOME/.ssh && touch $HOME/.ssh/authorized_keys && chmod go-w $HOME $HOME/.ssh $HOME/.ssh/authorized_keys && vim $HOME/.ssh/authorized_keys
4. 把
SSH-PuTTY–详细使用教程(三)
这个文本框里的公钥粘贴到 vim 中去,需要说明几点:这个文本框里的内容是一行的,粘贴到 vim 中时,别忘了按字母 o 这个键,否则的话,粘贴进去后,开头的 ssh-rsa 会变成 sh-rsa,为什么呢?哈哈,想想吧。为什么不按字母键 i 呢?这个在 vim 中不就是插入么?原因是我很懒,按字母 o,我可以节省一次按回车键。
虽然按大写 O 也行,那我不是还得再按一下 Shift 键么?
别忘了,在 PuTTY 中默认的粘贴可是按鼠标右键哦,然后按一下 ESC 键,然后输入 :wq 保存退出,等等,大家先别着急的输入 :wq,既然输入冒号还得按下 Shift 键,那我们就干脆直接两下大写的字母 Z,也就是 ZZ。怎么样?vim 也一样保存退出了吧。这次又节省了一次按键和两次寻找字母的移动,把懒得优良传统再一次在实践中发扬光大。
SSH-PuTTY–详细使用教程(三)
5. 如果已经有了私钥,第4 步里的那个公钥忘记保存了,就用 PuTTYgen 把这个私钥 Load 上去,然后重新复制一下公钥吧。
6. 在 PuTTY 的配置 Connection->SSH->Auth 这里面,指定上私钥,然后记得保存 Session,以后就不需要重复这一步了。
SSH-PuTTY–详细使用教程(三)
7. 最好也指定上自动登录的用户名,还记得这里吗?
SSH-PuTTY–详细使用教程(三)
8. 开始登录吧,这次你会看到一个不同于以往的登录提示
SSH-PuTTY–详细使用教程(三)

现在输入的口令可不是主机上这个账户的口令了,而是先前创建的这个密钥的口令。以后不管这个账户的口令是什么,即使再复杂,也和我们没关系了。只要 这个账户的 $HOME/.ssh/authorized_keys 文件中,有我们的公钥,我们就随时用匹配的私钥都可以登录了。配合后面提到的 Pagent,我们连输入密钥口令这一步也可以忽
略过去。
9. 登录成功了,别忘了按 Ctrl+d 注销哦。
SSH-PuTTY–详细使用教程(三)
以后这些步骤就不需要再重复了,只需要打开 PuTTY 后,双击一下保存的会话名称,输入密钥口令。

Pagent 加载密钥,每次开机后只需要输入一次密钥口令

终于轮到 Pagent 出场了,双击一下 Pagent.exe,嗯,没反应?再双击一下,咦?出来个提示,说已经运行了。
SSH-PuTTY–详细使用教程(三)
看看右下角吧,在这里呢

SSH-PuTTY–详细使用教程(三)
双击一下 Pagent 的图标,出来这样一个界面。很简洁的,Add Key 是添加私钥,Remove Key 是把选中的私钥从 Pagent
中卸载了。
SSH-PuTTY–详细使用教程(三)
好,现在单击 Add Key 按钮添加私钥,我把这个演示用的私钥保存到 C: 了
SSH-PuTTY–详细使用教程(三)
然后会出现输入密钥口令的对话框,输入正确的密钥后,单击 OK
SSH-PuTTY–详细使用教程(三)
这时,在 Pagent 的窗口中就能看到我们的私钥已经装载上去了。
SSH-PuTTY–详细使用教程(三)
现在打开 PuTTY,选择先前保存的 Session,双击一下。只要自动登录用户名设置上,主机上改帐户的 authorized_keys 文件里也有匹配的公钥。哈哈,发现没有?完全不需要口令,我们已经登录到系统了。
在 Pagent 的图标上点右键,也可以快捷的选择已经保存的会话。
SSH-PuTTY–详细使用教程(三)

建议大家把 Pagent 放到启动组里面,这样每次一开机,Pagent 自动运行,然后我们只需要把私钥装载一下,然后我们就可以一直享受自动登录系统的乐趣了。再配合上以后会讲到的 Plink、PSCP 这些,我们可以实现很多工作的自动化进行。完全不需要每次输入用户名、口令、输入又长又多的命令,再做一些烦躁的文件备份,最后还得记得注销系统,难道不 觉得麻烦么?这一切烦恼很快就会远离我们了,继续往下看吧。

原文链接:https://allinfa.com/ssh-putty-detailed-tutorial-3.html
原文标题:SSH-PuTTY–详细使用教程(三) - 美博园
※ 除声明转载,美博园文章均为"原创",软件版权归原作者,转载请以上面超链接注明来源!

本文TinyURL短网址: http://tinyurl.com/yaw8a9cz
本文Google短网址: https://goo.gl/r7T8pH

如喜欢本站请订阅: 或者 点此【RSS订阅真相网】

网 友 留 言

1条评论 in “SSH-PuTTY–详细使用教程(三)”

这里是你留言评论的地方

8 + 6 =
Copyright © 2007 - 2018 , Design by 美博园. 版权所有. 若有版权问题请留言通知本站管理员. 【回到顶部】