服务器测评网
我们一直在努力

Linux系统如何安全高效添加新用户账号?

用户管理基础

在Linux系统中,用户账号是系统安全与管理的基础,无论是个人服务器还是企业级环境,合理创建和管理用户账号都是系统管理员的核心工作之一,Linux通过用户(User)和用户组(Group)的机制实现权限隔离,确保不同用户只能访问其授权的资源,本文将详细介绍Linux系统中添加用户账号的完整流程,包括命令行操作、权限配置、安全设置及最佳实践。

Linux系统如何安全高效添加新用户账号?

使用useradd命令创建用户

Linux中最基础的创建用户命令是useradd,其本质是在系统中添加一个新用户条目,包括创建用户主目录、设置默认Shell等操作,基本语法为:

sudo useradd [选项] 用户名  

常用选项包括:

  • -m:自动创建用户主目录(默认情况下,useradd不会创建主目录);
  • -s:指定用户登录的Shell,如/bin/bash(交互式Shell)或/sbin/nologin(禁止登录);
  • -d:自定义用户主目录路径,默认为/home/用户名
  • -g:指定用户的主用户组,需确保该组已存在;
  • -G:将用户添加到附加用户组,多个组用逗号分隔;
  • -c:添加用户注释信息,如真实姓名;
  • -r:创建系统用户(无主目录、UID小于1000,通常用于服务进程)。

创建一个名为devuser的用户,主目录为/home/devuser,Shell为/bin/bash,并附加sudodocker组:

sudo useradd -m -d /home/devuser -s /bin/bash -G sudo,devuser devuser  

设置用户密码

创建用户后,必须设置密码才能正常登录,使用passwd命令为用户修改密码,需以root或具有sudo权限的用户身份执行:

sudo passwd devuser  

系统会提示输入两次密码,密码不会显示在终端中(输入时无回显),为增强安全性,建议密码包含大小写字母、数字及特殊字符,长度至少12位。

若需批量创建用户并设置初始密码,可通过chpasswd命令实现,从文件users.txt中批量创建用户(文件格式为用户名:密码):

sudo chpasswd < users.txt  

配置用户权限

sudo权限

默认情况下,普通用户无法执行需要管理员权限的操作,若需允许用户使用sudo,需将其加入sudo组(在Ubuntu/Debian中)或编辑/etc/sudoers文件(在CentOS/RHEL中)。

Linux系统如何安全高效添加新用户账号?

以Ubuntu为例,将用户添加到sudo组:

sudo usermod -aG sudo devuser  

验证权限:

sudo -l -U devuser  

文件权限与用户组

通过用户组管理文件权限是Linux的常用策略,创建一个developers组,并将多个用户加入该组,然后设置目录组权限:

sudo groupadd developers  
sudo usermod -aG developers devuser  
sudo chown -R :developers /project/code  
sudo chmod -R 775 /project/code  

这样,developers组的成员均可读写和执行目录中的文件,而其他用户无权限。

用户管理进阶操作

修改用户信息

使用usermod命令可修改已创建用户的属性,

  • 更改用户名:sudo usermod -l newname oldname
  • 锁/解锁用户:sudo usermod -L devuser(锁)、sudo usermod -U devuser(解锁)
  • 更改主目录:sudo usermod -d /new/home -m devuser-m会自动迁移文件)

删除用户

若需删除用户及其主目录,使用userdel命令:

sudo userdel -r devuser  # `-r`会同时删除用户主目录和邮件文件  

仅删除用户条目(保留主目录):sudo userdel devuser

Linux系统如何安全高效添加新用户账号?

查看用户信息

  • 查看用户基本信息:id devuser(显示UID、GID及所属组)
  • 查看系统所有用户:cat /etc/passwd(每行代表一个用户,格式为用户名:密码:UID:GID:注释:主目录:Shell
  • 查看登录用户:whow(显示当前登录用户及终端信息)

安全最佳实践

使用强密码策略

通过/etc/login.defs/etc/pam.d/common-password配置密码复杂度要求,

  • 最小长度:PASS_MIN_LEN 12
  • 密码有效期:PASS_MAX_DAYS 90(强制定期更换密码)

限制SSH登录用户

编辑/etc/ssh/sshd_config文件,使用AllowUsersAllowGroups指令限制允许登录的用户或组:

AllowUsers devuser adminuser  
AllowGroups developers  

重启SSH服务:sudo systemctl restart sshd

禁用无用账号

对于长期不使用的系统账号(如testguest),建议锁定或删除,避免安全风险:

sudo usermod -L test  # 锁定账号  

Linux用户管理是系统运维的基础技能,从创建用户、设置密码到配置权限,每一步都需兼顾安全性与易用性,通过useraddusermodpasswd等命令,管理员可以灵活管理系统账号;结合用户组、sudo权限及SSH限制策略,可有效提升系统安全性,在实际操作中,建议遵循最小权限原则,定期审查用户账号,确保系统既满足功能需求,又避免潜在风险。

赞(0)
未经允许不得转载:好主机测评网 » Linux系统如何安全高效添加新用户账号?