Chinaunix首页 | 论坛 | 博客
  • 博客访问: 171504
  • 博文数量: 33
  • 博客积分: 2037
  • 博客等级: 大尉
  • 技术积分: 365
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-24 20:29
文章分类
文章存档

2011年(1)

2010年(2)

2009年(21)

2008年(9)

我的朋友

分类:

2009-06-22 17:16:33

现象:

一个NIS环境master serverSolaris 9clientSolaris 8Solaris 9Solaris 10的机器,最近新加了一些Linux/CentOS系统的clientNIS中,出现了一个问题:

Linuxclient上登录了NIS里的账号后,用passwd命令对该账号进行密码修改,之后发现这些账号在Solaris 8的机器上无法登陆,输入正确的密码后提示Login incorrect,但是在Solaris 910以及Linux的机器上登录都是正常的。

后来我去master 上看了下shadow文件,发现修改过密码的账户其密码散列变长了,
原来是:user:kOyapkBQBYG8I:14383::::::
变成了:user:$1$FF60WEDx$82x11MJbuwcQclmASqsmal:14383::::::

我清空密码散列,重置密码,甚至删除该用户重新创建,都不能在Solaris 8上登录,只要用passwd对该用户设置了密码,散列长度就会变成长的那种,变不回短的了。


原因:

Solaris中对密码的加密方式默认是DES,而Linux中默认采用MD5方式加密,这就造成了在shadow中的密码散列不一样。

 

Solaris 9以及之后的版本中,系统支持采用MD5加密的密码散列,但在Solaris 8和之前版本中,无法支持,所以造成了Solaris 8上登录不了,Solaris 910上却登录正常的情况。

 

 

解决办法:

Linux上以root身份运行命令

authconfig --disablemd5 --useshadow --kickstart

禁用MD5散列,之后在Linux上用passwd命令重置下用户密码。

 

回到master server上,查看shadow文件,可以看到密码变成DES加密的散列,也就是变短了,这个时候再登录Solaris 8的机器,就可以正常登录了。

 

还有个说法是在Linux上可以使用yppasswd命令来重置密码,因为yppasswd是采用的DES加密,但是我试了却不行,可能与不同的Linux系统有关。

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