您的位置:首页资讯教你一招 → Putty之public key ssh认证入门

Putty之public key ssh认证入门

时间:2004/10/15 1:17:00来源:本站整理作者:蓝点我要评论(3)

  



        cAreLeSs作品:

1.工作平台
客户端:Win2kEn Sp3,Putty Beta 0.53
服务器:RedHat72,OpenSSH_3.4p1

2.Putty简介
一个免费小巧的Win32平台下的ssh客户端。它的主程序只有348k,
但是功能丝毫不逊色于商业的SecureCrt,更重要的是它是免费的。
官方主页:http://www.chiark.greenend.org.uk/~sgtatham/putty/

3.Publick Key认证简介
Publick Key认证的主要魅力在于认证时承诺不必提供密码就能够
同远程系统建立连接。Publick Key认证的基础在于一对密钥,public key
和private key,public key对数据进行加密而且只能用于加密,private key
只能对所匹配的public key加密过的数据进行解密。我们把public key放在
远程系统合适的位置,然后从本地开始进行ssh连接。此时,远程的sshd会产生
一个随机数并用我们产生的public key进行加密后发给本地,本地会用private
key进行解密并把这个随机数发回给远程系统。最后,远程系统的sshd会得出结论
我们拥有匹配的private key允许我们登录。

4.制造密钥
用putty套装的puttygen来产生密钥。密钥的类型建议选择SSH2 RSA,因为用的
最为广泛,大多数server支持。密钥的位数选择1024对大多数用户已经足够,除
非你觉得还是不安全。然后点击"Generator",此时密钥生成当然也有几个选项
出现。如果你有不止一个key,你可以在“Key comment”作注释用于区别其他的key。
“Key passphrase“和“Confirm passphrase“用于对硬盘上的key进行加密,如
过你自己一个人用机器觉得安全有保障的话可以让它们为空。然后保存两个key。
不要关掉puttygen,它还有用呢。

5.输送public key到远程系统
在远程系统自己的目录下建立目录".ssh",然后进入目录建立一个新文件authorized_keys
,然后把puttygen中"Public key for pasting into authorized_keys file"粘贴
于authorized_keys这个文件中。然后执行以下命令:
chmod 700 $HOME/.ssh
chmod 600 $HOME/.ssh/authorized_keys
chmod g-w $HOME $HOME/.ssh $HOME/.ssh/authorized_keys

6.测试
执行putty,建立一个session命名为ssh,设定ip,协议设为ssh,Connection设定ssh的
auth中,private key的文件选择为puttygen产生的密钥。

连接开始后,要求输入username,远程系统开始public key认证,如果密钥有passphrase
则需要输入,否则直接就登录了。

7.说明
如果服务器端使用的是旧版本的Openssh或者www.ssh.com的产品,那么authorized_keys
的设定有所不同,具体看手册了,我这里就不详述了。

第一次写这种东西,错误难免多多,请大家指正。

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

dennis2作品(对上文的补充):

1. 如果 private key 用 passphrase 加了密,可以运行 pageant.exe。运行后,在 system tray 里面就会出现一个戴着帽子的图标。双击这个图标,就会有一个对话框出现。但击 Add Key,然后选择加了密的 private key,单击 Open 后,就会出现另一个对话框问你要这个 private key 的 passphrase。输入 passphrase 并单击 OK 后,在第一个对话框里面就会出现这个 key 的信息,表示这个 key 已经被加上了。

还没有完。打开 putty,load 要用该 key 的 session,然后在左面的菜单里,选择 connection,然后在右面的 Auto-login username 里面填入你的用户名,在 Connection->SSH->Auth->Private key file for authentication 里面,填入上面的 private key 文件(这步与 cAreLeSs 的第 6 步相同)。再回到session,将所作的变化保存下来。从此以后,这个 session 就不会提示输入 password 或 passphrase 了,包括用 psftp 时也是。

2. 如果你还要从这个机器 (cAreLeSs 贴子中的 RedHat72)再 ssh 到其他的有 sshd 的机器(比如说你先 ssh 到防火墙,再 ssh 到防火墙后面的机器上),在上面提到的 Connection->SSH->Auth 里面将 Allow agent forwarding 打上钩(别忘了保存 session),这样再从 RedHat 上 ssh 到别的机器也不需要输入 password 或 passphrase 了。当然,public key 也需要拷贝到其他机器的 $HOME/.ssh/authorized_keys 里面。做了以上修改后,好像要重新启动 pageant 才行。

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 电视盒子怎么看百度云迅雷99.99下载不完怎么迅雷9怎么关闭右侧 迅网易云音乐怎么上传歌

最新文章 2022支付宝万能福扫福微信迎新春状态怎么设 微信小老虎头像怎么设置 微信ID后面设置小老抖音压岁钱卡怎么获得2022 抖音压岁钱获取方微博隐私保护怎么设置 微博隐私保护功能完善今日头条2022年集卡活动开启时间 今日头条2

人气排行 智学网怎么登录 智学网怎么查分数 智学网统教你怎么写电子邮箱格式?以163和QQ邮箱为例腾讯大王卡用了后悔怎么办 腾讯大王卡值得办缺少或丢失xinput1_3.dll解决方法,xinput1应用程序无法正常启动0xc000007b解决方法快播关闭怎么办?快播不能用了怎么看片将pdf文件转换为word文件的最简单方法如何破解QQ空间密码和权限