防火墙
semanage port ,
selinux
semanage ...
软件app
semanage boolean
文件系统权限 特殊权限 facl
semanage fcontext
1.Linux文件权限简介
权限分类
r
read
w
write
x
execute
2.Linux系统的权限表示
# ls -l test
-rw-r--r-- . 1 stu1 class1 35 May 21 14 :09 test
rw-r--r--
stu1 所有者
class1 所属组
3.Linux系统的权限的作用
权限
对文件的影响
对目录的影响
r
cat
ls
w
vim
touch,rm,mkdir
x
./script
cd
4.使用符号方式修改文件权限
对象
u(user)
+ (添加)
r
g(group)
- (减去)
w
o(other)
= (设置)
x
a(all)
s(SUID、SGID)
t(Sbit)
5. 使用数字方式修改文件权限
rwx
8进制表示
数字表示
r--
100
4
-w-
010
2
--x
001
1
6.文件权限设置实例 chmod
语法:
chmod 权限 文件名
u g o a + - = r w x s t
例:
[root@node1 /]# cd /opt/
[root@node1 opt]# ls
[root@node1 opt]# touch test
[root@node1 opt]# ll test
-rw-r--r--. 1 root root 0 Nov 24 04:55 test
[root@node1 opt]# chmod u+x test
[root@node1 opt]# ll test
-rwxr--r--. 1 root root 0 Nov 24 04:55 test
练习:文件权限修改
文件权限修改
[root@edug opt]# touch aa.txt
[root@edug opt]# ll aa.txt #每次修改权限去自己检验查询
[root@edug opt]# chmod u+x aa.txt
[root@edug opt]# chmod u-rw aa.txt
[root@edug opt]# chmod u+r,g+w,o+x aa.txt
[root@edug opt]# chmod ug+rw aa.txt
[root@edug opt]# chmod ugo+rwx aa.txt # chmod a+rwx , chmod a=rwx, ugo+rwx
[root@edug opt]# chmod a-rwx aa.txt
[root@edug opt]# chmod o=--- aa.txt # o=-
[root@edug opt]# chmod u=r aa.txt
[root@edug opt]# chmod u=rw aa.txt
[root@edug opt]# chmod u=r,g=rw,o=x aa.txt
[root@edug opt]# chmod ugo=rwx aa.txt
[root@edug opt]# chmod a=r aa.txt
练习:数字修改方法
[root@edug opt]# mkdir dir1
[root@edug opt]# ll -d dir1
drwxr-xr-x. 2 root root 6 Nov 24 05:04 dir1
[root@edug opt]# chmod 775 dir1
[root@edug opt]# ll -d dir1
drwxrwxr-x. 2 root root 6 Nov 24 05:04 dir1
设置文件属主和属组 chown
chown
语法:
chown 所有者:所属组 文件名
chown 该命令可以作用域文件、目录,修改时保证所有者的用户,及组都是存在的。
例:
chown user2:user2 newfile
练习:
[root@edug opt]# ll test
-rwxr--r--. 1 root root 0 Nov 24 04:55 test
[root@edug opt]# id student
uid=1000(student) gid=1000(student) groups=1000(student),10(wheel)
[root@edug opt]# useradd harry
[root@edug opt]# chown student test;ll test
-rwxr--r--. 1 student root 0 Nov 24 04:55 test
[root@edugopt]# chown :harry test;ll test
-rwxr--r--. 1 student harry 0 Nov 24 04:55 test
[root@edug opt]# useradd sally
[root@edug opt]# chown sally:sally test ; ll test
-rwxr--r--. 1 sally sally 0 Nov 24 04:55 test
[root@edug opt]# ls
dir1 test
[root@edug opt]# touch dir1/test2
[root@edug opt]# ll -d dir1
drwxrwxr-x. 2 root root 19 Nov 24 05:15 dir1
[root@edug opt]# ll dir1
total 0
-rw-r--r--. 1 root root 0 Nov 24 05:15 test2
[root@edug opt]# chown -R sally:sally dir1
[root@edug opt]# ll -d dir1
drwxrwxr-x. 2 sally sally 19 Nov 24 05:15 dir1
[root@edug opt]# ll dir1/test2
-rw-r--r--. 1 sally sally 0 Nov 24 05:16 dir1/test2
7.文件默认权限 umask
系统默认定义权限对于文件666对于目录来说777
查看umask值方法
[root@servera /]
0022
修改方法umask
[root@servera /]
修改完后,可以去文件和目录查看权限,看是否和之前不一样,看完改回来
永久生效
[root@servera /]
[root@servera /]
练习:
文件默认权限666
umask后三位022
快捷方法:变成权限后相减
rw-rw-rw- = 666 文件默认权限
---w--w- = 022 umask值
------------------------------
rw-r--r-- = 644
文件默认权限是644
默认目录权限777
rwxrwxrwx = 777 目录默认权限
----w--w- = 022 umask值
------------------------------
rwxr-xr-x = 755
参考umask计算方法:https://www.cnblogs.com/wyllearning/p/16482006.html
要求文件权限结果 r--r--r--
rw-rw-rw- = 666 默认
xx xxx umask
-----------------------
r--r--r-- = 结果
rw-rw-rw- = 666 默认
r--r--r-- = 结果
______________________
-w--w--w-= 0222
rwxrwxrwx = 777
r-xr-xr-x = 555
-----------------
-w--w--w- = 0222
umask 0222
8.特殊权限
SUID 4
通常设置在二进制可执行文件(命令)上,并具有执行权限的情况下。作用:设置了该权限的命令,被其他用户执行时,会临时获取文件所有者权限。
[student@clear ~]$ su - studnet
[student@clear ~]$ cat /etc/shadow #普通用户无法查看/etc/shadow
[student@clear ~]$ su - root #切换root身份
[root@clear ~]# chmod u+s /usr/bin/cat #数字修改方式:chmod 4755 /usr/bin/cart
[root@clear ~]# ll /usr/bin/cat
-rwsr-xr-x. 1 root root 34512 Aug 13 2018 /usr/bin/cat
[student@clear ~]$ su - studnet
[student@clear ~]$ cat /etc/shadow #能够看见内容,临时获取拥有者权限
chmod 4755 /usr/bin/cat
SGID 2
该权限通常设置在`目录`上,设置了该权限的目录,在该目录中创建`子文件及目录`时会`继承`父目录所属组。
[root@clear ~]# cd /opt/
[root@clear opt]# ls
[root@clear opt]# mkdir dir1
[root@clear opt]# chown student:student dir1
[root@clear opt]# ll -d dir1
drwxr-xr-x. 2 student student 6 Nov 19 04:50 dir1
[root@clear opt]# touch dir1/root.txt
[root@clear opt]# ll dir1/root.txt
-rw-r--r--. 1 root root 0 Nov 19 04:51 dir1/root.txt
[root@clear opt]#
[root@clear opt]# chmod g+s dir1
[root@clear opt]# ll -d dir1
drwxr-sr-x. 2 student student 22 Nov 19 04:51 dir1
[root@clear opt]# touch dir1/root1.txt
[root@clear opt]# ll dir1/root1.txt
-rw-r--r--. 1 root student 0 Nov 19 04:52 dir1/root1.txt
数字修改法: chmod 2755 dir1
SBIT(粘滞位) 1
该权限通常设置在目录上,设置了该权限的目录,其他用户在该目录中只能删除所有者是自己的文件。
[root@clear opt]# rm -rf *
[root@clear opt]# ls
[root@clear opt]# mkdir share
[root@clear opt]# chmod 777 share/
[root@clear opt]# id student
uid=1000(student) gid=1000(student) groups=1000(student),10(wheel)
[root@clear opt]# useradd tom
[root@clear opt]# id tom
uid=1005(tom) gid=1005(tom) groups=1005(tom)
[root@clear opt]# su - student
Last login: Sat Nov 19 04:46:47 EST 2022 on pts/0
[student@clear ~]$ touch /opt/share/student.txt
[student@clear ~]$ logout
[root@clear opt]# su - tom
[tom@clear ~]$ rm -f /opt/share/student.txt
[tom@clear ~]$ logout
[root@clear opt]# chmod 1777 /opt/share/
[root@clear opt]# ll -d /opt/share/
drwxrwxrwt. 2 root root 6 Nov 19 04:56 /opt/share/
[root@clear opt]# su - student
Last login: Sat Nov 19 04:55:24 EST 2022 on pts/0
[student@clear ~]$ touch /opt/share/student.txt.haha
[student@clear ~]$ logout
[root@clear opt]# su - tom
Last login: Sat Nov 19 04:55:38 EST 2022 on pts/0
[tom@clear ~]$ rm -f /opt/share/student.txt.haha
rm: cannot remove '/opt/share/student.txt.haha': Operation not permitted
check:
创建两个不同用户登录操作系统,进入dirt目录分别创建文件,尝试互相删除对方文件,结果应不能互相删除文件。
大S和小s区别,
执行权限位大S是,没有x
执行权限位小s是该位,有x