Linux 的安全性很高,它完善的用户和权限管理机制功不可没。
妥善管理好 Linux 系统上的用户和组是 Linux 系统管理员的义务。
本文以 CentOS 7.4.1708 为例,其他 Linux 发行版部分内容可能会有所不同。
二、用户管理
2.1 用户的类型
在 Linux 系统中,有三种用户。
2.1.1 超级用户
用户名为 root,用户 ID 为 0。有着至高无上的权限,可执行所有任务,可访问所有文件,可管理所有用户。
在服务器配置工作完毕后,为了安全,不应该直接使用超级用户。
2.1.2 普通用户
用户 ID 默认从 1000 开始。供普通用户使用。
2.1.3 系统服务用户
用户 ID 默认为 1-499。仅供系统服务使用,默认不可登录(即默认 SHELL 为 /sbin/nologin)。
2.2 查看本机用户信息
2.2.1 /etc/passwd
文件的格式如下:
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
...
该文件以 : 作为字段分隔符,保存了本机所有用户的基本信息。以下详细说明其含义。
在早期的 Linux 系统中,密码是保存在这个文件里的。但是该文件默认所有用户都可读,会对系统安全造成威胁。现在,密码都以散列的形式存储在了 /etc/shadow 中了。
2.2.2 /etc/shadow
文件的格式如下:
root:$6$3Cprk6.h$Ied2v...:17438:0:99999:7:::
bin:*:17110:0:99999:7:::
...
该文件默认的权限为 000,也就是所有用户都不可访问(root 肯定可以访问,但是不建议直接修改此文件)。
该文件同样以 : 作为字段分隔符,保存了本机所有用户有关密码以及安全的信息。以下详细说明其含义。
2.3 添加用户
命令用法
useradd [选项] <用户名>
2.4 删除用户
命令用法
userdel [选项] <用户名>
2.5 修改用户参数
命令用法
usermod [选项] <用户名>