4. 口令的长度和加密算法 
------------------- 

很多人在说Linux使用了DES加密算法, 最多只能用8个字符的口令. 但这是不对的, 
Linux的认证都是透过pam来作的, 它使用了两种算法 bigcrypt和md5, 前一种支持到128个字 
符, 后一种是无限长. 事实上在UNIX中只需要一种单向的算法即可, 它并不需要一种可以加密解 
密的算法. RedHat中用setup来修改级认证机制时, 它只修改了三个文件 
/etc/pam.d/login 
/etc/pam.d/rlogin 
/etc/pam.d/passwd 
中的一行: 
passwd /lib/security/pam_pwdb.so shadow md5 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
pam中的auth并不需要这样的设置, 它会根据crypted passwd中的salt来判断是那一种算法, 
因此文件中两种算法是可以并存的, 
cat /etc/shadow 
friday:$1$I92CumQb$I./BJehrqEKIUX9vNmZcL/:10832:0:99999:7:-1:-1:134538420 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
md5以$1$开头, 其salt为$1$I92CumQb$. 

