最近在参加一个培训,讲到了秘钥登录CentOS,这个认证方式比用户名密码登录安全,所以各位一定要学会它。我一直使用的是Xshell,其他的终端软件就不去讨论,请自行百度吧,下面就来看看如何使用Xshell实现秘钥认证登录CentOS系统。

打开Xshell,点击 工具->新建用户秘钥生成向导

秘钥类型选择RSA,秘钥长度2048位,下一步

提示你正在生成公钥和私钥对,下一步

给私钥命名和设置密码,下一步

这个就是生成的公钥,保存起来,待会要用,点击完成。

你的私钥,点击关闭

接下来以用户名密码的方式先登录系统,做如下配置:

先确保你在用户家目录里,使用pwd查看,我是root登录,所以在/root下。
再一个就是查看你的家目录下有没有.ssh隐藏目录,有的话直接进入,没有的话新建一个。

 
`mkdir .ssh` #新建.ssh目录
 
`chmod 700.ssh`  #赋予.ssh目录700权限
 
`cd .ssh`  #进入.ssh目录
 
`touch authorized_keys`  #新建一个authorized_keys文件
 
`chmod 600 authorized_keys`  #赋予authorized_keys文件600权限
 
`vi authorized_keys`  #使用vi编辑它

按i键进入编辑模式,把刚才Xshell生成的公钥黏贴进去,保存并退出。

`vi /etc/ssh/sshd_config`   #编辑sshd的配置文件
 

把下面两句前面的#号去掉

PubkeyAuthentication yes
AuthorizedKeysFile.ssh/authorized_keys
 

把yes改成no

PasswordAuthenticationno
 

最后保存并退出。

 
`service sshd restart` #重启sshd服务
 

PS:如果你想禁止root远程登录,就把#PermitRootLogin yes这句去掉#号改成no即可

现在来试试效果吧,输入用户名root

看到了吗?密码输入框变成灰色了,用户秘钥就选择刚才生成的,并输入秘钥的密码,点击确定。

OK!成功实现Xshell秘钥认证登录,不难吧,快去试试吧。

标签: none

添加新评论