本文介绍通过SSH客户端登录Linux服务器时,提示“Permission denied, please try again”错误的解决方案。
问题描述
通过本地SSH客户端登录轻云互联Linux系统的服务器时,即便输入了正确的密码,出现了类似如下的错误信息。
-
Permission denied, please try again.
-
SSH服务器拒绝了密码,请再试一次。
问题原因
导致该问题可能有以下原因:
-
服务器内禁用root用户登录:SSH服务对应配置文件
/etc/ssh/sshd_config
中的参数PasswordAuthentication
被设置为no
,表示禁止以密码方式登录服务器,需要修改为yes
。您可以参考禁止root用户登录引起问题的解决方法解决。 -
Linux系统启用了SELinux服务,导致root用户和普通用户无法登录
执行
cat /var/log/secure
查看secure日志,若日志中包含error: Could not get shadow infromation for root.
表示是启用了SELinux服务导致,您可以参考SELinux服务引起问题的解决方法解决。
禁止root用户登录引起问题的解决方法
-
使用轻云官网中服务器面板内控制台VNC方式登录机器实例
-
查看
/etc/ssh/sshd_config
的参数PasswordAuthentication
配置是否有误。cat /etc/ssh/sshd_config
如下图所示,
PasswordAuthentication
参数设置为no
,表示禁止以密码方式登录,需要修改为yes
。 -
修改
PasswordAuthentication
的参数PasswordAuthentication
为no
。-
打开SSH配置文件。
vi /etc/ssh/sshd_config
-
将
PasswordAuthentication no
修改为PasswordAuthentication yes
。
-
-
按Esc键,输入
:wq
保存修改。 -
执行如下命令,重启SSH服务。
systemctl restart sshd.service
SELinux服务引起问题的解决方法
您可以根据实际情况,选择临时或永久关闭SELinux服务解决SSH连接异常问题。
检查SELinux服务状态
-
使用轻云官网中服务器面板内控制台VNC方式登录机器实例
-
执行如下命令,查看当前SELinux服务状态。
/usr/sbin/sestatus -v
系统显示类似如下。
SELinux status: enabled
SELinux status参数值说明如下:
-
enabled:SELinux服务处于开启状态。
-
disabled:SELinux服务处于关闭状态。
-
临时关闭SELinux服务
临时关闭SELinux服务重启后会失效。
-
使用SSH终端工具连接您的服务器或者使用面板内控制台VNC方式登录机器实例。
-
执行如下命令,临时关闭SELinux。
setenforce 0
永久关闭SELinux服务
-
使用SSH终端工具连接您的服务器或者使用面板内控制台VNC方式登录机器实例。
-
执行如下命令,永久关闭SELinux服务。
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
此命令只适用当前SELinux服务为
enforcing
状态时使用。 -
重启服务器使设置生效,输入reboot指令重启