今天我们继续学习继续学习高级权限
首先学习的suid权限,/usr/bin/passwd文件里存储的是用户信息,使用ll命令查看/usr/bin/passwd文件
ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27856 4月 1 2020 /usr/bin/passwd发现第四个字母是s,s表示特殊权限suid权限的含义为给没有相应权限的用户配置权限,即让本来没有相应权限的用户也可以访问本没有权限访问的资源。
普通用户可以suid提升权限,下面给出一个例子
[root@localhost swxy]# chmod u+s /usr/bin/cat
[root@localhost swxy]# ll /usr/bin/cat
-rwsr-xr-x. 1 root root 54080 11月 17 2020 /usr/bin/cat
[root@localhost swxy]# su zhouzhiyi20197818
[zhouzhiyi20197818@localhost swxy]$ cat /root/file01.txt
在这个例子中/usr/bin/文件本来只允许root用户查看,通过chmod命令给root用户添加suid权限,切换我们创建的普通用户后也可以查看/usr/bin文件了。
接着我们继续学习sgid权限,上面是针对用户的权限,而sgid权限是针对用户所属组的权限,其含义为给用户组添加一个临时的用户组,在这之后这个目录下创建的文件都会继承这个用户组
[root@localhost swxy]# mkdir /home/hr
[root@localhost swxy]# groupadd hr
groupadd:“hr”组已存在
[root@localhost swxy]# chgrp hr /home/hr
[root@localhost swxy]# ll -d /home/hr
drwxr-xr-x. 2 root hr 6 10月 25 16:02 /home/hr
[root@localhost swxy]# touch /home/hr/file02
[root@localhost swxy]# ll /home/hr/file02
-rw-r--r--. 1 root root 0 10月 25 16:05 /home/hr/file02
[root@localhost swxy]# chmod g+s /home/hr
[root@localhost swxy]# // -d /home/hr
bash: //: 是一个目录
[root@localhost swxy]# ll -d /home/hr
drwxr-sr-x. 2 root hr 20 10月 25 16:05 /home/hr
[root@localhost swxy]# touch /home/hr/file03
[root@localhost swxy]# ll /home/hr
总用量 0
-rw-r--r--. 1 root root 0 10月 25 16:05 file02
-rw-r--r--. 1 root hr 0 10月 25 16:07 file03
这个例子就可以看到我们hr用户组加入到创建的/home/hr这个目录之中在添加sgid权限之前创建的file02就没有继承hr用户组,而之后的file03继承了。
之后我们来学习sticky权限,在添加sticky权限后,当用户对目录具有w、x权限,在该目录下建立的文件或目录,仅有这个用户和root才有权限可以删除。
我们创建一个目录然后赋予777权限,此时用普通用户在该目录下创建一个文件用另外一个普通用户是可以进行删除的,但切换回第一个普通用户然后添加sticky权限后就只有这个普通用户和root用户可以删除这个文件了。
通常添加sticky权限使用ll -d命令查看时会发现它显现为t参数并占据原来应该时x权限的位置,当t参数为大写时,就表示这个目录不含有x权限,当t参数为小写时,表示这个目录有x权限。
为了保护系统文件,Linux系统会使用chattr命令改变文件的隐藏属性,lsattr可以查看文件的隐藏属性
使用man工具可以查看chattr命令的yongfa,man工具相当于我们使用编程语言里的注释文档,是纲注命令。
chattr +a file01
[root@localhost swxy]# lsattr file01
-----a---------- file01
使用chattr命令给file01文件增加a属性然后通过lsattr可以查看
[root@localhost swxy]# vim file02
[root@localhost swxy]# cat file02
linux
[root@localhost swxy]# chattr +a file02
[root@localhost swxy]# echo "www.zhouzhiyi20197818.com" >> file02
[root@localhost swxy]# cat file02
linux
www.zhouzhiyi20197818.com
首先使用vim命令编辑file02文件并向里面写入内容linux,此时可以通过cat命令进行查看。给file02文件增加a属性后,此时不能再用vim命令写入文本,需要使用echo命令追加写入
我们先介绍两种重定向“>"和”>>",“>"是输出重定向会一直覆盖之前原有写入的信息,最后输出是最新一次的信息,">>"是追加重定向,它会输出每一次写入的内容,
接着上面使用chattr命令给文件添加a属性后只能通过echo命令追加重定向才能写入
给文件添加i属性后,该文件只能读取,没有其他修改权限。所以一般会给/etc/passwd文件添加i属性来保证安全。
然后我们来学习进程掩码umask
当用户创建新目录或文件时,系统会赋予目录或文件一个默认的权限,umask的作用是指定权限默认值。
标签:hr,swxy,第八,博客,Linux,home,权限,root,localhost From: https://www.cnblogs.com/Yukino0/p/17788098.html