1.Linux环境下的账户系统文件

/etc/passwd

/etc/passwd文件中每行定义一个用户账户,一行中又划分为多个字段定义用户账户的不同属性,各字段间用”:’’分割。任意用户可读。

1

字段 说明
用户名 用户登录系统时使用的用户名,在系统中唯一。
口令 存放加密的口令,x表示用户的口令是被/etc/shadow文件保护的。
用户标识符 是一个整数,系统内部用它来标识用户,每个用户的UID都是唯一的。root的为0,从1-499是系统的标准账户。普通用户的UID从500开始。
组标识符号 是一个整数,系统用它来标识用户所属的组。每个用户账户在建立好后都会有一个主组,主组相同的账号其GID相同。
GECOS 存放用户全名、地理位置等信息。
宿主目录 用户登录系统后进入的目录。
命令解释器 指示该用户使用的shell,默认bash。
/etc/shadow

/etc/shadow中存放加密的用户口令,只对root用户可读且提供一些口令时效字段。

2

栏位 说明
用户名 用户的账户名
口令 用户的口令,经过SHA512加密
最后一次修改的时间 uninx元年到最后一次修改的天数
最小时间间隔 unix元年到用户可以更改口令的天数
最大时间间隔 unix元年到用户必须更改口令的天数
警告时间 在用户口令过期之前多少天提醒用户更新
不活动时间 在用户口令过期之后到禁用账户的天数
失效时间 unix元年到账户被禁用的天数
标志 保留位
/etc/group

/etc/group中存放用户的组信息,当一个用户同时是多个组的成员是,在/etc/passwd文件中记录的是用户所属的主组,也就是登陆时所属的主组,而其他组成为附加组。用户要访问附件组的文件时,必须要使用newgrp命令是自己成为该组成员。该文件对所以用户可读。

3

栏名 说明
组名 该组的名称
组口令 由于安全原因,x占位
GID 组的识别号
组成员 属于该组的成员,用“,”分割
/etc/gshadow

/etc/gshadow用于定义用户组口令、组管理员等信息。只有root用户可读取。

4

栏名 说明
组名 组名称,该字段与group文件中的组名称对应
组口令 组口令,该字段用于保存已加密的口令
组的管理员账户 组的管理员账号,管理员有权对该组添加,删除账号
组成员 属于该组的用户成员列表,列表中多个用户间用‘,’分隔

2.管理账户的命令行工具

命令 说明
useradd[选项]<用户名> 添加新用户
usermod[选项]<用户名> 修改已经存在的指导用户
userdel[-r]<用户名> 删除已经存在的指导目录,-r参数用于删除用户自家目录
groupadd[选项]<用户名> 添加新的组
groupmod[选项]<用户名> 修改已经存在的组
groupdel<用户名> 删除已经存在的指定组

3.口令管理和口令时效

(1.)使用passwd命令进行口令管理

格式:passwd[选项][用户名]

选项 说明 选项 说明
-S 列出口令的状态信息 -d 删除口令
-l 锁定用户账户 -k 保持口令不变,直到口令过期失效后方能更改
-u 解除已锁定账户 –stdin 从标准输入读取口令(非交互模式)

(2.)chage命令

口令时效:强制用户在一段时间之后修改口令的机制成为口令时效。

liunx系统上,修改口令时效分为

  • 对于未来要创建的所以用户的口令时效需修改/etc/login.defs文件的相关参数
  • 对以及存在的用户修改口令时效是通过chage命令来管理

设置新添用户的口令时效

参数 说明
PASS_MAX_DAYS 设置在多少天后要求用户修改口令,默认口令时效天数为99999
PASS_MIN_DAYS 设置口令修改后,至少要经过多少天后才允许修改
PASS_WARN_AGE 设定在口令时效前多少天开始通知用户更改口令

设置已经存在用户的口令时效

格式:chage[选项]<用户登录名>

选项 描述
-m days 指定用户必须改变口令所间隔的最少天数,值为0,口令不会过期
-M days 指定口令有效的最多天数
-d days 指定自从unix元年其,口令被改变的天数
-I days 指定口令过期后,账户被锁前不活跃的天数,值为0,账户在口令过期后不会被锁
-E date 指定账号被锁的日期
-W days 指定口令过期前要警告用户的天数
-l 列出指定用户当前的口令时效信息

4.用户和组状态

命令 功能
whoami 用于显示当前用户的名称
id 用于显示用户身份
groups 用于显示指定用户所属的组
newgrp 用于将用户从当前组转换到附加组,用户必须属于该组才可以

未完待续……

人们只愿看到自己想看到的一切,分不清是非对错,黑白颠倒。–Hades