百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>服务器> linux中ssh密钥登录失败解决办法
分享文章到:

linux中ssh密钥登录失败解决办法

发布时间:01/15 来源: 浏览: 关键词:
ssh密钥登录失败这个问题只要把密钥设置正确即可了吧,当然不是这么简单了下面我们来看一篇关于linux中ssh密钥登录失败解决办法吧。


今天我在设置ssh密钥登录的时候,发现这个奇怪的情况,我将我的id_rsa.pub密钥内容拷贝到远程linux主机的A用户的.ssh下的authorized_keys(这个文件我手动建立的)下,但是再次登录时,发现还需要输入密码,额?这不科学!然后我查看了一下远程linux主机的sshd日志 /var/log/secure 发现了如下日志输出内容:

Authentication refused: bad ownership or modes for file /home/sysadmin/.ssh/authorized_keys
意思是我的authorized_keys权限问题,我查看一下该文件权限

[root@Zenoss .ssh]# ll authorized_keys
-rw-rw-r-- 1 sysadmin sysadmin 791  8月 10 09:01 authorized_keys
随后我查看了一下其它服务器通过ssh-copy-id 命令拷贝生成的authorized_keys文件权限

[root@Zenoss .ssh]# ll authorized_keys
-rw------- 1 sysadmin sysadmin 393  8月 10 09:46 authorized_keys
果然权限是不同的,我把authorized_keys文件权限改到600,之后就可以正常密钥登录了。

为了搞清楚这是原因,我查阅了一下官方的文档 http://man.openbsd.org/sshd_config 发现了一个这样的配置参数

StrictModes
Specifies whether sshd(8) should check file modes and ownership of the user’s files and
home directory before accepting login. This is normally desirable because novices
sometimes accidentally leave their directory or files world-writable. The default
is “yes”. Note that this does not apply to ChrootDirectory, whose permissions and
ownership are checked unconditionally.

意思是:sshd在接受登录前检查会检查用户的家目录和文件权限模式,可以通过设置no来关闭检查,但为了安全起见,建议不要更改此选项,配置好家目录和文件权限才是正解!
正常的权限如下:

[root@Zenoss home]# ls -ld sysadmin/
drwx------. 7 sysadmin sysadmin 4096  8月 10 09:46 sysadmin/

[root@Zenoss sysadmin]# ls -ld .ssh/
drwx------. 2 sysadmin sysadmin 4096  8月 10 09:46 .ssh/

[root@Zenoss .ssh]# ls -l authorized_keys
-rw------- 1 sysadmin sysadmin 393  8月 10 09:46 authorized_keys

正常通过ssh-copy-id 命令自动生成的authorized_keys 就是600,就不会出现上述问题了。

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有5人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板