远程连接Linux云服务器报错:The account is locked due to 3 failed logins
问题描述
远程连接Linux云服务器时,提示:The account is locked due to 3 failed logins。

可能原因
远程登录Linux云服务器时,连续多次输入错误密码,触发系统PAM认证模块策略限制,导致用户被锁定,无法成功登录。
排查思路
- (可选)解锁root用户。
若root用户被锁定,则需参考本步骤解锁root用户。否则跳过本步骤。
- 使用单用户模式登录ECS。
具体操作,请参见Linux云服务器如何进入单用户模式?。
- 依次执行以下命令,解锁root用户。
pam_tally2 -u root #查看root用户登录密码连续输入错误次数。
pam_tally2 -u root -r #清除root用户密码连续输入错误次数。
authconfig --disableldap --update #更新PAM安全认证记录。
- 执行以下命令,重启ECS,使修改生效。
- 使用单用户模式登录ECS。
- 使用root用户登录弹性云服务器。
详细操作,请参见通过VNC登录Linux ECS。
- 执行以下命令,查看PAM配置文件中是否存在认证限制。
pam_tally2 -u root #查看root用户登录密码连续输入错误次数。
pam_tally2 -u root -r #清除root用户密码连续输入错误次数。
authconfig --disableldap --update #更新PAM安全认证记录。
例如,当系统返回如下信息时,表示普通用户和root用户连续三次输入错误密码,30秒后才能再次登录Linux实例。
图2 返回结果
处理方法
- 方法一:等待PAM设置的冻结时长(例如50秒),待系统解冻账户后,再重新登录实例。
- 方法二:修改配置文件。
下文以修改“/etc/pam.d/system-auth”为例进行说明,其他配置文件修改方法类似。
- 执行以下命令,打开“/etc/pam.d/system-auth”配置文件。
- 按“i”进入编辑模式。
- 根据业务需要,注释、修改或删除该配置。
配置文件中,该配置信息表示普通用户和root用户连续三次输入错误密码会被锁定,30秒后才能解锁:
auth required pam_tally2.so deny=3 unlock_time=30 even_deny_root root_unlock_time=30
注释该配置信息:
#auth required pam_tally2.so deny=3 unlock_time=30 even_deny_root root_unlock_time=30 #注释后代码
配置解释:
- deny=3:表示设置普通用户和root用户连续错误登录的最大次数,超过最大次数,则锁定该用户。
- unlock_time=30:表示设定普通用户锁定后,多少时间后解锁,单位是秒。
- even_deny_root:表示也限制root用户。
- root_unlock_time=30:表示设定root用户锁定后,多少时间后解锁,单位是秒。