Day16-课堂笔记-Linux系统权限知识及应用实践

一、Linux基础权限:9个字符

1、9个字符分为三组

前三个字符表示用户的权限位(属主)user

中三个字符表示用户组的权限位(用户组)group

后三个字符表示其他用户权限位(其他用户)others

2、同一组的三个字符权限是有固定位置的

第一个字符的位置是读的权限位

第二个字符的位置是写的权限位

第三个字符的位置是执行的权限位

二、Linux系统中权限是对文件和目录来说的

1、可读r:表示具有读取、浏览文件内容(即读取文件实体block)的权限。

对于可读,需要说明两点:

1)如果没有可读的配合,那么使用vim编辑文件时会提示无法编辑(但可强制编辑),可以使用echo等命令进行重定向或追加。

2)删除文件或创建目录的权限是受父目录(上一级目录)的权限控制的。

2、可写w:表示具有新增、修改、删除文件内容的权限。

3、可执行x:表示具有执行文件的权限。

对于可执行x,需要注意以下3点:

1)首先对文件的本身要能够执行(命令或脚本)。

2)如果是普通用户,同时还需要具备可读的权限才能执行文件。

3)而root用户只要有可执行x的权限就能执行文件。

4、【文件】权限说明

测试准备:

incahome(家、组)

oldboy 家庭男主人,用来代表用户(User)角色,是文件的所有者

oldgirl 女主人(和所有者oldboy属于相同组,oldboy的家人)用来代表用户组incahome的角色

test  其他人 其他(others)人,用来代表其他用户角色

5、【目录】对应读写执行的权限说明

Linux系统中目录的权限和文件有一些细微区别,下面是目录对应的权限重要知识:

1)可读r:表示具有浏览目录下面文件及子目录名的权限

2)可写w:表示具有增加、删除和修改目录内文件的权限

3)可执行x:表示具有进入目录的权限

三、权限的两种表现形式

1、数字表示法

r : 4

w :2 

x:  1

-:  0

实际的权限表示就是3位相加即可

2、字符表示法

1)用户或用户组的定义

u :user 代表属主用户

g:group 代表属组

o:other 代表其他用户

a(all)或者不写:同时代表ugo属主、属组和其他用户,也就是上面三个用户/组的所有

2)权限定义字母,和前文一致

r :可读 4

w:可写 2

x:可执行 1

-:代表没有权限 0

3)权限增减字符详细定义

+:添加权限

-:取消权限

=:取消其他所有权限,然后赋予给定的权限。

命令:chmod 修改权限

-R 递归修改

修改文件属性的用户和组:

chown 用户 .用户组 文件  这里的.可以换成:

chown 用户 文件

chown .用户组 文件====chgrp 用户组  文件

四、企业环境选文件和目录的安全核心知识

安全临界点

1、文件不想被修改: 644

默认创建文件权限:644

2、目录不想被修改(删除移动创建)被执行(进入):755

默认创建目录权限:755

3、企业案例:网站文件被恶意修改,打开网站后有弹窗广告

原因:权限设定不到位。

解决档案:

1)备份

2)找到被修改文件

3)批量删除

4)找到文件被串改来源,并进行优化调整

5)写总结,故障报告

4、控制默认权限:umask

创建文件的默认最大权限位666,共创建的文件没有可执行权限x位。

1)基于文件:

从666计算

umask都为偶数,默认权限用减法

umask有奇数,默认权限用减法,然后奇数位加1

2)基于目录:默认权限规则

从777计算,默认权限用减法

五、Linux系统特殊权限位知识

1、三位特殊权限位

suid:(setuid)位通过s字符标识。

用户权限位的x权限对应的位置。

有x用s,没有用S。

sgid:(setgid)位同样是通过s字符来标识的。

用户组权限的x权限对应的位置。

有x用s,没有用S。

sticky(粘滞位)位通过字符T标识。

其他用户权限的x权限对应的位置。

有x用t,没有用T。

2、工作中用法

suid作用:

简单的说,让普通用户拥有root管理员一样的身份和权限(默认情况)。


你可能感兴趣的:(Day16-课堂笔记-Linux系统权限知识及应用实践)