第一步.使用SecureCRT生成公钥/密钥对

使用SecureCRT工具->创建公钥 即可,加密算法选择RSA,因为sshd配置文件中选择了RSA算法

这一步会生成两个文件,默认是IdentityIdentity.pub,其中Identity为私钥,Identity.pub为公钥。这一步中,通行短语可以不输入。不输入的话登陆时不需要输入通行短语。如果输入了,登陆的时候会要求你输入通行短语。

第二步.上传SecureCRT生成的公钥到linux服务器

上传Identity.pub到用户home目录下.ssh文件夹中,一般是用ftp上传.注意上传之前,一定要ASCII格式上传

#cd ~

#mkdir .ssh  #在需要开启ssh连接的用户目录下建立 .ssh目录

#chmod 700 .ssh

#ssh-keygen -i -f .ssh/Identity.pub >>.ssh/authorized_keys(这一步很重要,不然open ssh不认识SecureCRT生成的公钥.)

#chmod 644 ./.ssh/authorized_keys   #同上这一步要设置为644600,生成的authorized_keys文件要属于当前设置用户。

OpenSSH公钥没有使用采用 IETF SECSH 标准,所以和SecureCRT的公钥格式不兼容,需要使用OpenSSH自带的 ssh-keygen 命令转换以后才能被OpenSSH识别。authorized_keys 可以保存多个公钥,所以公钥格式转换导入的时候,应该使用追加符 >> 而不是 >

第三步.修改sshd_config配置文件

vim /etc/ssh/sshd_config #修改ssh配置文件

(1) Protocol 2                               #仅允许使用SSH2

(2) Port 22                                  #使用22端口

(3) PermitRootLogin yes                      #允许root登录

(2) PubkeyAuthentication yes                 #启用公告密钥配对认证方式

(3) AuthorizedKeysFile .ssh/authorized_keys     #设定PublicKey文件路径

(4) RSAAuthentication yes                    #允许RSA密钥

(4) PasswordAuthentication no                #禁止密码验证登录,如果启用的话,OpenSSH RSA认证登录就没有意义了。

第四步.重新加载sshd服务

#/etc/init.d/sshd restart

到此,设置完成。可能通过新建会话来检验,在SecureCRT中新建会话时选择使用公钥认证即可。

本文出自 “IT技术随笔” 博客,请务必保留此出处http://wushuaishuai.blog.51cto.com/3432229/1035342