-
特殊权限(了解)
-
特殊位 suid
-
高级权限的类型
-
suid
-
针对文件/程序时,具备临时获得属主的权限。
-
请思考
-
问题1
-
问题1: 下面的操作,为什么会失败! [root@localhost ~]# ll /root/file1.txt -rw-r--r-- 1 root root 4 7月 27 14:14 /root/file1.txt [root@localhost ~]#su - alice [alice@localhost ~]$ cat /root/file1.txt cat: /root/file1.txt: 权限不够 分析:root运行是超管的权限,普通用户运行时是普通用户的权限。 root /usr/bin/cat (root) /root/file1.txt OK alice /usr/bin/cat (alice) /root/file1.txt
-
-
-
示例1
-
设置suid,使普通用户通过suid临时提权,查看超管root用户的文件
-
1.为cat程序添加上suid权限。
-
[root@localhost ~]# ll /usr/bin/cat -rwxr-xr-x. 1 root root 54080 8月 20 2019 /usr/bin/cat [root@localhost ~]# chmod u+s /usr/bin/cat [root@localhost ~]# ll /usr/bin/cat -rwsr-xr-x. 1 root root 54080 8月 20 2019 /usr/bin/cat 自习观察输出信息2(这两次有什么不同呢?)
-
-
2.使用普通用户运行cat。暂时获得root权限
-
[root@localhost ~]# su - alice
-
[alice@localhost ~]$ cat /root/file1.txt
-
结果,普通用户,看到了root的内容。这个行为很危险
-
请在试验后,将cat的suid权限除去。
-
[root@localhost ~]# chmod u-s /usr/bin/cat
-
[root@localhost ~]# ll /usr/bin/cat
-
自习观察输出信息3(请确认是否删除suid特殊权限)
-
-
-
-
sgid
-
针对目录授权,可以使目录下新建文件,继承目录的属组权限。
-
1.创建目录
-
mkdir /tmp/dir-sgid
-
ll -d /tmp/dir-sgid
-
-
2.创建用户和组
-
groupadd xiaozu
-
useradd u1 -G xiaozu
-
useradd u2 -G xiaozu
-
-
3.修改目录的权限
-
chown .xiaozu /tmp/dir-sgid
-
chmod g=rwx /tmp/dir-sgid
-
ll -d /tmp/dir-sgid
-
-
4.切换用户测试
-
su - u1
-
touch /tmp/dir-sgid/u1-1.txt
-
su - u2
-
touch /tmp/dir-sgid/u2-1.txt
-
ll /tmp/dir-sgid
-
-
5.增加sgid位
-
chmod g+s /tmp/dir-sgid/
-
ll -d /tmp/dir-sgid
-
-
6.观察用户在新建文件时,文件会自动继承目录的属组
-
su - u1
-
touch /tmp/dir-sgid/u1-2.txt
-
touch /tmp/dir-sgid/u1-3.txt
-
ll /tmp/dir-sgid
-
-
-
stick
-
针对目录设置,目录内的文件,仅属主能删除
-
chmod o+t /tmp/dir-sgid/
-
切换用户,只能删除自己的文件。
-
-
-
-
文件属性chattr
-
用途
-
常用于锁定某个文件,拒绝修改。
-
-
分类
-
案例
-
1 先创建新文件进行对比。查看默认权限。
-
[root@localhost ~]# touch file100 [root@localhost ~]# lsattr file100 -------------- file100
-
-
2 加上不能删除的属性。
-
[root@localhost ~]# chattr +i file100
-
不能更改,重命名,删除
-
-
-
3 查看不同属性
-
[root@localhost ~]# lsattr file100 ----i--------- file100
-
-
4 尝试删除
-
[root@localhost ~]# rm -rf file100 rm: cannot remove `file100': Operation not permitted
-
-
5 将属性还原。
-
[root@localhost ~]# chattr -i file100
-
-
-
注意
-
设置文件属性(特别权限),针对所有用户,root是否会收到影响呢?
-
-
-
进程掩码 umask
-
概述
-
新建文件、目录的默认权限会受到umask的影响,umask表示要减掉的权限
-
-
示例1:观察系统默认掩码
-
示例1: 在shell进程中创建文件,先查看当前用户的umask权限 [root@localhost ~]# umask 0022 [root@localhost ~]# touch file800 [root@localhost ~]# mkdir dir800 [root@localhost ~]# ll -d dir800 file800 drwxr-xr-x. 2 root root 4096 3月 11 19:40 dir800 -rw-r--r--. 1 root root 0 3月 11 19:40 file800
-
-
示例2:老铁,双击666 修改shell umask值(临时)
-
示例2:修改shell umask值(临时) [root@localhost ~]# umask 000 [root@localhost ~]# mkdir dir900 [root@localhost ~]# touch file900 [root@localhost ~]# ll -d dir900 file900 drwxrwxrwx. 2 root root 4096 3月 11 19:44 dir900 -rw-rw-rw-. 1 root root 0 3月 11 19:44 file900
-
-
-
用户的权限(下)特殊权限
最新推荐文章于 2024-09-15 22:47:38 发布
本文详细解释了Linux中特殊权限SUID、SGID的作用,如何通过它们临时提升权限,以及SGID在目录授权中的应用。还介绍了文件属性chattr和umask对文件权限的影响,提醒用户安全使用这些技术。
摘要由CSDN通过智能技术生成