当前位置: 首页 > news >正文

虚拟机远程连接报错解决办法

SSH 远程连接 root 用户认证失败问题解决总结

一、问题现象

在使用 ssh root@192.168.163.130 命令尝试从 Ubuntu 主机(root@Ubuntu)远程连接目标 Ubuntu 主机(192.168.163.130)的 root 用户时,多次输入密码后均提示 Permission denied, please try again/var/log/auth.log 日志显示 authentication failurePAM: Authentication failure for root 等认证失败相关信息 。

二、排查与解决步骤

(一)基础信息确认

  1. 网络连通性:在发起连接的 root@Ubuntu 主机,通过 ping 192.168.163.130 测试与目标主机网络连通性,确保网络正常,无丢包等情况,排除网络物理层面的连接问题 。
  2. 目标主机 root 密码:在目标主机本地(若可操作,如通过物理控制台或已有其他用户登录权限),使用 passwd 命令验证或修改 root 密码,保证输入的密码为目标主机 root 用户的正确密码 。例如,若能本地登录目标主机,执行 passwd 重新设置并牢记 root 密码 。

(二)目标主机服务端配置检查

  1. 允许 root 密码登录配置

    • 登录目标主机(若有其他用户权限,可通过 su - 其他用户 结合 sudo 提权;或物理操作目标主机直接登录),编辑 SSH 服务配置文件

       sudo nano /etc/ssh/sshd_config#或sudo vi /etc/ssh/sshd_config
      
    • 查找 PermitRootLogin 配置项,若其值为 prohibit-passwordno ,将其修改为 yes

      prohibit-password yes
      

      以允许 root 用户通过密码方式登录;同时查找 PasswordAuthentication 配置项,若值为 no ,修改为 yes ,开启密码验证功能 ,修改后,保存并退出编辑器。

      PasswordAuthentication yes
      
    • 重启 SSH 服务使配置生效,命令

      sudo systemctl restart sshd
      #或
      sudo service ssh restart
      
  2. 检查用户限制配置:在目标主机的 sshd_config 配置文件中,查看是否存在 DenyUsers root 这类禁止 root 用户登录的配置,若有则注释掉(行前加 # ),之后重启 sshd 服务 。

  3. PAM 策略检查:查看目标主机 PAM 配置文件 /etc/pam.d/sshd ,检查是否有禁止 root 远程登录的策略,如 auth required pam_succeed_if.so user != root quiet ,若存在此类限制,注释或删除相关配置行,再重启 sshd 服务 。

    # 禁止 root 远程登录(常见于安全加固)
    auth    required    pam_succeed_if.so user != root quiet#重启sshd
    sudo systemctl restart sshd
    

(三)客户端侧排查

  1. 避免密钥干扰:若客户端(root@Ubuntu 主机 )之前为目标主机配置过 SSH 密钥,可能优先进行密钥验证而非密码验证,可强制指定密码方式连接,命令

    ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no root@192.168.163.130
    
  2. 清理 known_hosts 缓存:客户端 ~/.ssh/known_hosts 文件中可能存在影响连接的旧记录,找到对应目标主机(192.168.163.130 )的条目并删除,之后重新尝试连接 。

(四)日志辅助定位

在目标主机实时查看认证日志辅助排查,命令

sudo tail -f /var/log/auth.log

然后在客户端重新发起 ssh 连接,根据日志中报错信息(如 Failed password for root from ... 提示密码错误 、Permission denied (publickey,password) 结合服务端配置排查等 )进一步精准定位和解决问题 。

三、最终解决结果

通过上述一系列步骤,包括确认网络连通性、保证目标主机 root 密码正确、检查并修改 sshd_config 配置(确保允许 root 密码登录、密码验证开启等 )、排查 PAM 策略和客户端侧干扰、利用日志辅助定位等操作,最终解决了 root 用户 SSH 密码登录失败问题,可成功通过 ssh root@192.168.163.130 命令,使用正确密码连接到目标主机 。

http://www.lryc.cn/news/615173.html

相关文章:

  • 「iOS」————分类与扩展
  • 书生浦语第五期-L1G4-InternLM 论文分类微调实践(XTuner 版)
  • 代码随想录day60图论10
  • 快速使用selenium+java案例
  • Nginx 性能优化与动态内容处理
  • TOMCAT笔记
  • 七、《Serverless架构:按毫秒计费的成本革命》--从新浪AI推理平台50%效能提升看无服务器本质
  • 前端如何安全存储 API 密钥 —— 两种实用方案
  • CosyVoice 语音合成模型性能优化实战:从 CPU 瓶颈到 GPU 加速的完整解决方案
  • electron多进程设计
  • K8s-pod控制器
  • Baumer高防护相机如何通过YoloV8深度学习模型实现输电线路塔电缆检测分割(C#代码UI界面版)
  • DAY 37 作业(补)
  • 99-基于Python的京东手机数据分析及预测系统
  • 【工具变量】全国省级农业保险保费收入与赔付支出数据更新(2001-2023年)
  • 爬虫攻防战:反爬与反反爬全解析
  • react-window
  • 【Datawhale AI夏令营】基于多模态RAG的企业财报问答系统
  • Arduino系列教程:点亮一个LED灯
  • 【工具】Python多环境管理
  • Red Hat Enterprise Linux 7.9安装Oracle 11.2.0.4单实例数据库-图文详解
  • Python训练营打卡Day27-类的定义和方法
  • 线程池多反应堆服务器webserver(c++)
  • 算法篇----模拟
  • Linux的软件防火墙iptables
  • QML 鼠标穿透
  • 从免费到盈利:Coze智能体1小时封装变现全流程指南——井云科技
  • 云服务器--阿里云OSS(2)【Springboot使用阿里云OSS】
  • 81 keil仿真调试记录
  • C++11中的移动语义