最近更新时间:2026-08-26 11:52:24
本文介绍云服务器登录异常的常见表现、原因及排查方法,涵盖 login 界面无限循环与 pam.d 安全模块配置两类典型问题。阅读后,您能够定位并修复因资源限制或认证配置错误导致的登录失败。
在账号密码正确的情况下,SSH 远程登录成功后立即退出。
在账号密码错误时,系统正常提示密码错误。
在控制台 VNC 登录时,输入错误密码会持续报错,输入正确密码后自动返回 login 界面。
在账号密码正确的情况下,SSH 与 VNC 登录状态不一致,或两者均无法登录。
/etc/security/limits.conf 文件中的 nofile 等资源限制值设置过大,或 /etc/security/limits.d/ 目录下存在自定义配置文件限制了登录。
/etc/pam.d/sshd、/etc/pam.d/login、/etc/pam.d/system-auth 等 PAM 认证模块配置文件被篡改或添加了额外的访问控制规则。
云服务器进入单用户模式。
执行以下命令,查看安全登录日志。若日志中出现大量 Could not set limit for ‘nofile’:Operation not permitted`等 pam_limits`相关报错,则怀疑为 /etc/security/limits.conf文件配置异常。
cat /var/log/secure执行如下命令,查看相应文件,确认文件中的如下图中的两个参数值是否过大,正常值为 65535。
cat /etc/security/limits.conf若该文件配置正确但问题仍存在,请检查 /etc/security/limits.d/ 目录下是否存在自定义文件限制特定用户登录。
使用 vim 编辑 /etc/security/limits.conf,将异常参数值修改为 65535。
强制重启云服务器。
若仅 SSH 登录异常,请参考 SSH 远程连接问题 排查。
若问题不在 SSH 配置本身,则继续检查 PAM 认证模块。
登录系统后,对比以下三个文件的当前内容与标准镜像中的原始配置:
/etc/pam.d/sshd
/etc/pam.d/login
/etc/pam.d/system-auth
若发现文件曾被修改,将其恢复为标准镜像对应配置即可。
编辑 /etc/pam.d/sshd,在 auth 的第一行之前添加访问控制信息。
在 /etc/pam.d/ 目录下创建 denyuser 文件,并将 root 写入该文件。
测试使用 root 账号通过 SSH 远程登录云服务器,验证拒绝效果。
将 /etc/security/limits.conf 或 /etc/security/limits.d/ 下自定义配置中的资源限制值修正为合理范围(如 65535),并重启云服务器。
将 /etc/pam.d/sshd、/etc/pam.d/login 和 /etc/pam.d/system-auth 配置文件恢复为标准镜像的原始内容,或移除其中额外添加的访问控制规则。
/etc/security/limits.conf 是 Linux PAM 中 pam_limits.so 的配置文件,仅对单个会话生效,用于限制用户对系统资源的使用。
/etc/security/limits.d/ 目录下的文件格式与 limits.conf 相同,但拥有更高优先级。系统默认该目录下无 root.conf 文件,若存在,则可能为自定义的限制策略。
如以上信息无法解决您的问题,请收集以下信息提交客服工单:
云服务器实例 ID,以及对应云服务器的 /var/log/secure 日志(如果无法正常登录进系统,此时需要进入单用户收集相关日志,提供对应截图)。
纯净模式
