使用正确的密码无法登录Linux系统的ECS实例
使用SSH连接Linux系统的ECS实例时,即便输入了正确的密码,也无法正常登录。该问题出现时,使用管理终端或SSH登录客户端时,可能存在一种方式无法正常登录。同时,secure日志中出现类似如下错误信息。 - sshd[1199]: pam_listfile(sshd:auth): Refused user root for service sshd
- sshd[1199]: Failed password for root from 192.X.X.1 port 22 ssh2
- sshd[1204]: Connection closed by 192.X.X.2
问题原因PAM模块(pam_listfile.so)相关访问控制策略导致用户登录失败。
解决方案PAM模块可用于Linux系统的访问控制。要解决此问题,请进行如下配置检查。本文相关Linux配置及说明已在CentOS 6.5 64位操作系统中进行过测试。其它操作系统版本配置可能有所差异,具体情况请参阅相应操作系统官方文档。 - 登录实例,通过cat等命令查看对应的PAM配置文件,配置文件说明如下。
文件 | 功能说明 | /etc/pam.d/login | 控制台(管理终端)对应配置文件 | /etc/pam.d/sshd | SSH登录对应配置文件 | /etc/pam.d/system-auth | 系统全局配置文件 | 确认存在类似如下配置信息。- auth required pam_listfile.so item=user sense=allow file=/etc/ssh/whitelist onerr=fail
复制代码
- 相关策略可以提高服务器的安全性。请用户基于安全性和易用性权衡后,再确定是否需要修改相关配置,在修改之前建议进行文件备份。相关策略参数说明如下。
- item:设置访问控制的对象类型,可选值包括tty、user、rhost、ruser、group和shell。
- sense:在配置文件中找到符合条件项目的控制方式。可选值为allow和deny。allow代表白名单方式,而deny代表黑名单方式。
- file:用于指定配置文件的全路径名称。
- onerr:定义了出现错误时的缺省返回值,比如无法打开配置文件的错误。
- 使用vi等编辑器,删除策略配置,也可以注释策略配置,如下所示,在策略配置前添加 #。
- #auth required pam_listfile.so item=user sense=allow file=/etc/ssh/whitelist onerr=fail
复制代码
- 然后重新登录服务器,确认无异常即可。
更多信息
|