用户管理
账号卫生是系统安全的决定性因素。使用不频繁的账户以及密码很容易被猜出是攻击者的首选目标。
账户机制
系统中每个用户都有一个用户ID(UID),其实一个用户在系统中就是一个数字,有关用户账户管理的几乎一切内容都是围绕UID这个数字来展开的。
/etc/passwd文件
/etc/passwd文件是系统能够识别的用户清单。该文件可以被一种或多种目录服务扩展或者替代。系统在登陆时查看该文件来确定用户的UID和主目录。该文件中的每一行描述一个用户。由七个字段组成。
登录名:加密密码的预留位:UID:GID:可选信息(如全名,办公室等信息):主目录:登录shell
在历史上用户的密码保存在/etc/passwd文件中,并且该文件所有用户可读,但是随着处理器计算能力的提升,破解这种完全暴露在外的密码日渐可行,因此,系统将密码转移到了一个不是所有用户都可以读取的文件/etc/shadow中。
按照定义,root账户的UID为0,一些伪用户也被赋予较低的UID。为了有足够的空间容纳之后的伪用户,因此建议用户ID从1000开始。PS!!!不要回收重利用UID,防止文件备份恢复后出现问题。
/etc/shadow文件
该文件只有超级用户可以读取,一行描述一个用户,由9个字段组成。
登录名:加密密码:最后一次修改密码的日期:密码更改的最小间隔天数:密码修改的最大间隔天数:提前多少天通知用户密码将要过期:密码过期多少天之后禁用该账户:账户过期时间:保留字段
安全删除用户的账户以及文件
使用userdel删除用户之后核对如下列表确定用户数据是否已删除。
- 所有数据库中删除该用户
- 从邮件别名数据库删除该用户
- 删除该用户的crontab文件以及所有尚未执行的at作业或打印作业
- 杀死所有属于该用户的运行进程
- 从passwd、shadow、group、gshadow中删除该用户
- 删除该用户的主目录
- 删除该用户的邮件存储文件