前言

无法通过 SSH 远程登录的原因有很多种,其中有一种表现是只有 root 用户无法登录,密码正确SSH客户端却提示 Authentication failed (password)

排除密码错误,出现这种问题的原因是 SSH 服务器仅允许 root 用户使用密钥登录或禁止所有用户使用密码登录,根据以下操作可解决问题。

操作步骤

1.登录进入 Shell 界面

通过现场操作服务器(云服务器可通过服务商的控制台操作)登录

2.编辑 SSH 服务器配置文件

nano /etc/ssh/sshd_config

请输入图片描述

查找 PermitRootLogin 配置项,如果前面有 # 号需要删除以取消注释,将参数值 prohibit-password 修改为 yes

PermitRootLogin yes

修改前:

请输入图片描述

修改后:

请输入图片描述

查找 PasswordAuthentication 配置项,将参数值修改为 yes,或者在前面添加 # 号注释代码。

Snipaste_2023-10-10_01-29-44.png保存修改并退出(保存:Ctrl+O,退出:Ctrl+X)

注意:退出后 Shell 界面可能还会显示 nano 编辑器,但实际已经退出,留意底部是否有光标闪动可以判断。

3.重启 SSH 服务器

systemctl restart sshd

Snipaste_2023-10-10_01-25-45.png

完成

客户端尝试连接服务器,现在应该可以登录了~

Last modification:October 10, 2023
If you think my article is useful to you, please feel free to appreciate