最近在参加一个培训,讲到了秘钥登录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秘钥认证登录,不难吧,快去试试吧。
Xshell实现Windows上传文件到Linux主机 http://www.linuxidc.com/Linux/2015-05/117975.htm
Xshell 登录 CentOS 6.3 中文乱码的解决 http://www.linuxidc.com/Linux/2013-06/86600.htm
VirtualBox4.12文本安装CentOS 5.4以及Xshell连接教程 PDF http://www.linuxidc.com/Linux/2013-06/85575.htm
Xshell连接CentOS6.5 iptables或ls 输出乱码 http://www.linuxidc.com/Linux/2014-06/103725.htm
VMware Linux使用Xshell登陆 http://www.linuxidc.com/Linux/2012-06/62546.htm
使用Xshell密钥认证机制远程登录Linux http://www.linuxidc.com/Linux/2015-03/114947.htm
更多CentOS相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-06/132268.htm