首页 > 代码库 > 第6章 用户和用户组管理(1)_用户配置文件及其它管理相关文件

第6章 用户和用户组管理(1)_用户配置文件及其它管理相关文件

1. 用户配置文件

1.1 用户信息文件

(1)用户管理简介

  ①越是对服务器安全性要求高的服务器,越需要建立合理的用户权限等级制度和服务器操作规范

  ②在Linux中主要是通过用户配置文件来查看和修改用户信息

(2)/etc/passwd文件(用来存放用户名等信息。打开方式:#vim /etc/passwd,查看帮助:#man 5 passwd)

技术分享 

  ①第1字段:用户名称(如root)

  ②第2字段:密码标志,“x”表示该用户有密码,存放在/etc/shadow文件中(只有管理有权限查看)。如果不写“x”,系统会认为该用户没设置密码,这种用户只允许本机登录

  ③第3字段:UID(用户ID)  A.0—超级用户;B.1-499:系统用户(伪用户);C.500-65535:普通用户

  ④第4字段:GID(用户初始组ID)

  ⑤第5字段:用户说明,起备注作用。

  ⑥第6字段:家目录

    A.普通用户:/home/用户名

    B.超级用户:/root/

  ⑦第7字段:登录之后的Shell

(3)初始组和附加组

  ①初始组就是指用户一登录就立刻拥有这个用户组的相关权限,每个用户只能且必须有一个初始组,默认下,创建用户时会同时创建一个名字与用户名相同的组,作为这个用户的初始组

  ②附加组指用户可以加入多个其他的用户组,并拥有这些组的权限,附加组可以有多个。

1.2 影子文件

(1)/etc/shadow文件——用来存放用户密码等信息

技术分享 

  ①第1字段:用户名:

  ②第2字段:加密密码(用SHA512加密),如果密码位是“!!”或“*”代表没有密码,不能登录。如果要禁用某用户登录,可以在密码位前加“!”

  ③第3字段:密码最后一次修改日期。使用1970年1月1日作为标准时间,每过一天时间戳加1。

  ④第4字段:两次密码的修改时间间隔(和第3个字段相比)

  ⑤密码有效期(和第3字段相比)

  ⑥第6字段:密码修改到期前的警告天数(和第5个字段相比)

  ⑦第7字段:密码过期后的宽限天数(和第5个字段相比)。0代表密码过期后立即失效。-1代表密码永远不会失效。

  ⑧第8字段:败号失效时间。要用时间戳表示

  ⑨第9字段:保留

(2)时间戳换算

  ①把时间戳换算为日期:

    #date –d "1970-01-01 16066 days" //把时间戳16066天换成时期。

  ②把日期换算为时间戳:

  #echo $(($(date --date="2014/01/06" +%s)/86400+1)) //将日期2014/01/06换成时间戳,其中+%s表示换成秒,再/86400转为天。

1.3 组信息文件和组密码文件

(1)组信息文件:/etc/group

技术分享 

  ①第1字段:组名(默认每增加1个用户会同时增加1个组名与用户名相同的组作为该用户的初始组)

  ②第2字段:组密码标志

  ③第3字段:组ID(GID)

  ④第4字段:组中附加用户

(2)组密码文件:/etc/gshadow

技术分享 

  ①第1字段:组名

  ②第2字段:组密码

  ③第3字段:组管理员用户名

  ④第4字段:组中附加用户

2. 用户管理相关文件

2.1 用户的家目录

(1)普通用户:/home/用户名/,这个目录的所有者和所属组都是此用户,权限是700。

(2)超级用户:/root/所有者和所属组都是root用户,权限是550。如果将普通用户通过更改其UID为0变成超级用户,其家目录仍为/home/用户名/,但该用户拥有了超级用户的权限。

2.2 其它文件

(1)用户邮箱:/var/spool/mail/用户名创建用户时,会自动创建这个文件。用于linux用户之间发送邮件,它是通过内存(而不是网络上的服务器)来发送的。

(2)用户模板目录:/etc/skel/

  ①创建用户时,在用户的家目录下会有增加一些默认的文件,这些文件是从/etc/skel/目录下拷贝而来。

  ②家目录下默认拷贝而来的文件有:.bash_logout、.bash_profile、.bashrc等(隐藏文件)。

第6章 用户和用户组管理(1)_用户配置文件及其它管理相关文件