网络安全 - Putty之public key ssh认证入门
Putty之public key ssh认证入门
2004-04-23 15:18 pm来自:Linux文档
现载:Www.8s8s.coM
地址:无名
1.工作平台客户端:Win2kEn Sp3 ,Putty Beta 0.53 服务器:RedHat72,
OpenSSH_3.4p1
2.Putty 简介一个免费小巧的Win32 平台下的ssh ,telnet客户端。它的主
程序只有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 的设定有所不同,具体看手册了,我这里就不详述了。