Linux(二)Linux账号与权限管理

Linux账号与权限管理

文章目录

  • Linux账号与权限管理
  • 一、用户管理
    • 1.1 用户账号和组账号概述
      • 1.1.1 用户分类
        • 1.1.2 组账号分类
        • 1.1.3 UID和GID
      • 1.2 用户账号文件
      • 1.3 添加用户账号
      • 1.4 更改用户密码
      • 1.5 删除用户账号
      • 1.6 用户账号的初始配置文件
  • 二、组管理
    • 2.1 组账号文件
    • 2.2 添加组账号(groupadd)
    • 2.3 删除组账号(groupdel)
  • 三、查询账号信息
    • 3.1 groups命令
    • 3.2 id命令
    • 3.3 w、who、users
  • 四、su命令切换用户
  • 五、文件权限
    • 5.1 访问权限
    • 5.2 归属
    • 5.3 设置文件和目录的权限(chmod)
      • 5.3.1 设置文件权限时有两种方式
      • 5.3.2 设置文件和目录的归属chown
  • 六、提权权限
    • 6.1 sudo机制
    • 6.2 sudo命令
    • 6.3 用户组设置sudo提权
  • 总结

一、用户管理

1.1 用户账号和组账号概述

1.1.1 用户分类

(1)超级用户(Root):Root用户是Linux系统中的管理账户,该用户的UID和GID都是0
(2)普通用户:普通用户账号需要由 root 或其他管理员用户创建,权限有限。在CentOS 7 中普通用户的 UID 从 1000 开始,直到系统允许的最大值。
(3)程序用户:程序用户是安装 Linux 操作系统和应用程序时创建的低权限用户,这些用户不能登录系统,它们主要是维持某个服务的正常运行。在CentOS 7中,UID范围是1~999。

1.1.2 组账号分类

(1)基本组(主组):基本组是用户默认所属的组,通常与用户名相同。在创建用户时,系统会为用户自动创建同名的基本组。
(2)附加组:附加组是用户除了基本组之外,可以加入的其他组。一个用户可以加入多个附加组。

1.1.3 UID和GID

(1)UID:每个用户的身份标示,类似于每个人的身份证号码。系统通过 UID 来管理文件和权限。
(2)GID: 是每个用户组的唯一标识符。系统通过 GID 来控制对共享资源的访问权限。

1.2 用户账号文件

(1)/etc/passwd 文件记录每个用户的基本信息,字段之间用冒号分隔。
(2)各个字符解释:

  • root :用户名。
  • x :密码占位符,表示密码信息保存在 /etc/shadow 中。
  • 0 :UID,root 用户的 UID 是 0。
  • 0 :GID,root 用户的基本组的 GID 也是 0。
  • root :用户描述。
  • /root :宿主目录,root 用户的默认工作目录。
  • /bin/bash :登录 Shell,root 用户登录后使用的默认 Shell。
  • 查看每个用户的基本信息

1.3 添加用户账号

(1)添加用户账号常用的选项

  • -u:指定用户的 UID 号,要求该 UID 号码未被其他用户使用。
  • -d:指定用户的宿主目录位置(当与-M 一起使用时,不生效)。
  • -e:指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。
  • -g:指定用户的基本组名(或使用 GID 号)。
  • -G:指定用户的附加组名(或使用 GID 号)。
  • -M:不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。
  • -s:指定用户的登录Shell。
    (2)添加用户并查看添加的用户

    (3)创建一个辅助管理员账号 wj,将其基本组指定为“wheel”,附加组指定为“root”,宿主目录
    指定为“/wj”

1.4 更改用户密码

(1)更改用户密码常用选项

  • -d:清空指定用户的密码,仅使用用户名即可登录系统。
  • -l:锁定用户账户。
  • -S:查看用户账户的状态(是否被锁定)。
  • -u:解锁用户账户。
    (2)锁定账户,需要root权限

    (3)解锁账户

    (4)面交换设置密码以及更换密码

1.5 删除用户账号

删除账户时,要加选 -r ,表示连用户的宿主目录一并删除

1.6 用户账号的初始配置文件

当使用 useradd 创建新用户时,系统会从 /etc/skel/ 复制默认配置文件到新用户的家目录。
常见的文件:

  • .bash_profile :登录时执行的命令。
  • .bashrc :每次加载 bash 时执行(包括登录)。
  • .bash_logout :用户退出登录时执行。
    如果希望为所有用户添加登录后自动运行的命令程 序、自动设置变量等,可以直接修改/etc 目录下的类
    似文件。

二、组管理

2.1 组账号文件

与组账号相关的配置文件有两个,分别是/etc/group 和/etc/gshadow。前者用于保存组账号名称、GID 号、组成员等基本信息,后者用于保存组账号的加密密码字串等信息。
检索root 组包括哪些用户

检索哪些组包括root 用户

2.2 添加组账号(groupadd)

添加组账号并查询结果

2.3 删除组账号(groupdel)

删除组账号并查询是否删除

三、查询账号信息

3.1 groups命令

查询用户所属的组

3.2 id命令

查询用户身份标识

3.3 w、who、users

w查看已经登录到主机的用户信息

who查看已经登录到主机的用户信息

users查看已经登录到主机的用户信息

四、su命令切换用户

用su切换用户,处于root用户时,切换任意用户不需要密码;处于普通用户时,切换其他用户需要目标用户的密码。

  • 处于root用户时,切换任意用户
  • 处于普通用户时,切换其他用户

五、文件权限

5.1 访问权限

  • 读取 r:允许查看文件内容、显示目录列表 。用数字4表示。
  • 写入 w:允许修改文件内容,允许在目录中新建、移动、删除文件或子目录 。用数字2表示。
  • 可执行x:允许运行程序、切换目录。用数字1表示。

5.2 归属

  • 属主:拥有该文件或目录的用户帐号
  • 属组:拥有该文件或目录的组帐号

5.3 设置文件和目录的权限(chmod)

5.3.1 设置文件权限时有两种方式

  • 数字表 421
  • 字符: u 为用户, g 为组, o 为其他用户 ,a 是所有用户
    修改文件权限为755

    常用 -R 递归修改指定目录下所有子项的权限

5.3.2 设置文件和目录的归属chown

(1)常用命令

  • chown 属主 文件或目录 root:root
  • chown :属组 文件或目录
  • chown 属主:属组 文件或目录
    常用 -R 递归修改指定目录下所有文件、子目录的归属
    (2)修改文件的归属

    (3)修改目录的归属

六、提权权限

6.1 sudo机制

sudo机制是 Linux/Unix 系统中的一种权限管理机制。它允许普通用户以超级管理员(root)或其他用户的身份执行命令,无需切换到 root 用户。

6.2 sudo命令

  • -l 列出用户在主机上可用的和被禁止的命令;配置好/etc/sudoers后,要用这个命令来查看和测试配置是否正确;
  • -v 验证用户的时间戳;用户运行sudo 后,输入用户的密码,在短时间内可以不用输入口令来直接进行sudo 操作;用-v 可以跟踪最新的时间戳;
  • -u 指定以某个用户执行特定操作;
  • -k 删除时间戳,下一个sudo 命令要求用求提供密码;

6.3 用户组设置sudo提权

(1) wjk 用户可以使用useradd usermod
步骤:

  • 修改配置文件,添加 wjk ALL=(root) /usr/sbin/useradd,/usr/sbin/usermod

  • 切换目录并添加用户

    (2) 测试使用sudo 中的 useradd 命令是否需要输入密码,如wjk ALL=(root) NOPASSWD:/usr/sbin/useradd,PASSWD:/usr/sbin/usermod

    用visudo打开配置文件,在配置文件中添加wjk ALL=(root) NOPASSWD:/usr/sbin/useradd,PASSWD:/usr/sbin/usermod

    (3)启用sudo操作日志
    在visudo配置里面进行修改

总结

(1)Linux 用户分为超级用户(root,UID=0)、普通用户(UID≥1000,可登录) 和程序用户(UID=1-999,不能登录,用于跑服务),三者权限逐级递减,实现系统安全隔离。
(2)/etc/passwd 存用户基本信息(用户名、UID、家目录、Shell),密码字段用 x 占位;真正的加密密码存放在 /etc/shadow 中,只有 root 可读,确保密码安全。
(3)通过 visudo 编辑 /etc/sudoers 文件,授权普通用户以 root 身份执行特定命令(如 sudo useradd),操作会被日志记录,兼顾安全与灵活。