使用SSH登录Linux云服务器时提示“requirement "uid >= 1000" not met by user "root"”错误
问题描述
登录Linux云服务器时,输入正确的用户名和密码后,也无法正常登录。该问题出现时,VNC或SSH客户端其中一种方式可以正常登录,或者两种方式均无法正常登录,执行cat /var/log/secure命令查看secure日志时提示如下错误信息。
pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root".
可能原因
PAM相关模块的策略配置,禁止了UID小于1000的用户进行登录。
处理方法
以下操作步骤以CentOS 6.5 64位操作系统为例,其他类型及版本操作系统配置可能有所差异,具体情况请参阅相应操作系统的官方文档。
- 通过VNC或SSH客户端登录Linux云服务器。
- 通过cat命令查看异常登录模式,对应的PAM配置文件,请参考如下信息。
文件
功能说明
/etc/pam.d/login
控制台对应配置文件。例如密码验证、账户锁定和限制登录IP等。
/etc/pam.d/sshd
SSH远程登录的认证信息。
/etc/pam.d/system-auth
系统级别的认证信息,例如密码策略、用户信息和访问控制等。
每个启用PAM的应用程序,在/etc/pam.d目录中都有对应的同名配置文件。例如,login命令的配置文件是/etc/pam.d/login,可以在相应配置文件中配置具体的策略。检查相应配置文件中,是否有类似如下配置信息。
auth required pam_succeed_if.so uid >= 1000
- 使用vi编辑器,修改相应配置文件中的配置,整行删除或在段落前添加#号注释。
- 修改策略配置:
auth required pam_succeed_if.so uid <= 1000
- 取消策略配置:
# auth required pam_succeed_if.so uid >= 1000
- 修改策略配置:
- 重新登录云服务器。