Linux帐号管理[上]--4个配置文件

来源:互联网 发布:站长域名查询 编辑:程序博客网 时间:2024/06/06 03:23
摘要:本文主要讲述了Linux帐号管理相关的4个配置文件即/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow.

Linux: Ubuntu10.0.4

1.用户标识符UID与GID
      虽然我们登录Linux主机的时候,输入的是我们的帐号,但是Linux主机并不会直接识别“帐号名称”的,它仅认识ID,“帐号名称”只是为了让人们容易记忆而已。
        ID与帐号的对应关系就在/etc/passwd当中。
        每个登录的用户至少都会取得两个ID,一个是用户ID(UserID,简称UID), 一个是用户组ID(GroupID,简称GID)。
      每个文件都会有所谓的UID和GID,当我们要显示文件的属性时,系统会依据/etc/passwd与/etc/group
 的内容找到UID与GID对应的帐号与组名再显示出来。
 
 2.用户帐号
      Linux系统上面的用户如果需要登录主机来取得Shell的环境来工作时,需要做出以下事情:
利用tty1~tty7的终端机提供的login接口,并输入帐号和密码才能登录。
     输入帐号和密码后,系统又做了很多事情:
 a.先在/etc/passwd里面查看是否有你输入的帐号,如果没有则跳出;如果有的话,将帐号对应的UID与GID(在/etc/group中)读出来,另外,该帐号的主文件夹与shell设置也一并读出。
 b.核对密码。在/etc/shadow里面找出对应的帐号与UID,然后核对密码是否相符。
 c.如果全部成功,就进入shell了。
 
     跟用户帐号有关的有两个非常重要的文件,一个是管理用户UID/GID的/etc/passwd,一个是管理
密码相关数据的/etc/shadow.
 
    2.1/etc/passwd文件结构
     每一行代表一个帐号,有几行就代表有几个帐号在你的系统中!不过需要特别注意的是,
 里面很多帐号本来就是系统正常运行所必要的,我们可以简称它们为系统帐号,例如bin,daemon,
 这些帐号不要随意删掉。
 
   文件格式:
    root:x:0:0:root:/root:/bin/bash
    daemon:x:1:1:daemon:/usr/sbin:/bin/sh
    bin:x:2:2:bin:/bin:/bin/sh
    sys:x:3:3:sys:/dev:/bin/sh
 
   每一行使用“:”隔开,共有7个字段,分别是:
   a.帐号名称。
   b.密码。
   c.UID。
   d.GID。
   e.用户信息说明列。
   f.主文件夹。
   g.Shell。
  
 2.2/etc/shadow文件结构
      文件格式:
    root:$6$I1KLlt38$QZNePJfBZvKY2ZLP7NPAu5ymt9XyB9v4NSpKgmUVF86GNz7T.SlUvjrUw4srXrGLaPd3H0NkCIQ7Au9RP29.l0:15407:0:99999:7:::
daemon:*:14728:0:99999:7:::
bin:*:14728:0:99999:7:::
sys:*:14728:0:99999:7:::
 
    每一行使用“:”隔开,共有9个字段,分别是:
   a.帐号名称。
   b.密码。
   c.最近更改密码的日期。
   d.密码不可改动的天数。
   e.密码需要重新更改的天数。
   f.密码需要更改期限前的警告天数。
   g.密码过期后的帐号宽限时间(密码失效日)。
   h.帐号失效日期。
   i.保留。
  
   3.用户组
  
   3.1 /etc/group文件结构
       文件格式:
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:

   每一行使用“:”隔开,共有4个字段,分别是:
   a.用户组名称。
   b.用户组密码。
   c.GID。
   d.该用户组所包含的帐号。
  
   3.2 /etc/gshadow
      文件格式:
root:*::
daemon:*::
bin:*::
sys:*::

   每一行使用“:”隔开,共有4个字段,分别是:
   a.用户组名称。
   b.用户组密码。
   c.用户组管理员的帐号。
   d.该用户组所包含的帐号。