让服务器使用密钥

1,  选择你所使用的用户,例如yunwei

 

2,  运行密码生成器,随机生成16位密码,应该包含至少三种字符集

 

 

3, 运行命令ssh-keygen -t rsa -b 4096

 

4,  进入密钥存放目录运行mv id_rsa* ../ 讲公私钥移动至上级目录,拷贝到本地后删除服务器上生成的公私钥

5,  查看公钥内容,并拷贝

 

6,  进入用户目录.ssh中执行vim authorized_keys而后粘贴上一步中拷贝公钥的内容

 

7,  将私钥导入到xshell中

 

8,  在用户身份验证页面选择已经导入过的密钥,并输入密钥库密码,确认保存即可链接

 

9,  关闭服务器密码验证方式

vim /etc/ssh/sshd_config

   RSAAuthentication yes           #这行是开启RSA加密功能

   PubkeyAuthentication yes         #这行是开启公钥验证功能

   AuthorizedKeysFile      .ssh/authorized_keys   #这是这定公钥文件的保存位置以及名称

           PasswordAuthentication no       # 关闭密码登录方式

10,运行service sshd restart

 

注:Xshell密钥普通用户登录失败,显示“xshell所选用户密钥未在主机上注册”

需要去修改.ssh目录的权限

Chmod  -R  700(go-rwx)  .ssh

sshd为了安全,对属主的目录和文件权限有所要求。如果权限不对,则ssh的免密码登陆不生效。

.ssh目录权限一般为755或者700

切换成普通用户要把密钥放在普通用户家目录而不是root家目录

注意关闭selinux

原文地址:https://www.cnblogs.com/changbo/p/8477748.html