天下网吧 >> 网吧天地 >> 网吧技术 >> 网吧系统 >> 正文

Linux操作系统的口令安全问题详细解

2008-4-8赛迪网佚名

   几乎所有的类Unix操作系统的口令文件的格式都雷同,Linux亦不例外。口令安全是Linux操作系统的传统安全问题之一。

   传统口令与影子口令

  /etc/passwd是存放用户的基本信息的口令文件。该口令文件的每一行都包含由6个冒号分隔的7个域:

  username: passwd: uid: gid: comments: directory: shell

  以上从左到右7个域分别叙述如下:

  username:是用户登陆使用的名字。

  passwd:是口令密文域。密文是加密过的口令。如果口令经过shadow则口令密文域只显示一个x,通常,口令都应该经过shadow以确保安全。如果口令密文域显示为*,则表明该用户名有效但不能登陆。如果口令密文域为空则表明该用户登陆不需要口令。
   uid:系统用于唯一标识用户名的数字,uid系统是这样分配的:
   0 超级用户
   1~10 守护程序和伪用户
   11~99 系统保留用户
   100~ 正常用户
   gid:表示用户所在默认组号。由/etc/group文件决定。
   comments:描述用户的个人信息。
   directory:定义用户的初始工作目录。
   shell:就是指定用户登陆到系统后启动的外壳程序。
  表1列出了系统在安装过程中创建的标准用户,表中的内容和/etc/passwd文件的描述是一致的。
  表2列出系统安装过程中创建的标准用户组,和/etc/group文件是一致的:
   Linux使用不可逆的加密算法如DES来加密口令,由于加密算法是不可逆的,所以从密文是得不到明文的。但问题在于,/etc/passwd文件是全局可读的,加密的算法是公开的,如果有恶意用户取得了/etc/passwd文件,他就可以穷举所有可能的明文通过相同的算法计算出密文进行比较,直到相同,于是他就破解了口令。因此,针对这种安全问题,Linux/Unix广泛采用了“shadow(影子)”机制,将加密的口令转移到/etc/shadow文件里,该文件只为root超级用户可读,而同时/etc/passwd文件的密文域显示为一个x,从而最大限度减少密文泄露的机会。
   /etc/shadow文件的每行是8个冒号分割的9个域,格式如下:
   username: passwd: lastchg: min: max: warn: inactive: expire: flag
  其中:
   lastchg:表示从1970年1月1日起到上次修改口令所经过的天数。
   min:表示两次修改口令之间至少经过的天数。
   max:表示口令还会有效的最大天数,如果是99999则表示永不过期。
   warn:表示口令失效前多少天内系统向用户发出警告。
   inactive:表示禁止登陆前用户名还有效的天数。
   expire:表示用户被禁止登陆的时间。0
   flag:无意义,未使用。

  启用影子口令
   RedHat Linux缺省安装shadow,如果你发现你的系统的/etc/passwd文件仍然可以看到密文,就说明你没有启用shadow。可以执行pwconv来启用shadow。
  在RedHat Linux 7.1中,影子工具包(shadow utils)包含了几个工具支持以下功能:
  传统口令与影子口令之间的转换工具:pwconv、pwunconv。
  验证口令,组和相应的影子文件:pwck、grpck。
  以符合工业标准的方法增加、删除和修改用户帐户:useradd、usermod、userdel。
  以符合工业标准的方法增加、删除和修改用户组:groupadd、groupmod、groupdel。
  以符合工业标准的方法管理文件/etc/group。
  无论系统是否启用shadow机制,上述工具都可以正常使用。
  更改Linux口令的最短长度
   Linux系统默认最短口令长度为5个字符,这个长度不足以保证口令的健壮性,应该改为最短8个字符,编辑/etc/login.defs文件,在此文件中,将
   PASS_MIN_LEN  5
  改为:
   PASS_MIN_LEN  8
  表1
   User Uid gid Directory shell
   Root 0 0 /root /bin/bash
   Bin 1 1 /bin
   Daemon 2 2 /sbin
   Adm 3 4 /var/adm
   Lp 4 7 /var/spool/lpd
   Sync 5 0 /sbin /bin/sync
   shutdown 6 0 /sbin /sbin/shutdown
   Halt 7 0 /sbin /sbin/halt
   Mail 8 12 /var/spool/mail
   News 9 13 /var/spool/news
   Uucp 10 14 /var/spool/uucp
   Operator 11 0 /root
   Games 12 100 /usr/games
   Gopher 13 30 /usr/lib/gopher-data
   ftp 14 50 /home/ftp
   Nobody 99 99 /
  表2
   Group Gid Members
   Root 0 Root
   Bin 1 root,bin,daemon
   Daemon 2 root,bin,daemon
   Sys 3 root,bin,adm
   Adm 4 root,adm,daemon
   Tty 5
   Disk 6 Root
   Lp 7 daemon,lp
   Mem 8
   Kmem 9
   Whell 10 Root
   Mail 12 Mail
   News 13 News
   Uucp 14 Uucp
   Man 15
   Games 20
   Gopher 30
   Dip 40
   ftp 50
   nobody 99
   Users 100
   floppy 19

欢迎访问最专业的网吧论坛,无盘论坛,网吧经营,网咖管理,网吧专业论坛https://bbs.txwb.com

关注天下网吧微信,了解网吧网咖经营管理,安装维护:


本文来源:赛迪网 作者:佚名

声明
本文来源地址:0
声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。若文章侵犯了您的相关权益,请及时与我们联系,我们会及时处理,感谢您对本站的支持!联系Email:support@txwb.com.,本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
天下网吧·网吧天下
  • 本周热门
  • 本月热门
  • 阅读排行