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


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

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


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


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

#cd ~

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

#chmod 700 .ssh

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

#chmod 644 ./.ssh/authorized_keys #同上这一步要设置为644或600,生成的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服务