【账号与权限管理】 📅 2026/7/10 3:48:01 一、用户管理1.1 用户与组的基本概念用户类别在 Linux 系统中用户分为以下三种类型超级用户root拥有系统的最高权限仅用于执行管理操作。普通用户权限受限通常只能操作自己的目录和文件。程序用户用于运行系统服务一般由系统自动创建不允许登录系统。组类别用户账户可以归属于以下两种组基本组主组用户创建时自动生成的默认组通常与用户名相同每个用户有且只有一个基本组。附加组补充组用户除基本组外可加入的其他组一个用户可以同时属于多个附加组用于获取对应组的资源访问权限。1.2 用户账号文件Linux 系统中的用户信息主要存储在以下两个关键文件中/etc/passwd存储用户的基本信息如用户名、UID、家目录和登录 Shell 等。/etc/shadow存储用户的密码信息加密格式及相关属性如密码有效期等权限更严格仅 root 用户可读。用户基本信息文件/etc/passwd其中分别代表的内容为用户名:密码占位符:UID:GID:用户描述:宿主目录:登录Shell用户密码信息文件/etc/shadow1.3 常见的用户命令添加用户账号useradd 用户名添加用户后系统会在/home目录下自动创建一个家目录。可以使用ls /home命令来检查目录是否创建成功或者使用tail -5 /etc/passwd命令来验证用户是否已成功添加。修改用户密码passwd 用户名使用passwd wangwu命令后可以看到让我们输入两遍密码设置密码成功后可以切换用户登录测试。su -是切换用户命令我们需要先切换到一个普通用户下因为从 root 管理员切换到任何用户都不用输入密码。我们先切换到 zhangsan 这个用户下然后再切换到 wangwu 用户下可以看到让我们输入密码输入后显示我们登录上了这表明我们密码设置成功了。注passwd -l 用户名表示锁定用户账号锁住之后就无法登录了。passwd -u 用户名表示解锁用户账号解锁后可以看到会有一次失败的登录信息。删除用户账号userdel -r用户名可以看到 wangwu 用户账号已被删除。注删除用户账号时一定要加 -r 参数否则这个账户无法再次使用创建。1.4用户账号的初始配置文件使用useradd创建新用户时系统会自动将/etc/skel/目录下的默认配置文件复制到新用户的家目录中作为该用户的环境初始设置。这些配置文件主要用于定制用户的工作环境常见文件包括.bash_profile用户登录时执行一次通常用于设置环境变量。.bashrc每次启动 Bash 时执行包括登录和打开子 Shell常用于定义别名、函数等。.bash_logout用户退出登录时执行可用于清理临时文件或记录登出日志。二、组管理2.1组账号文件与组账号关联的配置文件主要有两个分别是/etc/group用于存储组账号的基本信息包括组名、GID组ID以及组成员列表等。/etc/gshadow用于保存组账号的加密密码信息但在实际运维中使用频率较低。在/etc/group文件中每个组所包含的用户成员会记录在该行的最后一个字段中。多个成员之间使用逗号,分隔。组的基本信息文件组的密码文件2.2 常见的组命令添加组gruopadd [-g GID] 组名删除组groupdel 组名三、查询账号信息3.1groups— 查看用户所属的组功能查询指定用户所属的所有组包括基本组和附加组。用法groups [用户名]3.2id— 查看用户身份标识常用功能显示指定用户的 UID用户ID、GID基本组ID以及所属的附加组列表。用法id [用户名]3.3finger— 查看用户详细信息需下载安装功能显示用户的详细信息包括登录名、真实姓名、家目录、登录 Shell、最后登录时间等。用法finger [用户名]3.4w、who、users— 查看已登录用户信息这三个命令均用于查看当前登录到系统的用户信息但详细程度和展示风格有所不同。users 仅列出当前登录的用户名who 显示当前登录用户的基本信息w 显示当前登录用户的详细信息四、文件权限4.1 查看访问权限访问权限分为三种读写执行权限字符数字作用读r4允许查看文件内容写w2允许修改文件内容执行x1允许运行该文件程序或脚本查看权限ls -l 目录或文件其中左侧代表的是权限分别解释为命令输出的权限字符串共包含 10 个有效字符末尾的 . 为 SELinux 标记稍后单独说明其整体结构可划分为四个部分[类型位][属主权限][属组权限][其他用户权限]1位 3位 3位 3位现在这个目录的权限为所属主拥有全部的权限所属组只有读和执行的权限其他人有读和执行的权限。4.2 查看归属属主拥有该文件或目录的用户账号。属组拥有该文件或目录的组账号。现在这个目录的归属为属主是 root属组是 root。4.3 设置权限和归属设置权限chmod -R [ugoa] [-] [rwx] 文件或目录 或 chmod -R nnn 文件或目录可用看到 0707 的权限全部变为 可读可写可执行-R 表示递归即修改当前目录下所有文件。设置归属chown -R 属主:属组 文件或目录可以看到 0707 目录下的所有文件或目录的属主和属组都从 root 变为了 zhangsan五、提权权限5.1sudo 机制介绍sudoSuperuser Do机制提供了一种更安全的折中方案允许普通用户在授权范围内执行部分特权命令而无需知晓 root 密码。该机制由管理员预先在/etc/sudoers文件中进行授权配置明确允许哪些用户在哪些主机上执行哪些命令。5.2sudo 命令常用选项sudo -l列出当前用户在主机上可执行和禁止执行的命令sudo -v刷新用户的时间戳。sudo 会在验证密码后一段时间内免密执行sudo -u以指定用户的身份执行命令sudo -k清除时间戳使下次执行 sudo 时必须重新输入密码5.3 授权配置详解/etc/sudoers/etc/sudoers文件的默认权限为440必须使用visudo命令进行编辑该命令会进行语法检查避免因配置错误导致 sudo 不可用。若使用vi强制编辑保存时需执行:w!。格式如下用户/组 主机名 命令userMACHINE COMMANDS用户可以是具体的用户名也可以使用 %组名 的形式表示授权给该组内的所有用户。主机名允许执行命令的主机名称。在单机环境中通常设置为 localhost 或实际主机名主要用于多主机共享同一份 sudoers 文件。命令允许通过 sudo 执行的特权命令列表需填写命令的绝对路径如 /bin/systemctl restart httpd。多个命令之间使用逗号 , 分隔。5.4 案例案例一需求wangliu 用户可以使用useradd usermodwangliu root用户下的权限 useradd usermod配置1.创建 wangliu 用户并设置密码2.使用 visudo 命令修改文件3.验证切换用户到 wangliu使用 sudo /usr/sbin/useradd tom 命令添加 Tom 用户账号使用 ls /home 或 tail -5 /etc/passwd 验证用户是否创建成功。案例二用户可以临时创建网卡1.创建用户账号并设置密码2.编辑配置文件visudo3.验证切换用户到 Tom 修改IP六、总结1.了解用户账号的分类。2.用户账号和密码存放的位置 /etc/passwd /etc/shadow。3.一些常见的创建用户和组的命令创建账号/组useradd 账号名 groupadd 组名删除账号/组userdel -r 账号名 groupdel 组名修改密码passwd 账号名4.明白了文件或目录的权限有哪些归属有那些。5.文件权限的设置chmod -R [ugoa] [-] [rwx] 文件或目录 或 chmod -R nnn 文件或目录。归属的设置chown -R 属主:属组 文件或目录。6.运用 visudo 配置文件给普通用户提高权限。