Chinaunix首页 | 论坛 | 博客
  • 博客访问: 67614
  • 博文数量: 14
  • 博客积分: 1599
  • 博客等级: 上尉
  • 技术积分: 160
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-13 09:39
文章分类
文章存档

2011年(6)

2010年(4)

2008年(4)

分类: LINUX

2011-11-01 18:40:10

问题:

ssh到一个DomU时候出现密码验证通不过,开始以为是时钟问题导致到AD的Kerbrose认证出现问题,于是用console上去用本地帐户登录,结果发现root口令过期,但是修改口令时候又出现modeul unkonw的错误。

Last login: Tue Nov  1 05:44:54 2011 from 10.xxx.xx.xxx

$ sudo xm console testlink-01
Debian GNU/Linux 5.0 testlink-401 hvc0

testlink-401 login: root
Password:
You are required to change your password immediately (password aged)
Changing password for root.
(current) UNIX password:

Module is unknown

Debian GNU/Linux 5.0 testlink-401 hvc0

testlink-401 login:

分析:

开始想着通过近单用户模式看下,所以搜了下Xen Single user mode,但是发现结果都不太靠谱,而中文关于这个搜索的结果貌似都是一个文章。

后来想着把虚拟磁盘文件挂上看看日志。有一点要提到的就是最好把DomU先shutdown,不然会出现磁盘不一致。

$sudo xm shutdown testlink-01
$sudo mount –o loop testlink-01/disk.img  /mnt/tmp
然后到mount点下的var/log查看auth.log

发现有错误。

Nov  1 06:36:14 testlink-401 sshd[995]: PAM unable to dlopen(/lib/security/pam_c
racklib.so): libcrack.so.2: cannot open shared object file: No such file or dire
ctory

所以初步怀疑是由于系统升级导致某些包丢失造成的。

 

解决:

首先要解决系统登录,然后安装相应的软件包就可以了。

1. root登录

由于密码过期才会调用cracklib,所以修改etc/shadow,将过期信息删除,应该是冒号后面的几个数字部分。

然后console登录。

根据 /lib/security/pam_cracklib.so属于 libpam-cracklib这个包,运行

$sudo apt-get install libpam-cracklib,问题解决。

阅读(1843) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~