【坑】Centos ssh登录~/.ssh/权限踩坑
背景
之前使用centos按照教程配置ssh
1.上传公钥到~\.ssh\authorized_keys
2.修改/etc/ssh/sshd_config
# 开启公钥认证
PubkeyAuthentication yes
# 指定公钥key的文件
AuthorizedKeysFile .ssh/authorized_keys
3.重启ssdsystemctl restart sshd
但一直没有办法登录,想不懂。。。(其实是.ssh
文件夹权限问题)
排查解决步骤
查看sshd进程状态
systemctl status sshd
发现sshd正常,但似乎有日志,这里应该就是切入口
排查系统有用日志
tail /var/log/secure
,发现报错日志Authentication refused: bad ownership or modes for directory
百度后发现~.ssh
的文件夹只能给当前用户权限,太宽松的权限不符合要求。
由于当前用户是新用户,home目录下并没有
.ssh
文件夹,直接mkdir创建出来的,权限不太宽松了,导致一个坑的出现。之前都是会生成自己的公私钥,并无直接创建.ssh文件夹的经历,以至于相当于
修改命令
使用命令重新修改文件、文件夹权限
chmod 700 ~/.ssh/
chmod 600 ~/.ssh/id_rsa
chmod 644 ~/.ssh/id_rsa.pub
chmod 644 ~/.ssh/authorized_keys
重新登录后ok
总结
- 学会查看Linux的日志,是排错的关键。定位步骤:日志>百度。很多坑如果会看日志,都不是问题