记一次centos root密码错误的事件

事件原因:上周改过服务器密码,今天到了现场后,同事反馈服务器ssh登录不上,提示密码错误。
处理过程:首先将所有可能的密码试了一遍,发现均不能登录。因此上网查资料“centos root密码忘记”,通过资料可通过单用户模式进入系统进行密码的修改。所以按照网上的步骤以单用户模式进入系统,详细如下:
一、修改root密码。
1.在开机启动的时候快速按键盘上的“E”键 或者“ESC”键(如果做不到精准快速可以在启动前一直按着或者不停的按),会进入如下界面。如果你的有多个操作系统就会出现多个内核。
2.选择要进入的系统,按“E”键(在启动之前编辑命令)。一般选择kernel开头的。
3.第二步按E键进入后,在rhgb quiet 后面输入空格1或者空格“single”,按enter键保存。
4.此时又回到GRUB界面。
5.这时,按“B”键启动系统。
6.进入系统后通过命令passwd进行密码的修改,修改完成后,重启系统。

修改密码后,仍然不能登录。依旧通过以上命令使用单用户模式进入系统,并查看/var/log/secure日志内容,发现有以下内容:

pam unable to dlopen(xxxxxxxxxxxxxxxxxxxxxxxxxxx) cannot open shared object file: No such file or directory

通过以上日志分析,应该是上周强制删除过某软件,因此修改pam文件。
二、修改pam.d/login文件。
1.vi /etc/pam.d/login进入文件后,将第一行读取该软件的命令注释,并保存退出。
2.尝试登陆,登陆成功。

登陆成功后,使用ssh远程登录,依旧报用户名和密码错误。继续排查和分析/var/log/secure日志,发现依旧报错:

sshd  pam unable to dlopen(xxxxxxxxxxxxxxxxxxxxxxxxxxx) cannot open shared object file: No such file or directory

分析可能是ssh登录时依旧会读取某软件,尝试在/etc/pam.d查看是否有sshd文件,果然存在该文件,因此参考第二步进行修改sshd文件。
三、修改pam.d/sshd文件。
1.vi /etc/pam.d/sshd,修改方法参考第二步。

至此,登录成功。
事件总结
1、本次事件的原因就是强制删除某软件的文件夹所致,因此在后续卸载某软件时还是不要强制删除目录。
2、出现问题后,报错的提示信息不一定就是真实的原因,还是要通过日志分析具体的原因。

你可能感兴趣的:(centos)