CentOS 用户账户创建与管理终极指南


哈喽,大家好!今天咱们来聊聊在 CentOS 系统上怎么创建和管理用户账户。这可是每个 Linux 系统管理员的基本功,不管是自己折腾服务器还是在公司里做运维,都离不开它。本文会用最简单直白的方式,带你一步步掌握 CentOS 的用户管理,保证你看完就能上手!

为啥要管理用户账户?

在一台 Linux 服务器上,通常会有多个用户。比如,有的是系统管理员(root),有的是开发者,有的可能只是需要访问某些特定文件的普通用户。给不同的人创建不同的账户,并分配合适的权限,可以大大提高系统的安全性。总不能谁都用 root 账户登录吧,那万一搞错了啥,可就麻烦大了。

1. 创建新用户

在 CentOS 上创建新用户非常简单,主要用到 useradd (或者 adduser) 和 passwd 这两个命令。

案例:为新同事小明创建一个账户

假设公司来了个新同事,叫小明 (xmin),我们需要为他创建一个登录账户。

第一步:创建用户

打开终端,输入下面的命令:

sudo useradd xmin

这个命令会创建一个名为 xmin 的用户。同时,系统还会:

  • 创建一个名为 xmin 的用户组。
  • /home/ 目录下创建一个名为 xmin 的家目录。
  • /etc/skel 目录下的文件复制到 /home/xmin,这些是用户的默认配置文件。

代码解析:

  • sudo: 因为创建用户需要管理员权限,所以我们用 sudo 来临时提升权限。如果你已经是 root 用户登录,就不需要加 sudo
  • useradd: 这就是创建用户的命令。

第二步:设置密码

新创建的用户默认是没有密码的,所以小明还不能登录。我们需要用 passwd 命令给他设置一个密码。

sudo passwd xmin

执行这个命令后,系统会提示你输入两次密码来确认。

Changing password for user xmin.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

代码解析:

  • passwd: 这是专门用来设置或修改用户密码的命令。

现在,小明就可以用他的用户名 xmin 和你刚刚设置的密码登录服务器啦!

2. 赋予 sudo 权限

有时候,普通用户也需要执行一些需要管理员权限的操作。总不能每次都把 root 密码告诉他吧?这时候 sudo 就派上用场了。我们可以把小明加入到一个特殊的用户组 wheel,这个组里的成员默认就有 sudo 权限。

案例:让小明也能愉快地使用 sudo

第一步:将用户添加到 wheel 组

我们使用 usermod 命令来修改用户的属性,这里是把他添加到一个附加组里。

sudo usermod -aG wheel xmin

代码解析:

  • usermod: 修改用户账户的命令。
  • -aG: -a 表示追加(append),-G 表示附加组(groups)。连起来就是把用户追加到一个或多个附加组里,而不会影响他已经所在的组。
  • wheel: 这是 CentOS 系统里一个特殊的组,默认配置下,这个组里的用户可以使用 sudo

第二步:验证 sudo 权限

让小明登录他的账户,然后尝试执行一个需要 root 权限的命令,比如查看 /root 目录的内容。

首先,切换到小明的账户(如果你当前是 root):

su - xmin

然后,尝试执行需要管理员权限的命令:

sudo ls -l /root

第一次使用 sudo 时,系统会提示输入小明自己的密码进行验证。如果命令成功执行,那就说明 sudo 权限已经搞定啦!

3. 管理用户账户

随着时间的推移,我们可能需要修改用户信息,或者暂时禁用某个账户。

锁定和解锁账户

如果某个用户暂时不需要登录系统,我们可以锁定他的账户。

锁定账户:

sudo passwd -l xmin

解锁账户:

sudo passwd -u xmin

代码解析:

  • passwd -l: 锁定(lock)用户账户。
  • passwd -u: 解锁(unlock)用户账户。

修改用户信息

usermod 是个非常强大的命令,可以修改用户的各种信息。

修改用户名:

sudo usermod -l new_xmin xmin

这个命令会把用户名 xmin 改成 new_xmin

修改家目录:

sudo usermod -d /home/new_home -m new_xmin

这个命令会把用户 new_xmin 的家目录改成 /home/new_home,并且 -m 选项会自动移动旧家目录的内容到新家目录。

4. 删除用户

当一个用户确定不再需要访问系统时,就应该删除他的账户。

案例:小明离职了,删除他的账户

第一步:删除用户

使用 userdel 命令来删除用户。

sudo userdel xmin

这个命令会删除 xmin 这个用户,但是他的家目录 /home/xmin 会被保留下来。

彻底删除用户(包括家目录):

如果你想在删除用户的同时,也把他家目录下的所有文件都删掉,可以加上 -r 选项。

sudo userdel -r xmin

代码解析:

  • userdel: 删除用户的命令。
  • -r: 在删除用户的同时,删除用户的家目录和邮箱。

警告: -r 选项会永久删除用户的所有文件,操作前请务必确认不再需要这些文件!

总结与最佳实践

好了,关于 CentOS 用户账户的创建和管理,核心内容就是这些了。是不是很简单?最后,给大家总结几个最佳实践,让你的用户管理更安全、更高效:

  • 最小权限原则:只给用户完成他们工作所必需的最小权限。
  • 禁用 root 远程登录:永远不要直接用 root 用户通过 SSH 登录服务器,应该先用普通用户登录,再通过 sudo 提权。
  • 定期审查用户:定期检查服务器上的用户列表,及时删除不再需要的账户。
  • 使用强密码策略:要求用户设置复杂的密码,并定期更换。

希望这篇文章能帮你轻松搞定 CentOS 的用户管理。多动手练习,很快你就能成为一个熟练的系统管理员啦!


  目录