⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00000001.htm

📁 一份很好的linux入门资料
💻 HTM
字号:
<HTML><HEAD>  <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人:&nbsp;<A HREF="mailto:HYD.bbs@bbs.ee.nthu.edu.tw.">HYD.bbs@bbs.ee.nthu.edu.tw.</A>&nbsp;(追风男孩),&nbsp;信区:&nbsp;linux&nbsp;<BR>标&nbsp;&nbsp;题:&nbsp;如何安装&nbsp;shadow&nbsp;<BR>发信站:&nbsp;☆清华电机☆&nbsp;&nbsp;Thu&nbsp;Jun&nbsp;&nbsp;1&nbsp;23:29:32&nbsp;1995&nbsp;<BR>转信站:&nbsp;无&nbsp;(post&nbsp;digest)&nbsp;<BR>&nbsp;<BR>★&nbsp;您将可以在&nbsp;linux.csie.nctu.edu.tw&nbsp;的&nbsp;gopher&nbsp;server&nbsp;中取得这份文件&nbsp;!&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0.&nbsp;前言&nbsp;:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;真希望&nbsp;shadow&nbsp;password&nbsp;会变成&nbsp;Linux&nbsp;Distribution&nbsp;的&nbsp;default,&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;那就可以省掉很多很多麻烦了....&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.&nbsp;shadow&nbsp;的优缺&nbsp;:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shadow&nbsp;将&nbsp;user&nbsp;真正编码後的密码放在&nbsp;/etc/shadow&nbsp;中,&nbsp;而在原&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/etc/passwd&nbsp;中密码栏为一&nbsp;*,&nbsp;而&nbsp;/etc/shadow&nbsp;只有&nbsp;root&nbsp;跟属於&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shadow&nbsp;group&nbsp;的人才能读取密码.&nbsp;&nbsp;因此增加了安全性,&nbsp;相对的也&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;增加了应用程式的不便.&nbsp;&nbsp;&nbsp;因此一些须要读取密码的应用程式须要&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;跟&nbsp;libshadow.a&nbsp;连结,&nbsp;也要&nbsp;setgid&nbsp;给&nbsp;shadow,&nbsp;有时甚至得修改&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;source&nbsp;code&nbsp;中有关&nbsp;getpass()&nbsp;crypt()&nbsp;的部份.&nbsp;&nbsp;此外,&nbsp;shadow&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;对&nbsp;account&nbsp;可有&nbsp;expire&nbsp;date&nbsp;并有&nbsp;/etc/login.defs&nbsp;对&nbsp;login&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;作控制及设定,&nbsp;也是一大优点.&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.&nbsp;要到那去抓呢&nbsp;?&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ftp.edu.tw:/Op/Linux/packages/Admin&nbsp;中有&nbsp;shadow-3.3.1.tar.gz&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;而&nbsp;shadow-3.3.2.patch&nbsp;是为&nbsp;linux&nbsp;作的&nbsp;patch,&nbsp;并不是真的3.3.2&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;版.&nbsp;&nbsp;而我个人曾自己修改&nbsp;shadow-3.3.1&nbsp;并增加一些功能,&nbsp;放在&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ftp.edu.tw:/Op/Linux/collect/source/shadow/private&nbsp;下,&nbsp;您亦&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;可试试.&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.&nbsp;如何安装&nbsp;?&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;解开後应该打&nbsp;make&nbsp;就行了,&nbsp;没&nbsp;error&nbsp;後打&nbsp;make&nbsp;save,&nbsp;会备份旧的&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;util&nbsp;到&nbsp;save/&nbsp;下,&nbsp;再打&nbsp;make&nbsp;install.&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;然後用&nbsp;whereis&nbsp;找一下&nbsp;passwd/chsh/chfn/..&nbsp;等看看有没有重复的,&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;杀掉旧的&nbsp;binary.&nbsp;&nbsp;&nbsp;再来&nbsp;..&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1)&nbsp;cd&nbsp;/etc&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2)&nbsp;pwconv&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3)&nbsp;mv&nbsp;-f&nbsp;npasswd&nbsp;passwd&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4)&nbsp;mv&nbsp;-f&nbsp;nshadow&nbsp;shadow&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5)&nbsp;touch&nbsp;gshadow&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6)&nbsp;chmod&nbsp;640&nbsp;shadow&nbsp;gshadow&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7)&nbsp;chown&nbsp;root.shadow&nbsp;shadow&nbsp;gshadow&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8)&nbsp;用&nbsp;pwck,&nbsp;grpck&nbsp;检查一下是否有&nbsp;error.&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;检查一下&nbsp;/etc/login.defs&nbsp;存不存在,&nbsp;并改一下内容,&nbsp;由其是&nbsp;mail&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;那行.&nbsp;&nbsp;试著&nbsp;login&nbsp;一下,&nbsp;再试试&nbsp;passwd/chfn/chsh&nbsp;等,&nbsp;没问题就&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;那行.&nbsp;&nbsp;试著&nbsp;login&nbsp;一下,&nbsp;再试试&nbsp;passwd/chfn/chsh&nbsp;等,&nbsp;没问题就&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;恭喜了.&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4.&nbsp;如何&nbsp;compile&nbsp;跟密码有关的程式&nbsp;?!&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;换&nbsp;shadow&nbsp;後,&nbsp;有些东西如&nbsp;ftpd,&nbsp;sudo,&nbsp;screen&nbsp;等须要重&nbsp;compile,&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;首先能找到已为&nbsp;shadow&nbsp;改过的程式是最好,&nbsp;找不到时就得自己改啦.&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;以下是须要注意的&nbsp;:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0)&nbsp;在有&nbsp;getpwnam()&nbsp;getpwuid()&nbsp;crypt()&nbsp;的&nbsp;*.c&nbsp;中&nbsp;include&nbsp;&lt;shadow.h&gt;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;并在&nbsp;Makefile&nbsp;中加&nbsp;-lshadow&nbsp;以跟&nbsp;shadow-library&nbsp;link,&nbsp;若作&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;出来的程式对密码不能&nbsp;work,&nbsp;再参照&nbsp;1~3&nbsp;修改.&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1)&nbsp;getpwnam()&nbsp;getpwuid()&nbsp;取得的&nbsp;pw_passwd&nbsp;为&nbsp;*,&nbsp;须用&nbsp;getspnam()&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getspuid()&nbsp;来取得真正密码.&nbsp;(可参考&nbsp;/usr/include/shadow.h)&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2)&nbsp;crypt()&nbsp;须用&nbsp;pwd_encrypt()&nbsp;取代才可用&nbsp;16&nbsp;字元的密码.&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3)&nbsp;getpass(),&nbsp;有的程式用自己的&nbsp;getpass,&nbsp;有时只抓&nbsp;8&nbsp;字元,&nbsp;这时&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;16&nbsp;字元的密码就挂了,&nbsp;改用系统的&nbsp;getpass()&nbsp;就好了.&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.&nbsp;权限&nbsp;:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;若不是用&nbsp;root&nbsp;执行的程式如&nbsp;xlock&nbsp;须要&nbsp;chgrp&nbsp;shadow,&nbsp;chmod&nbsp;g+s&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;shadow&nbsp;才能读到&nbsp;/etc/shadow.&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.&nbsp;Good&nbsp;luck&nbsp;!!&nbsp;<BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -