1. 问题描述
一台服务器可以使用root账号使用SSH远程登录,但不能使用控制台或者使用显示器登录到操作系统中。
当从控制台登录时,一直提示:Login incorrect
使用SSH可以正常登录到服务器,并且还可以看到有从控制台登录失败的提示信息:
当前Linux系统版本:Centos 7.6。
2. 排查问题
2.1 查看登录日志
使用SSH登录到服务器后,查看一下用户登录日志。
tail /var/log/secure
`#日志文件中提示信息如下``Feb 28 09:58:45 localhost login: pam_succeed_if(login:auth): requirement "uid >= 1000" not met by user "root"``Feb 28 09:58:47 localhost login: FAILED LOGIN 1 FROM tty1 FOR root, Authentication failure`
2.2 查看认证文件
使用控制台或者显示器登录操作系统时,操作系统会读取/etc/pam.d/login文件,查看登录验证模块,通过与正常的服务器进行对比,发现该服务器多了一行:
auth required pam_succeed_if.so user != root quiet
该行表示不允许root用户从控制台登录。
3. 处理办法
将"/etc/pam.d/login"文件中多出来的行删除即可。
4. 删除后登录测试
删除配置后,从控制台和SSH都可以登录到操作系统中:
5. 总结
Linux系统还真的不简单,特别是权限划分这一块,非常复杂但也非常详细。
在使用Linux系统的过程中,如果发现问题,首先排查日志,一般日志都会有错误提示,我们再根据错误提示查找相应的问题并处理。