开发者社区 问答 正文

不能在阿里云自带的远程连接页面里登录root账号

已经按照提示查看过./etc/ssh/ssdh_config,发现默认的PermitRootLogin就是yes,但是还是登录不了。ssh.png

展开
收起
游客cy5qrqv6hrjds 2020-06-15 22:19:45 621 分享 版权
阿里云 AI 助理回答

遇到您描述的问题,即使/etc/ssh/sshd_config中的PermitRootLogin已设置为yes,仍然无法通过root用户登录SSH,可以按照以下步骤进一步排查和解决:

  1. 检查密码认证是否启用: 确认/etc/ssh/sshd_config文件中PasswordAuthentication设置是否为yes。如果设置为no,则需要改为yes以允许密码认证,并重启SSH服务:

    sudo sed -i 's/^PasswordAuthentication no$/PasswordAuthentication yes/' /etc/ssh/sshd_config
    sudo systemctl restart sshd
    
  2. SELinux状态检查与调整: 执行命令查看secure日志,确认是否有SELinux相关的错误信息:

    cat /var/log/secure
    

    如果发现有如error: Could not get shadow information for root.的记录,说明可能因SELinux导致登录失败。您可以选择临时或永久关闭SELinux服务来尝试解决问题。

    • 临时关闭SELinux:
      setenforce 0
      
    • 永久关闭(谨慎操作):
      sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
      

      随后重启实例使更改生效。

  3. 密钥对验证问题: 确保没有误将SSH配置为仅允许密钥对验证,而实际使用密码尝试登录。检查PubkeyAuthentication设置,确保未禁用密码登录作为唯一验证方式。

  4. 用户权限与家目录问题

    • 确认root用户的家目录(/root)权限正确,通常应为700。
    • 检查.ssh目录及其内部文件(特别是authorized_keys)的权限是否符合要求,.ssh目录应为700,authorized_keys为600。
  5. 防火墙与安全组规则: 确认服务器的防火墙及云服务提供商的安全组规则没有阻止SSH端口(默认22)的入站连接。

  6. 系统日志分析: 查看/var/log/auth.log/var/log/secure日志文件,寻找关于登录失败的具体原因,这可能会提供更详细的错误信息帮助定位问题。

完成上述步骤后,重试SSH登录。如果问题依旧存在,建议考虑是否存在其他系统级安全软件或策略限制了SSH访问,或者联系您的云服务提供商获取进一步的技术支持。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答分类:
问答地址: