ssh私钥登陆提示Server refused our key问的解决办法

问题现象:

在开启Selinux的情况下,使用无密码认证的私钥登陆登陆时,会出现如下错误提示:

Server refused our key

在/var/log/audit/audit.log日志文件下,可以看到如下提示:

type=AVC msg=audit(1371453190.650:21382): avc: denied { read } for pid=2048 comm="sshd" name="authorized_keys" dev=dm-2 ino=393229 scontext=unconfined_u:system_r:sshd_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:home_root_t:s0 tclass=file

问题原因:

生成的~/.ssh/authorized_keys 文件没有selinux上下文属性,导致无法通过Selinux认证,查看该文件属性如下:

[barlowliu@web1 ~]$ ll -Z .ssh/authorized_keys
-rwxr--r--. barlowliu barlowliu ? .ssh/authorized_keys

很多网友在遇到此问题时,都是采用的关闭selinux方式解决问题,但鉴于selinux带来的安全性加强,在一般情况下,不建议关闭selinux。

办法解决:

# restorecon -R -v /home

该命令的作用了恢复/home 目录下所有文件的默认selinux安全上下文属性。

再次查看~/.ssh/authorized_keys文件的selinux安全上下文属性,发现已经改变:

[barlowliu@web1 ~]$ ll -Z ~/.ssh/authorized_keys
-rwxr--r--. barlowliu barlowliu unconfined_u:object_r:user_home_t:s0 /home/barlowliu/.ssh/authorized_keys

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值