Linux用户&群组&权限
⦁ Linux安全性模型
1)Linux使用User和Group控制使用者对文件的存取权限
2)用户使用账号和口令登录Linux
3)每个文件都有owner,并且owner属于某个Group
4)每个程序都有owner和Group
⦁ 用户概述
1、每个用户都有一个唯一的User ID
2、User的信息存储在/etc/passwd中
1)存储用户名和home目录等信息
2)/etc/shadow
3、每个User都有一个home目录
4、User未经授权将禁止读写或执行其他User的文件
5、root用户解读
1)超级管理员账号,具有至高无上的权限
2)一般不要随便用root登录并操作系统
⦁ 用户群组概述
1、每个User都属于一个Group,具有唯一的标识符gid
2、Group信息存储于/etc/group中
1)gid、成员等
系统默认的账户群组id<500 自定义的账户群组gid>=500
2)/etc/gshadow
3、系统会为每个User关联一个和User同名的Group
1)每个User至少存在于自己同名的Group中
2)User也可以加入其他的Group
4、在同一个Group中的成员可以共享其他成员的文件
⦁ Linux权限种类
1、读权限,用r表示(read) 可以读取文件或者列出目录的内容(ls)
2、可写权限,用w表示(write) 可以写、删除文件或者目录
3、可执行权限,用x表示(execute)
1)可以执行可执行文件
2)可以进入目录并使用cd切换进入目录
4、没有任何权限,用-表示
⦁ Linux文件和目录权限解读
1、文件和目录属性解读
drwxrwxrwx
d 表示该对象是文件夹
- 表示这是文件
后面每3位为 rwx 分别表示 read write 和 execute 权限 - 表示没有权限
红色的表示用户的权限
黄色的表示群组的权限
黑色的表示特例用户的权限
⦁ Linux权限验证流程
⦁ 设置Linux文件和目录的权限
1、字符表示法
1)chmod [-R] mode file
2)模式类别
chmod [-R] mode file
eg. chmod [ugo] [+-=] [rwx] filename
eg. chmod [ugo] [+-=] [rwx] *
2、数字表示法
1)使用一组三位数字来表示
2)第一组代表owner的权限
3)第二组代表group的权限
4)第三组代表others的权限
chmod 777 * 读写执行权限 赋予给每个文件
⦁ 用户的主要群组和次要群组
1、主要群组 每个文件必须有一个组所有者,因此必须有一个与每个用户相关的默认组,这个默认 组成为新建文件的组所有者,被称作用户的主要群组。用户的主要群组在passwd文件 中的第四个字段中定义。
2、次要群组 除了主要群组,用户也可以根据需要再隶属于其他群组,这些组被称为次要群组,在 group文件中的第四个字段中定义
⦁ 用户的管理
1、useradd [-u UID] [-g 主要群组] [-G 次要群组] [-mM] [-c 说明] [-d 家目录] [-s shell]
-u:制定一个特殊的UID给该账号 系统账号<500 用户账户>=500
-g:指定一个主要群组的名称,会修改passwd文件
-G:指定次要群组的名称,会修改group文件
-M:强制不要创建用户家目录,系统账号默认
-m:强制建立用户家目录,一般账号默认
-c:passwd文件的第五个字段的说明文字
-d:指定用户的家目录位置,不要使用默认的值
-s:指定默认的shell,如果没有指定则默认是/bin/bash
2、usermod [-cdegGlsuLU] username
-c:该账号的说明文字
-d:账号的家目录
-e:指定用户帐号禁用的日期,格式YY-MM-DD
-G:修改次要群组的名称,会修改group文件
-g:修改主要群组名称
-a:与-G合用,可增加次要群组
-l:将当前账号的名称重命名为指定的名称
-u:修改UID
-L:暂时将用户的密码冻结无法登录
-U:解冻账号,其实是删除shadow的!字符
3、userdel [-r] username
-r:连同用户的家目录一起删除
4、passwd,修改密码
⦁ 用户信息的检查
1、finger [-s] username:查阅用户相关的信息 -s:仅仅列出用户的账号、全名、登录时间等
2、id,可以查阅某人或者自己相关的UID、GID信息
3、whoami
4、who&w
5、users
6、groups
⦁ 用户群组的管理
1、groupadd [-g gid] [-r] 组名
-g:后面接特定的GID,用来指定GID
-r:建立系统群组
2、groupmod [-g gid] [-n group_name] 群组名
-g:修改既有的GID数字
-n:修改既有的组名
3、groupdel [groupname] 删除特定的群组
⦁ 默认权限的控制
1、内核级别,文件的默认权限是666
2、内核级别,目录的默认权限是777
3、通过umask来阻止一些权限,从而产生最终的权限
4、非管理账号的umask为0002
5、root的umask为0022
6、umask作用原理
7、使用减法计算是错误的