PUTTY默认不支持记住密码,修改版的还是不要用,好在SSH支持证书登陆,我也问了生产环境下的朋友,他们登陆SSH也是用证书.
这里介绍的不是双Linux环境下的SSH证书登陆,而是Windows下用Putty证书登陆至你的Linux服务器/VPS.
目前我用的是Putty中文版,来自GoogleCode的项目:http://code.google.com/p/puttycn/
1.用PuTTY SSH 密钥生成工具puttygen.exe生成密钥.
生成的密钥类型和位数按照默认的就行了,SSH-2 RSA,1024位
生成密钥时你需要在空白区域移动鼠标,以便产生随机数据
点击保存私钥(可以不设置密码保护),不要生成公钥,因为PUTTY生成的公钥OpenSSH无法使用.
2.SSH密码方式登入远端Linux服务器/VPS,创建.ssh/authorized_keys.
mkdir ~/.ssh
vim ~/.ssh/authorized_keys
将puttygen.exe生成的公钥内容粘贴至~/.ssh/authorized_keys.
注:公钥内容就在显示的公钥(P)由OpenSSH认可: 这行字符下面.
至于为什么文件名是authorized_keys,可以在/etc/ssh/sshd_config中找到下面两行
#PubkeyAuthentication yes
#AuthorizedKeysFile .ssh/authorized_keys
3.用SSH证书登陆你的Linux服务器/VPS
Putty→会话:将服务器IP填好
Putty→连接→数据:填好自动登陆用户名( 比如 root )
Putty→连接→SSH→认证:选择认证私钥文件
回到Putty→会话:保存的会话,填个名称保存下吧,下次直接双击名称就可以登录了,赶紧登录吧.
4.为了安全你需要取消SSH的密码认证方式.
vim /etc/ssh/sshd_config
添加下面这行
PasswordAuthentication no
重启SSH服务
service sshd restart
----------------------------------------------------------
注意:如果登陆时,出现 server refused our key 的提示,请按照下面的方法解决:
修改vi /etc/ssh/sshd_config 文件 (按下面设置即可)
RSAAuthentication yes # 启用 RSA 认证(默认是注释掉的,将注释去掉,如果不是yes,改为yes)
PubkeyAuthentication yes # 启用公钥认证(默认是注释掉的,将注释去掉,如果不是yes,改为yes)
PasswordAuthentication no # 禁止密码认证(改为no,默认为yes是用密码认证)
StrictModes no #修改为no,默认为yes.如果不修改用key登陆,可能会出现 server refused our key 的提示。(如果StrictModes为yes必需保证存放公钥的文件夹的拥有者与登陆用户名是相同的).“StrictModes”设置ssh在接收登 录请求之前是否检查用户家目录和rhosts文件的权限和所有权。这通常是必要的,因为新手经常会把自己的目录和文件设成任何人都有写权限。)
另外,设置 authorized_keys的权限为 644 即: chmod 644 ~/.ssh/authorized_keys
之后重新启动ssh服务:/etc/init.d/ssh restart
--------------------------------------------------------------
原文地址:http://www.shocr.com/sshcertificate-putty-linux/
loading