云服务器 ECS Linux SSH 无法远程登录问题,SSH 登录时出现如下错误:User root not allowed because not listed in
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
处理办法
SSH 服务相关参数,可以对登录的用户或用户组进行限制。说明如下:
AllowUsers:允许登录的用户白名单。只有该参数标注的用户可以登录。
DenyUsers:拒绝登录的用户黑名单。该参数标注的用户都拒绝登录。
AllowGroups:允许登录的用户组白名单。只有该参数标注的用户组可以登录。
DenyGroups:拒绝登录的用户组黑名单。该参数标注的用户组都拒绝登录。
注意: 拒绝策略优先级高于允许策略。比如:
如果 AllowUsers 和 DenyUsers 参数包含了同一个用户,则拒绝策略优先,所以最终该用户还是无法登录。
如果 AllowUsers 和 DenyGroups 参数包含了同一个用户,则拒绝策略优先,所以最终该用户还是无法登录。
要解决此问题,对前述不同情况,请进行如下配置检查或修改:
通过 管理终端 进入系统。
通过 cat 等指令查看 /etc/ssh/sshd_config 中是否包含类似如下配置:
AllowUsers root test
DenyUsers test
DenyGroups test
AllowGroups root
如果需要修改相关策略配置,在继续之前建议进行文件备份。
使用 vi 等编辑器,修改策略配置,以确保相关用户能够正常登录。或者整个删除或注释(在最开头添加 # 号)整行配置(完全取消用户访问控制):
使用如下指令,重启 SSH 服务使配置生效:
service sshd restart
如果还有问题,可以参阅云服务器 ECS Linux SSH 无法登录问题排查指引做进一步排查分析。