news 2026/7/4 2:13:45

Linux用户与工作组管理命令详解及安全实践

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux用户与工作组管理命令详解及安全实践

1. Linux用户与工作组管理概述

在Linux系统中,用户和工作组管理是系统管理员日常工作中最基础也是最重要的部分。每个运行中的进程都属于特定用户,每个文件都有所属用户和组,这种权限机制构成了Linux安全体系的基础架构。

用户分为三类:超级用户(root)、系统用户和普通用户。root拥有至高无上的权限,系统用户通常用于运行服务进程,而普通用户则是日常使用者。工作组则是用户的集合,主要用于简化权限管理。

2. 核心命令详解

2.1 用户管理命令

useradd - 创建新用户
sudo useradd -m -s /bin/bash -G developers alice
  • -m:自动创建用户家目录
  • -s:指定默认shell
  • -G:指定附加组
  • 创建后建议立即用passwd设置密码
usermod - 修改用户属性
sudo usermod -aG sudo bob # 将bob加入sudo组 sudo usermod -L alice # 锁定alice账户
userdel - 删除用户
sudo userdel -r charlie # -r表示同时删除家目录

2.2 工作组管理命令

groupadd - 创建新组
sudo groupadd developers
groupmod - 修改组属性
sudo groupmod -n devs developers # 重命名组
gpasswd - 组密码管理
sudo gpasswd -a alice developers # 添加用户到组 sudo gpasswd -d bob developers # 从组中移除用户

2.3 信息查询命令

id - 显示用户身份信息
id alice # 显示用户UID、GID及所属组
whoami - 显示当前用户
whoami # 快速确认当前用户身份
groups - 显示用户所属组
groups bob # 显示bob所属的所有组
getent - 查询系统数据库
getent passwd # 显示所有用户 getent group # 显示所有组

3. 配置文件解析

3.1 /etc/passwd文件结构

username:x:UID:GID:comment:homedir:shell
  • x表示密码已移至/etc/shadow
  • UID:0=root,1-999=系统用户,1000+=普通用户

3.2 /etc/shadow文件字段

alice:$6$...:18647:0:99999:7:::
  1. 用户名
  2. 加密密码
  3. 最后修改日期(距1970-1-1的天数)
  4. 密码最短有效期
  5. 密码最长有效期
  6. 密码过期前警告天数

3.3 /etc/group文件格式

developers:x:1002:alice,bob
  • 组名:密码占位符:GID:成员列表

4. 高级权限管理

4.1 sudo权限配置

编辑/etc/sudoers建议使用visudo:

sudo visudo

典型配置:

%developers ALL=(ALL) NOPASSWD: /usr/bin/apt update

4.2 文件权限管理

chown alice:developers project/ # 修改属主和属组 chmod 775 script.sh # 设置权限位 setfacl -m u:bob:rwx file.txt # 设置ACL权限

5. 实用技巧与排错

5.1 批量用户管理

# 批量创建用户 for user in user1 user2 user3; do sudo useradd -m $user echo "$user:Password123" | sudo chpasswd done

5.2 密码策略设置

sudo chage -M 90 -m 7 -W 14 alice # 设置密码有效期

5.3 常见问题排查

  1. 用户无法登录:

    • 检查/etc/passwd中的shell路径是否正确
    • 确认账户未被锁定(passwd -S)
    • 检查/home目录权限(应为755)
  2. 权限拒绝:

    • 确认用户是否在正确的组中
    • 检查文件权限和ACL设置
    • 确认SELinux上下文是否正确

6. 安全最佳实践

  1. 定期审计用户:
sudo lastlog # 查看用户最后登录时间 sudo passwd -S --all # 检查密码状态
  1. 限制root登录:
sudo passwd -l root # 锁定root密码 sudo nano /etc/ssh/sshd_config # 设置PermitRootLogin no
  1. 使用SSH密钥认证:
ssh-keygen -t ed25519 ssh-copy-id user@server
  1. 配置密码复杂度:
sudo apt install libpam-pwquality sudo nano /etc/security/pwquality.conf

掌握这些用户和工作组管理命令,你就能高效管理Linux系统的访问控制。建议在日常工作中建立标准的用户创建流程和定期审计机制,这是保障系统安全的重要防线

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/4 2:13:51

3步轻松下载中国大学MOOC课程:免费离线学习完整指南

3步轻松下载中国大学MOOC课程:免费离线学习完整指南 【免费下载链接】MoocDownloader An MOOC downloader implemented by .NET. 一枚由 .NET 实现的 MOOC 下载器. 项目地址: https://gitcode.com/gh_mirrors/mo/MoocDownloader 你是否曾经在通勤路上想学习&…

作者头像 李华
网站建设 2026/7/4 2:13:10

Linux系统信息查看命令大全与实用技巧

1. Linux系统信息查看的必要性作为一名Linux系统管理员或开发者,掌握系统硬件和软件信息是日常工作的基本功。无论是排查性能问题、评估服务器配置,还是编写兼容性脚本,都需要快速准确地获取系统各项参数。记得我刚接触Linux运维时&#xff0…

作者头像 李华
网站建设 2026/7/4 2:12:51

Windows 11未激活状态下恢复桌面图标的3种方法

1. Windows 11未激活状态下的桌面图标管理困境刚装完Windows 11系统还没来得及激活时,很多用户都会遇到一个令人抓狂的问题——桌面空空如也,连最基本的"此电脑"、"控制面板"这些实用图标都找不到。更糟的是,当你右键桌面…

作者头像 李华
网站建设 2026/7/4 2:12:27

Linux开机启动脚本:cron @reboot特性详解与实践

1. Linux开机启动脚本概述在Linux系统管理中,开机自动执行特定脚本是一个常见需求。无论是启动后台服务、初始化系统配置,还是执行维护任务,都需要可靠的启动机制。传统的systemd和rc.local方案各有优缺点,而cron的reboot特性提供…

作者头像 李华
网站建设 2026/7/4 2:07:10

细说ASP.NET Windows身份认证

认识ASP.NET Windows身份认证 要使用Windows身份认证模式&#xff0c;需要在web.config设置&#xff1a; <authentication mode"Windows" />Windows身份认证做为ASP.NET的默认认证方式&#xff0c;与Forms身份认证在许多基础方面是一样的。 上篇博客我说过&a…

作者头像 李华