LInux账号和权限管理

目录

一、账号管理

1、用户账号类型

2、组账号

3、用户文件

4、账号管理命令

4.1、useradd

4.2、passwd

4.3、usermod

4.4、userdel

5、组管理命令

5.1、groupadd

5.2、gpasswd

5.3、groupdel

6、查询命令

二、文件和目录权限

1、文件权限

2、chmod

3、chown

4、umask


一、账号管理

账号管理涉及到对用户的创建、删除、修改、权限分配等操作。每个 Linux 用户都与系统资源(如文件、进程等)相关联,管理员通过有效管理用户账号来确保系统安全和资源的有效利用。

1、用户账号类型
  • 用户(User):在 Linux 系统中,每个登录的个体(无论是管理员还是普通用户)都需要一个唯一的标识符(用户名和用户ID,UID)。系统会根据这些标识符来区分不同用户。
  • UID(User ID):用户的唯一标识符。UID为0是超级用户(root),UID 1~999是程序用户,UID 1000~60000是普通用户。
  • GID(Group ID):用户所属的组的GID。每个用户至少属于一个用户组。
2、组账号

用户组不仅方便权限管理,还能为多个用户提供一致的访问控制。通过将用户组织到组中,系统管理员可以方便地管理用户对资源的访问权限。

每个组都有以下基本信息,这些信息通常存储在/etc/group文件中:

组名:组的名称,用于标识一组用户。

GID:组用户的唯一标识符。用户通常属于一个或多个用户组,组内的用户可以共享一些权限。

3、用户文件

用户文件管理每个用户的设置、权限、文件存储位置等。

  • /etc/passwd:存储系统所有用户的基本信息,包括用户名、UID、GID、用户主目录和默认shell等。
  • /etc/shadow:存储用户加密密码、密码的其他信息和账户过期等信息。只有root用户可以访问。
  • /etc/group:存储系统所有用户组信息。
  • /etc/gshadow:存储用户组的加密信息
  • /etc/skel:存储新创建用户的默认配置文件和模板文件。创建新用户时,系统自动复制文件到新用户的家目录。
4、账号管理命令
4.1、useradd

useradd功能是创建并设置用户信息

语法格式:useradd 参数 用户名

-u设置用户UID号-G设置用户的附加用户组
-d设置新用户登录使用的家目录-M不建立用户家目录
-e设置用户的失效时间-s设置用户的默认shell
-g设置用户的基本用户组-m创建用户目录

参考示例:

[root@localhost ~]# useradd -m -s /bin/bash -G wheel zzz
[root@localhost ~]# id zzz
uid=1001(zzz) gid=1001(zzz) 组=1001(zzz),10(wheel)
4.2、passwd

password缩写,功能是修改用户的密码值;同时也可以对用户进行锁定等操作,但需要管理员身份才可以执行。

常用格式:passwd 参数 用户名

-d清除已有密码-S显示当前密码状态
-l锁定用户密码-u解锁用户密码
-f强制执行操作

参考示例:

[root@localhost ~]# passwd zzz
更改用户 zzz 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]# passwd -l zzz
锁定用户 zzz 的密码 。
passwd: 操作成功
[root@localhost ~]# tail -1 /etc/shadow
zzz:!!:20114:0:99999:7:::
[root@localhost ~]# passwd -d zzz
清除用户的密码 zzz。
passwd: 操作成功
[root@localhost ~]# passwd -fu zzz
解锁用户 zzz 的密码。
passwd: 操作成功
4.3、usermod

user modify的缩写,功能是修改用户信息中的各项参数。

语法格式:usermod 参数 用户名

-l修改用户名称-e修改用户的有效期限
-L锁定用户密码

-g

修改用户所属组
-u修改用户UID号-G修改用户附加组
-U解锁密码锁定-s修改用户登陆后使用的shell
-d修改用户登录时的家目录

参考示例:

[root@localhost zzz]# usermod -L zzz                  //锁定密码
[root@localhost zzz]# passwd -S zzz
zzz LK 2025-01-26 0 99999 7 -1 (密码已被锁定。)
[root@localhost zzz]# passwd -U zzz                   //解锁密码
[root@localhost zzz]# passwd -S zzz
zzz PS 2025-01-26 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)
[root@localhost ~]# usermod -l xqc zzz                //修改用户名
[root@localhost ~]# id zzz
id: zzz: no such user
[root@localhost ~]# id xqc
uid=1001(xqc) gid=1001(zzz) 组=1001(zzz),10(wheel)
4.4、userdel

user delete的缩写,功能是删除用户信息。

语法格式:userdel 参数 用户名

-f强制删除用户
-r删除用户的家目录及其内全部子文件

参考示例:

[root@localhost ~]# userdel -r xqc
[root@localhost ~]# id xqc
id: xqc: no such user
[root@localhost ~]# cd /home
[root@localhost home]# ls
123123
5、组管理命令
5.1、groupadd

功能是创建新的用户组。

语法格式:groupadd 参数 用户组

参考示例:

[root@localhost home]# groupadd xqc
[root@localhost home]# tail -1 /etc/group
xqc:x:1002:
5.2、gpasswd

group passwd的缩写,功能是设置管理用户组。

语法格式:gpasswd 参数 用户组名

-a添加用户到指定组-d从组中删除用户
-M设置组成员

参考示例:

[root@localhost home]# gpasswd -a QAQ xqc
正在将用户“QAQ”加入到“xqc”组中
[root@localhost home]# gpasswd -d QAQ xqc
正在将用户“QAQ”从“xqc”组中删除
5.3、groupdel

delete a group的缩写,功能是删除用户组。

语法格式:groupdel 参数 群组名

参考示例

[root@localhost home]# groupdel xqc
6、查询命令
  • w是单词who的缩写,功能是显示已登录用户的信息。
  • who功能是显示当前登录用户的信息,包含登陆的用户名、终端、日期时间、进程等信息。
  • users功能是显示当前登录系统的所有用户的用户列表。
[root@localhost home]# w
 20:45:44 up 34 min,  2 users,  load average: 0.00, 0.03, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.153.1    20:12    0.00s  0.18s  0.00s w
root     pts/1    192.168.153.1    20:44    8.00s  0.13s  0.05s bash
[root@localhost home]# who
root     pts/0        2025-01-26 20:12 (192.168.153.1)
root     pts/1        2025-01-26 20:44 (192.168.153.1)
[root@localhost home]# users
root root

二、文件和目录权限

1、文件权限

在 Linux 中,通过为用户、用户组和文件设置不同的权限,来控制谁可以访问、修改、执行哪些文件和程序。Linux 使用文件权限访问控制列表(ACL)来管理文件和目录的访问权限。

每个文件和目录都有三个权限角色:

  • 所有者(Owner):文件的创建者或者管理员指定的用户。
  • 用户组(Group):文件所属的用户组中的所有用户。
  • 其他用户(Others):除了所有者和用户组外的其他所有用户。

每个文件和目录的都有三种基本权限:

  • 读取权限(r,4):允许查看文件内容或列出目录内容。
  • 写入权限(w,2):允许修改文件内容或在目录中创建、删除文件。
  • 执行权限(x,1):允许执行文件或进入目录。
  • 如果某个权限不存在,则用 - 表示。
2、chmod

change mode的缩写,功能是改变文件或目录权限的命令。

语法格式:chmod 参数 文件名

-R递归处理所有子文件

参考示例:

[root@localhost opt]# ll
-rw-r--r--. 1 root root 2341 1月  26 21:06 passwd
[root@localhost opt]# chmod g+w passwd
[root@localhost opt]# ll
-rw-rw-r--. 1 root root 2341 1月  26 21:06 passwd
[root@localhost opt]# chmod o= passwd
[root@localhost opt]# ll
-rw-rw----. 1 root root 2341 1月  26 21:06 passwd
[root@localhost opt]# chmod u=rwx,g=rw,o=r passwd
[root@localhost opt]# ll
-rwxrw-r--. 1 root root 2341 1月  26 21:06 passwd
[root@localhost opt]# chmod 622 passwd
[root@localhost opt]# ll
-rw--w--w-. 1 root root 2341 1月  26 21:06 passwd
3、chown

change owner的缩写,功能是改变文件或目录的用户和用户组信息。

语法格式:chown 参数 所属主:所属组 文件名

-R递归处理所有子文件

参考示例:

[root@localhost opt]# chown padoru:QAQ passwd
[root@localhost opt]# ll
drwxr-xr-x. 2 root   root  106 1月  26 21:18 aa
-rw--w--w-. 1 padoru QAQ  2341 1月  26 21:06 passwd
[root@localhost opt]# chown -R padoru:QAQ aa
[root@localhost opt]# ll /opt/aa
-rw-r--r--. 1 padoru QAQ 0 1月  26 21:18 0a
-rw-r--r--. 1 padoru QAQ 0 1月  26 21:18 1a
-rw-r--r--. 1 padoru QAQ 0 1月  26 21:18 2a
-rw-r--r--. 1 padoru QAQ 0 1月  26 21:18 3a
-rw-r--r--. 1 padoru QAQ 0 1月  26 21:18 4a
4、umask

umask是一个用于设置新创建文件或目录的默认权限的命令或环境变量。umask的作用是控制新文件和目录的权限掩码,即通过指定不应给予的权限,来确定文件或目录的默认权限。

Linux系统中的默认权限通常是:

  • 文件:通常是666(rw-rw-rw-),即所有用户都具有读和写权限。
  • 目录:通常是777(rwxrwxrwx),即所有用户都具有读、写、执行权限。

计算方式:

如果umask设置没022

  • 文件的权限=666-022=644(rw-r--r--)
  • 目录的权限=777-022=755(rwxr-xr-x)

语法格式:umask 参数 权限掩码

参考示例:

[root@localhost opt]# umask
0022
[root@localhost opt]# umask 012
[root@localhost opt]# umask
0012
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值