在Linux中从潜藏密码迁移至tcb
潜藏密码作为Linux产品的既定事实标准已经有好多年了,md5密码的运用亦是如此.但是,运用传统的潜藏密码要领也有不足之处,甚至md5也不像以前那么安全了. 潜藏密码文件的一个缺点就是,任意一个须要查询个别潜藏密码(如您的密码)的使用程序也可以看到其他人的潜藏密码,这也就意味着任意一个可以读取潜藏文件的恶意工具都能够获得别人的潜藏密码. 除了潜藏,还有一个叫做tcb的可供选择的办法,它由Openwall Project编写,可以从tcb主页上获取.迁移到tcb虽然须要做一些工作,但是相当直接.只有Openwall GNU/*/Linux、ALT Linux、和Annvix 直接支持tcb.要为您选择的流通产品获得tcb支持,您重新编辑多个程序,打上补丁. 从tcb站点上,您可以下载tcb程序,并将它和有关的pam_tcb和nss_tcb库一起执行 编辑.您还须要打上支持crypt_blowfish的glibc补丁(像SUSE一样的有些产品可能已经可以支持blowfish密码,就不须要再打补丁了). 也许您还想为shadow-utils组打上补丁;取决于您的产品所采用的shadow-utils的版本,您可以从Openwall CVS为shadow-utils 4.0.4.1或从Annvix SVN储存库为4.0.12获得所需的补丁.像adduser、chage等这样的工具中的Shadow-utils须要被打上补丁,提供tcb支持.在tcb页面上有可以打glibc补丁的最新crypt_blowfish的链接. 一旦这些先决条件都满足了,且tcb编译和安装以后,只需基本地将/etc/pam.d/*文件中的所有调用都替换为pam_unix.so和/或pam_pwdb.so就行了.然后就可以像列表A中那样运用 pam_tcb.so了. 列表Aauth required pam_env.soauthrequiredpam_tcb.so shadow fork nullok prefix=$2a$ count=8account requiredpam_tcb.so shadow forkpassword requiredpam_passwdqc.so min=disabled,12,8,6,5 max=40 passphrase=3 match=4 similar=deny random=42 enforce=everyone retry=3password requiredpam_tcb.so use_authtok shadow write_to=tcb fork nullok prefix=$2a$ count=8session requiredpam_limits.sosession requiredpam_tcb.so 如果您希望继续运用 md5密码,而不是blowfish密码,将prefix=$2a$ count=8一条从密码行移除,同时,您还须要修改/etc/nsswitch.conf,让潜藏行改读: shadow: tcb nisplus nis passwd程序须要sgid潜藏,而不是suid根,并且/etc/login.defs中要包括USE_TCB yes.这些完成以后,您就可以执行/sbin/tcb_convert程序,将潜藏文件转换成为适当的单一用户文件了,这些文件将储存在/etc/tcb/中.做完这些之后,移除/etc/shadow和/etc/shadow-文件,然后您的系统就可以运用 tcb了. 获得tcb支持可能须要花点功夫,但遗憾的是更多的产品没有提供支持,它们既没有本地支持也没有通过插件来支持.运用 tcb,连同blowfish密码一起,会为您的Linux产品提供一个安全得多的密码系统.
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |