MyException - 我的异常网
当前位置:我的异常网» Windows » windows上透过secureCRT和putty创建密钥登录

windows上透过secureCRT和putty创建密钥登录

www.MyException.Cn  网友分享于:2014-06-03  浏览:1次
windows上通过secureCRT和putty创建密钥登录

        前面介绍了linux的ssh远程登录协议和ssh无密码登录方式,这里在windows下通过secureCRT和putty登录linux来看一下具体的密钥创建,配置和登录,也算做个备忘录吧。

1.linux下创建密钥对

        还记得前面说的怎么创建密钥对吧:

[sshtest@localhost ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/sshtest/.ssh/id_rsa): 
Created directory '/home/sshtest/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/sshtest/.ssh/id_rsa.
Your public key has been saved in /home/sshtest/.ssh/id_rsa.pub.
The key fingerprint is:
22:e4:e8:60:24:b5:ac:bd:53:52:4a:b1:08:a0:e9:7b sshtest@localhost.localdomain
The key's randomart image is:
+--[ RSA 2048]----+
|+ o              |
|o= +             |
|=.= o            |
|++ *             |
|oo= + . S        |
|.o.+ . .         |
| .+E             |
|  ..             |
|                 |
+-----------------+

        如果想登录的时候不用输创建密钥的密码,那么上面就直接回车,不用输。执行完这个过程后,我们的密钥对就成功创建了,在.ssh这个隐藏目录中。查看发现有两个文件,一个私钥id_rsa,一个公钥id_rsa.pub,然后我们将公钥的内容输出到一个叫authorized_keys的文件中:

[sshtest@localhost ~]$ cd .ssh/
[sshtest@localhost .ssh]$ ls
id_rsa  id_rsa.pub
[sshtest@localhost .ssh]$ cat id_rsa.pub >> authorized_keys
[sshtest@localhost .ssh]$ ls
authorized_keys  id_rsa  id_rsa.pub

        为什么要输出到authorized_keys的文件中呢,前面也说过了,因为在/etc/ssh/sshd_config文件中配置的,默认为authorized_keys文件,如果有很多的公钥,就都输出到这个文件中。然后我们将私钥id_rsa拷出来放在我们的windows的某个目录中,密钥登录的时候需要这个玩意,最后重启sshd服务,/etc/init.d/sshd restart成功后,我们就可以在windows上通过secureCRT或者putty等软件来登录到linux的某个用户了,这个用户就是authorized_keys这个文件所在的用户。

        1).secureCRT登录

           运行secureCRT软件,输入要登录到的主机的IP地址,port端口,如果没特别设置默认为22以及要登录到用户的用户名,然后在authentication选项中只勾选PublicKey或者将PublicKey选项提到首选,再选中它点击Properties:



在弹出的对话框中点击这个按钮选中你拷出来的私钥点击OK,然后点击当前窗体的connect按钮:



最后会提示要输入创建密钥时的密码,如果设置过:



这样我们就可以登录到linux中指定的用户了:



这个过程中一定要记得将.ssh目录权限设置为700,将authorized_keys文件的权限设置为600,不然是会报错的:



        2).putty登录

           用putty就稍微麻烦了一点,需要下载一个叫puttygen的东东来转换私钥的格式,前面操作都是一样的,创建密钥对,然后修改权限,将私钥拷到windows的某个目录。putty私钥的格式不同,所以需要puttygen来转换。运行puttygen软件,点击Load选择拷出来的私钥:



如果找不到你的私钥文件,就点击右下角的文件类型,选择显示所有文件,因为私钥文件在linux下生成的,没有扩展名:



选择私钥之后会提示输入创建密钥时设置的密码,如果设置过:



转换成功,接下来就需要保存我们转换格式后生成的私钥文件,点击Save private key按钮保存:



putty的私钥扩展名是.ppk,这时你发现私钥文件已经保存成功,接下来就是使用putty密钥登录:


运行putty软件,左边选择Connection->SSH->Auth点击Browse按钮选择上面转换格式后生成的私钥文件.ppk:



然后在左边选择Session输入要登录主机linux的IP和port,点open:



最后输入要登录的用户的用户名和创建私钥时设置的密码,如果设置过:



2.windows下secureCRT和putty创建密钥对

        前面说的是在linux中创建的密钥对,现在选择用secureCRT和putty创建密钥对,然后将公钥上传至主机后再通过密钥登录。假设我们已经将公钥上传到了主机为key.pub,不能像上面直接输出到authorized_keys,必须要转换成openssh能识别的格式,这里就要ssh-keygen -i -f key.pub >> authorized_keys,authorized_keys文件必须是600的权限,而且要存在于.ssh隐藏文件中,如果没有就创建,权限为700,最后重启sshd服务/etc/init.d/sshd restart。下面看看两种创建密钥对的方式和密钥登录的方式。

        1).secureCRT创建和登录

           运行secureCRT软件,和上面一样选择PublicKey,然后点Properties,在弹出的对话框中选择Create Identity File来创建密钥对:



然后下一步->选择算法DSA或者RSA再下一步->设置密钥密码再下一步->设置密钥长度默认1024下一步->下一步->选择密钥对保存的位置,默认为我的文档中再完成->是否上传,选择否。这样密钥对就生成了,私钥为Identity,公钥为Identity.pub:



将公钥拷到linux主机上在我们要登录的用户目录中执行上面的红色部分的操作,然后通过PublicKey指定我们生成的Identity私钥文件登录,向上面一样。

        2).putty创建和登录

           putty创建密钥对还是要靠puttygen这个软件,运行puttygen软件,点击Generate按钮,自动创建密钥对。也可以设置密钥的长度,默认为2048,1024要比2048的创建速度快些。创建完成后,可以看到公钥的内容,然后设置密钥密码,分别保存公钥和私钥,然后将公钥上传到主机上执行上面红色部分操作,也可以只保存私钥然后将公钥内容复制到linux主机的authorized_keys文件中:


最后再运行putty,指定私钥登录。

文章评论

Java程序员必看电影
Java程序员必看电影
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
程序员应该关注的一些事儿
程序员应该关注的一些事儿
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
那些争议最大的编程观点
那些争议最大的编程观点
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
一个程序员的时间管理
一个程序员的时间管理
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
总结2014中国互联网十大段子
总结2014中国互联网十大段子
我是如何打败拖延症的
我是如何打败拖延症的
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
老程序员的下场
老程序员的下场
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
每天工作4小时的程序员
每天工作4小时的程序员
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
编程语言是女人
编程语言是女人
中美印日四国程序员比较
中美印日四国程序员比较
程序员都该阅读的书
程序员都该阅读的书
程序员的鄙视链
程序员的鄙视链
旅行,写作,编程
旅行,写作,编程
10个调试和排错的小建议
10个调试和排错的小建议
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
如何成为一名黑客
如何成为一名黑客
鲜为人知的编程真相
鲜为人知的编程真相
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
程序员必看的十大电影
程序员必看的十大电影
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
漫画:程序员的工作
漫画:程序员的工作
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
 程序员的样子
程序员的样子
我的丈夫是个程序员
我的丈夫是个程序员
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有