用户和用户组相关的配置文件

一、与用户相关的配置文件

一般来说,与用户配置相关的几个文件如下:

l  /etc/passwd: 最重要的文件,存储着用户的用户名,UID,Shell等信息

l  /etc/shadow: 用户密码文件,使用sha-1算法加密存储(注意该文件的权限)

l  /etc/skel/: 用户的模板文件,新建用户如果创建家目录,会默认将改目录下文件拷贝至用户家目录

l  /etc/login.defs: 登录用户的相关配置(部分环境变量),通常无需改动

 

    1/etc/passwd

    每个用户对应一个UID,该文件将存储用户的UID,GID,Shell等配置信息。

    查看/ect/passwd:  

blob.png

    使用man 5 passwd查看该文件的配置语法。

    /ect/passwd的文件格式:

    name:password:UID:GID:GECOS:directory:shell

    此文件的对应的字段意义如下:

     name:用户名

    password:用户密码,可以是加密的密码,也可以是占位符“X”

    UID:用户的ID号

    GID:用户所属主组的ID号

    GECOS:注释信息

    Directory:用户的家目录

    Shell:用户登录时默认shell程序

   2/etc/shadow

    影子文件,通常是现代Linux系统用户密码存储的文件。此文件由shadow工具集使用。并非所有的用 

  户密码管理工具都会使用。

    查看/etc/shadow:

blob.png

      该文件格式和/etc/passwd文件相同,一样使用:分割几个有意义的字段。使用man [5] shadow即可查

    看该文件的帮助。

    此文件的对应的字段意义如下:

         ·         登录名:

     必须是有效的账户名,且已经存在于系统中。

        ·         加密的密码:

     该字段存储单向加密后的密码,现代Linux通常是使用sha-512算法加密的字符串,一般有以下几个特

    点:

  (1)、如果密码字段包含一些不是 crypt(3) 合法结果的字符,比如 !  *,用户将无法使用 Linux     密码登录(但是可以通过其它方法登录系统)

 (2)、此字段可以为空,此时认证为特定的登录名时,不要求密码。然而,一些读取 /etc/shadow 

    件的应用程序,在密码字段为空时,可能决定禁止任何访问。

 (3)、以叹号开始的密码字段意味着密码被锁定。该行的剩余字符表示锁定之前的密码。

         ·        最后一次更改密码的日期:

    最近一次更改密码的时间,表示从197011日开始的天数。

     0有特殊含义,表示用户应该在下次登录系统时更改密码。

   空字段表示密码最长使用期限功能被禁用。

        ·         密码的最短使用期限:

    最短使用期限是指,用户一次更改密码之后,要等多长时间才再次被允许更改密码。空字段或0 表示

  没有最短使用期限。

        ·         密码的最长使用期限:

    最大密码年龄是指,这些天之后,用户必须更改密码。

    这些天之后,密码仍然可用。用户将会在下次登录的时候被要求更改密码。

    空字段表示没有最大密码年龄,没有密码警告时间段,没有密码禁用时间段

    如果最大密码年龄小于最小密码年龄,用户将会不能更改密码。

         ·         密码警告时间段:

    密码过期之前,提前警告用户的的天数(请参考上边的密码最长使用期限)

    空字段或者 0 表示没有密码警告期。

        ·         密码禁用期:

    密码过期(查看上边的密码最长使用期限)后,仍然接受此密码的天数(在此期间,用户应该在下次登录

    时修改密码)

    密码到期并且过了这个宽限期之后,使用用户的当前的密码将会不能登录。用户需要联系系统管理员。

    空字段表示没有强制密码过期。

        ·         账户过期日期:

    账户过期的日期,表示从197011日开始的天数。

    注意,账户过期不同于密码过期。账户过期时,用户将不被允许登录;密码过期时,用户将不被允许使用

    其密码登录。

    空字段表示账户永不过期。

    应该避免使用 0,因为它既能理解成永不过期也能理解成在197011日过期。

        ·         保留字段此字段保留作将来使用。

 

二、用户组相关配置文件

    与用户组相关的几个配置文件:

l  /etc/group用户组主配置文件

l  /etc/gshadow: 用户组密码配置


1、/etc/group

    该文件存储用户组名,GID,以及用户对应关系等信息。

    字段也比/etc/passwd少。

blob.png

    /etc/group格式:

    group_name:password:GID:user_list

    此文件的对应的字段意义如下:

    group_name:用户组名

    password:用户组密码,可以是加密的密码,也可以是占位符“X”。

    GID:用户组ID号

    user_list:该用户组的用户成员,以此组为附加组的用户列表

 

 2、/etc/gshadow

    和/etc/shadow类似,组密码的影子文件。

    如果用户组有密码时,此文件用于保存用户组密码。但比/etc/shadow内容少的多。

blob.png

    /etc/gshadow的格式:

    Group_name:encrypted_password: administrators: members

    此文件的对应的字段意义如下:

    Group_name:群组名

        必须是系统中已经存在的有效组

    encrypted_password:加了密的密码

        此密码用于不是此组成员的用户获取此组的权限

        此字段可以为空,此时只有组成员可以获取组权限

        以叹号开始的密码字段意味着密码被锁定,该行的声誉字符表示锁定之前的密码

        此密码取代/etc/group指定的的任何密码

    administrators:组管理员的列表

        必须是一个逗号分隔的用户名表

        管理员可以更改组密码和成员

        管理员也有和成员一样的权限

        members:以当前组为附加组的用户列表

        必须是一个逗号分隔的用户名表

        成员可以免密码访问组

 

总结:

    用户(User)和用户组(Group)的配置文件,是系统管理员最应该了解和掌握的系统基础文件之一,从另一方面来说,了解这些文件也是系统安全管理的重要组成部份;做为一个合格的系统管理员应该对用户和用户组配置文件透彻了解才行;