云服务器密码登录异常
输入用户名root和对应密码登录ECS阿里云服务器,发现permission deny。但密码确实是正确的。
问题排查远程ssh登录无法成功,但可以通过阿里云的在线命令行登录,排查问题。
netstat -ntlp# 例如可以看到sshd相关服务,如果没有LISTEN,运行systemctl start [$Service]开启服务# 如果LISTEN, 可以进一步输入以下命令查看具体状态systemctl status [$Service]
#这里我发现了问题:User root not allowed because shell /usr/local/bin/zsh does not exist。看来是当时改shell的时候改成了一个不存在的,多加了一个local
参考文档:Linux实例启动常见服务并查询端口监听状态的方法
解决办法:# 查看当前环境echo $SHELL# 查看系统有哪些shellcat /etc/shells# 修改环境chsh -s /bin/zsh# 发现了问题;Password: chsh: PAM: Authentication failure# 解决办法:设置修改shell不需要输入密码:将required都用sufficient替换sed -i 's/required/sufficient/' /etc/pam.d/chsh# 再次修改环境chsh -s /bin/zsh
反思:
有问题先查看官方文档中的解决办法。修改shell需谨慎