在Linux系统中,用户管理是系统管理员的核心任务之一,而CentOS作为企业级常用的操作系统,其用户账户的安全性和权限管理尤为重要,本文将详细介绍CentOS系统中普通用户的创建、配置、权限管理以及安全最佳实践,帮助管理员高效、安全地管理系统用户。

创建与管理普通用户
在CentOS中,创建普通用户通常使用useradd或adduser命令。useradd是底层的命令,提供更多自定义选项,而adduser则是useradd的交互式封装,更适合新手,创建一个名为testuser的用户并指定家目录路径,可执行以下命令:
sudo useradd -m -d /home/testuser -s /bin/bash testuser
-m表示自动创建家目录,-d指定家目录路径,-s设置默认Shell,创建用户后,需使用passwd命令设置初始密码:
sudo passwd testuser
用户配置与权限管理
每个用户在系统中都有一个唯一的UID(用户标识符)和GID(组标识符),默认情况下,useradd会自动创建与用户名同名的组,并将用户加入该组,若需将用户添加到其他组(如wheel组以获得sudo权限),可使用usermod命令:
sudo usermod -aG wheel testuser
这里的-aG表示追加用户到指定组,避免覆盖原有组成员关系。
文件权限管理方面,Linux通过r(读)、w(写)、x(执行)权限位控制用户对资源的访问,使用chmod修改文件权限,chown修改文件所有者,将/data目录的所有者改为testuser并赋予组写权限:

sudo chown testuser:testuser /data sudo chmod g+w /data
安全加固与最佳实践
普通用户的安全管理需遵循最小权限原则,建议禁用不必要的默认账户(如centos、fedora等),并通过/etc/login.defs配置密码策略(如密码复杂度、有效期),使用sudo替代直接root登录是提升安全性的关键,通过编辑/etc/sudoers文件(推荐使用visudo命令),可以精细控制用户或组的sudo权限,
testuser ALL=(ALL) NOPASSWD: /usr/bin/apt, /usr/bin/yum
该配置允许testuser无密码执行apt和yum命令,同时限制其权限范围。
定期审计用户活动也是安全管理的重要环节,通过last命令查看用户登录历史,lastb记录失败登录尝试,结合日志分析工具(如logwatch)可及时发现异常行为,对于不再需要的用户,使用userdel -r testuser彻底删除用户及其家目录,避免遗留安全隐患。
相关问答FAQs
Q1:如何禁止普通用户使用SSH远程登录?
A1:可通过修改SSH配置文件/etc/ssh/sshd_config实现,添加以下行并重启SSH服务:
DenyUsers testuser
或使用Match指令限制特定用户的登录方式:

Match User testuser
ForceCommand internal-sftp
PasswordAuthentication no
这样仅允许testuser通过SFTP传输文件,禁用SSH交互登录。
Q2:如何批量创建多个用户并设置初始密码?
A2:可结合newusers命令和密码文件实现,首先创建一个文本文件(如users.txt),格式为username:password:UID:GID:comment:home_dir:shell,
user1:Passw0rd:1001:1001:User One:/home/user1:/bin/bash user2:Passw0rd:1002:1002:User Two:/home/user2:/bin/bash
然后执行:
sudo newusers < users.txt sudo chpasswd < users.txt
最后通过chage命令强制用户首次登录时修改密码,确保安全性。