引言:用户的授权
在现实的系统应用中,用时用户需要一些权限去完成一些任务或者某一个项目,但是该用户没有相应的权限,这时就要求超级用户对该用户进行权限下放,给予用户授权。
一、权力下放的方式
步骤:
(1)、visudo ##直接进入sudo文件对用户的权限进行修改
100行左右
用户 主机名称=(得到的用户身份) 命令
student localhost=(root) /usr/sbin/useradd ##student用户身份localhost,可以在主机上用hostnamectl命令打开
(2)、执行useradd命令
student locahost=(root) NOPASSWD: /usr/sbin/useradd, /usr/sbin/userdel ##给student用户赋予 useradd、usermod权限
NOPASSWD ##免密码执行
(3)、测试,切换到student用户,并在sudo命令下执行操作,否则操作会失败
su - student
命令: sudo useradd shengchan ##建立生产这个用户
sudo userdel shengchan ##删除生产这个用户
监视建立结果
监视结果
(注:如要进入sudo这个文件直接用 visudo 命令进入修改语法出错则会报错,如果用 vim sudo 编辑不会出现语法报错)
二、文件权限的查看
1、查看文件的属性(详细信息):
(1)、ls -l
(2)、查看文件属性(详细信息)
ls -ld
(3)、查看目录下所属的文件以及子目录和子目录下的所有文件
ls -lR 目录名称
三、文件用户,用户组
Linux是多个用户多任务的系统,常常会有很多人同时用一台主机来工作为了考虑每个人的隐私以及每个人喜好的工作环境,对用户进行分类。
1、文件权限的读取
- | rwx r-x r-x. | |2| |root| |root| |6| |Jan 2 05:47|
【1】 【2】 【3】【4】 【5】【6】 【7】
|test|
【8】
文件的类型
符 号 | 说 明 |
- | 空文件或者文本 |
d | 目录 |
l | 软连接 |
s | socket套接字 |
b | block块设备 |
c | 字符设备 |
【3】对文件:文件硬连接的的个数(文件内容被修改的次数)
对目录:目录中子目录的个数
【4】 文件的所有人
【5】 文件的所有组
【6】 对文件:文件的大小
对目录:目录中子文件元数据(例如文件的属性大小)
【7】 文件内容被修改的时间
【8】 文件的名称
权限对应的人所有人
rw- | rw |r-
1 2 3
符号 | 1 | 2 | 3 |
表示的意义 | (u)文件所有者对文件有哪些操作 | (g)文件所有组队文件有哪些操作 | (o)其他人对文件有什么操作 |
文件拥有者(user); 文件所有组(group); 其他人 (other)
2、改变文件的用户,用户组
格式:chown 用户名 文件
格式:chgrp 组名称 文件
格式:chown -R 用户名 目录
格式:chgrp -R 组名称 目录
chown 用户名:组名称 文件|目录
四、权限的读取
第2~4个字符表示文件所有人的权限
第5~7个字符表示文件所属组的权限
第8~12个字符表示其他人的权限
例如: rwx | r-x | r-x
u g o
文件权限的更改
方法一:通过字符方式修改
格式:chmod <u|g|o><+|-|=><r|w|x> 目录
方法二:通过修改数字的方式修改
格式:chmod 数字 目标
如: r:4 w:2 x:1
7:rwx 6:rw- 5:r-x 4:r-- 3:-wx 2:-wx 1:--x 0:---
五、系统默认权限
当创建一个新文件或目录时,该文件或目录有默认权限umask的分数指的是改i默认值需要剪掉权限的属性上,目录与文件是不一样的,文件的最大权限为666,目录的最大权限为777
umask
查看umask值:
命令:umask
修改umask值:
umask 022 //临时修改umask值
(注:umask是系统所预留的权限,系统建立权限一部分被没收是由于系统安全的原因没有被下放,被没收的权限越多系统就越安全,系统的最大权限-系统预留的权限=目录的权限,目录的权限-111=文件的权限,如:umask=077, 目录为700)
vim // etc / bashrc // 永久修改bash里创建文件的umask值
vim /etc/profile //永久修改每个用户创建文件的umask值
注意:想要永远性的修改 umask 值,一定重新读取两个配置文件后,才能生效,修改完后应该source 这两个文件
六、特殊权限
1、sticky
作用:至针对目录生效,当一个目录上有sticky权限时,在这个目录中的文件的所有者删除
设定方式:
chmod o+t dir ##
chmod 1xxx dir ##xxx表示原始的权限
(1)、
chmod o+t dir
(注:没有设置sticky特殊权限之前不同用户能删除不同用户下的所有者)
(2)、把 /pub/ 修改为特殊权限sticky ;chmod o+t /pub/
(4)、u+s 权限:suid,冒险位
效果:只针对二进制可执行文件,改命令发起的程序是以改用户所用人的身份去执行的
设定方式:
格式:chmod u+s 二进制可执行文件
chmod 4755 二进制可执行文件
在执行二进制的时候文件名和目录由绿色变为红色表示安全性变低(执行冒险位)
(5)、g+s 权限 : 强制位
效果 : 针对二进制可执行文件 : 该命令发起的程序是以该命令所
有组的身份去执行 ; 针对目录 : 目录新建文件的所属组与该目录
的所有组保持一致 ;
设定方式 :
chmod g+s 文件 | 目录
chmod 2755 文件 | 目录
注:执行该文件时系统的安全性会降低由绿色变为红色
七、acl 列表的查看
-rwx-rwxr--+ 1 root root Jul 22 14:15 file
1、acl列表的管理
命 令 | 注 解 |
getfacl file | 查看file文件的权限 |
setfacl -m u:username:rwx file | 对指定的file文件有rwx权力 |
setfacl -m g :group:rwx file | 对指定的group组成员对file文件具体有rwx权限 |
setfacl -x u:username: file | 从acl列表中删除username |
setfacl -b file | 关闭file文件的acl列表 |
(1)、查看文件的权限
命令:getfacl file
(2)、对指定的file文件有rwx权力
注:已经存在的目录以及目录已经存在的文件对于指定的用户可写用到的命令 setfacl -R -m u:username:rwx file
(3)、对指定的group组成员对file文件具体有rwx权限
命令:setfacl -m g :group:rwx file
(4)、关闭file文件的acl列表
命令:setfacl -b file