一、背景说明
在企业级 Linux 运维环境中,用户账户应根据用途、安全等级和登录权限进行严格分类:
二、用户分类与UID范围说明
💡 注:某些发行版如 RHEL/CentOS 使用 1–499 为系统用户,1000 起为普通用户;Debian/Ubuntu 使用 100–999。
三、用户创建目标场景
目标1:创建一个系统服务用户 backupsvc
用于运行定时备份任务;
无需登录系统;
无家目录;
UID在系统用户范围内(如指定为 300);
注释说明账户用途。
目标2:创建一个普通登录用户 devops
具备登录权限;
自定义家目录
/data/home/devops
;设置注释描述;
加入指定组
developers
;默认 shell 为
/bin/bash
。
四、实际创建命令
1. 创建系统用户 backupsvc(不能登录)
useradd -r -u 300 -s /sbin/nologin -M -c "Backup automation service user" backupsvc
参数说明:
创建完成后可验证:
id backupsvc grep backupsvc /etc/passwd
2. 创建普通用户 devops(允许登录)
groupadd developers # 先建用户组(如尚未存在)
useradd -m -d /data/home/devops -s /bin/bash -c "DevOps Engineer Login Account" -g developers devops
passwd devops
参数说明:
设置密码后,该用户可使用 SSH 正常登录。
五、企业标准建议
用户 UID/GID 分配规范
系统用户 UID:由架构组预先分配(如 300–499 区间保留给运维服务账户);
普通用户 UID:建议自动递增(如 1000起),也可通过 CMDB 或 AD统一规划;
若集成 LDAP/NIS,应避免本地与目录服务 UID 冲突。
Shell 登录策略建议
审计与合规建议
每次新增用户建议记录到用户登记表或 CMDB 中;
设置
chage
密码过期策略,增强账户安全;对
/etc/passwd
、/etc/shadow
变更设置审计监控;可配置
/etc/login.defs
中的默认 UID、家目录权限等策略;