方法一:主机上先生成ssh密钥
1.一般不在root用户下生成密钥 先切换用户
su - chuxl #如果身份是root则切换至chuxl(根据自己实际的用户名)
passwd #修改默认口令
ssh-keygen -b 1024 -t rsa #重新生成ssh的密钥
移动文件
mv .ssh/id_rsa.pub .ssh/authorized_keys
修改文件权限
chmod 600 .ssh/authorized_keys
#打开id_rsa文件COPY出文本保存至本机
vi .ssh/id_rsa
将白框内容复制后保存至本机
删除该文件(提高安全系数)
rm .ssh/id_rsa
2. 打开puttygen
载入你存入本机的密钥
输入密码即可生成对应的私有密钥
保存为***.ppk文件即可
3.sshd 相关参数配置
vi /etc/ssh/sshd_config
修改一下内容
PermitRootLogin no # 禁止root用户登陆
StrictModes yes # 检查密钥的用户和权限是否正确,默认打开的
RSAAuthentication yes # 启用 RSA 认证
AuthorizedKeysFile .ssh/authorized_keys # 验证公钥的存放路径
PubkeyAuthentication yes # 启用公钥认证
PasswordAuthentication no # 禁止密码认证,默认是打开的。
4.关闭Selinux
如果不关闭Selinux,使用密钥登录会提示“Server refused our key”
关闭selinux有两种方法:
暂时关闭selinux防火墙,下次重启后selinux还会开启。
#setenforce 0
#getenforce #查看临时关闭selinux的状态命令
永久关闭selinux
#vi /etc/selinux/config #修改selinux的配置文件
更改“SELINUX=enforcing”为 SELINUX=disabled 保存退出。
[root@localhost ~]# /usr/sbin/sestatus -v #查看selinux的状态命令
SELinux status: disabled
5.关闭防火墙
[root@localhost ~]# iptables -F #清空防火墙配置
[root@localhost ~]# /etc/init.d/iptables save #清空防火墙配置后,记得保存
iptables:将防火墙规则保存到 /etc/sysconfig/iptables: [确定]
6.一切准备就绪 使用putty链接客户机
点击open 即可进入以下界面即可
方法二:是在puttygen 上生成密钥 然后上传至主机 具体操作方法见http://www.jb51.net/article/70036.htm