2019-03-21 课堂笔记

权限:

1、Linux基础权限 是9个字符
rw-r--r--
分三组
前三个字符表示用户(属主)的权限位 user(用户)
中三个字符表示用户组权限位 group (用户组)
后三个字符是其他用户权限 others (其他用户)
同一组的三个字符也是有位置的
r--第一个字符的位置是读的权限位
第二个字符的位置是写的权限位
第三个字符的位置是执行的权限位

1)可读r:表示具有读取、浏览文件内容(即读取文件实体block)的权限
2)可写w:表示具有新增、修改、删除文件内容的权限。
3)可执行x:表示具有执行文件的权限。

对可读r说明:
① 如果没有可读r配合,那么使用vi编辑文件时会提示无法编辑(但强制编辑),可以使用echo等命令进行重定向或追加;
② 删除文件或创建文件的权限是受父目录(上一级目录)的权限控制的(因为文件没有存放在Inode里,而是在上级目录的
block里存放着的,若修改上级目录的block(删除文件本质)当然会受上级目录的Inode的权限控制),和文件本身的权
限无关,因此文件本身的可写w权限和文件是否能被删除和改名无关。
对于可执行x,需要注意的事项:
① 首先文件的本身要能执行(命令或脚本)。
② 如果是普通用户,同时还需要具备可读r的权限才能执行文件。
③ 而root用户只要有可执行x的权限就能执行文件

目录对应读、写、执行权限的详细说明
1、可读r:表示具有浏览目录下面的文件及目录名的限权
2、可写w: 表示具有增加、删除或修改文件内文件的权限
3、可执行x: 表示具有进入目录的权限

权限修改:
777 +x -x u=w g-x
Linux权限有俩种表现方式:
1、数字表示法 八进制权限
r 4
w 2
x 1

  • 0
    实际的权限表示就是将每3位想加即可。
    2、字符表示法
    u 代表属主用户
    g 代表属组
    o 代表其他用户
    a 代表所有
    3、修改文件属性的用户和组
    chown 用户"."用户组 文件 这里的点可以用":"替换。
    chown 用户 文件
    chown . 用户组 文件

4、安全权限的临界点:
文件不想被修改被执行:644
5、目录的临界点:
目录不想被修改(删除移动创建)被执行(进入):755
博客:写博文。服务器的博客目录和文件限权,防止被恶意篡改。

企业案例:网站文件被恶意修改了。打开网站后有弹窗广告(不是你的网站)
用户打开网站,报警。
原因是:权限设置不到位。 chmod -R777 目录 开发人员的习惯

解决方案:
1)、备份
2)、找到被修改的文件
3)、批量删除
4)、找到文件被篡改的来源,并优化
5)、写总结,故障报告。

6、控制默认权限的东西 umask
创建文件默认最大的限权是666 (-rw-rw-rw-),其默认创建的文件没有可执行的限权X位。
666
022 -
644 默认限权
当umask中存在奇数位的时候,在计算完毕,奇数加1
7、基于文件:默认权限规则
umask都为偶数 默认权限用减法
umask有奇数 默认权限用减法 然后奇数位加1
8、基于目录:默认权限规则
从777计算 默认权限用减法

9、3位特殊权限位
suid位
suid(setuid)位通过S字符表示
存在于基本权限的用户权限位的x权限对应的位置,
如果用户组权限位对应的x权限位上有x权限,则suid就用小写s标识
suid的s对应的数字权限为4,完整权限用八进制4000表示

sgid
sgid(setid)位同样是S字符来表示的
但是,sgid位存在于基本权限的用户组权限位的x权限对应位置,
如果用户组权限位对应的x权限位上有x限权,则sgid就用小写的s标识
sgid的s对应的数字权限为2,完整版的权限用八进制2000表示

sticky(粘泄位)
sticky(粘泄)位通过T字符表示
存在于基本权限的其他用户位对应的x权限位上,
如果其他用户位的的x权限位上有x权限,则sticky(粘泄)位通过小写t标识
对应的数字权限是1,完整版的权限用八进制1000表示

4 2 1加和放在基础权限数字的前面。
10、工作中有什么作用
suid到低有什么作用
简单的说,suid的作用就是让普通用户可以在执行某个设置了suid位的命令或程序时,
拥有和root管理员一样的身份和限权。

文件权限详细说明:
测试准备:
incahome(家、组)
oldboy 家庭男主人,用来代表用户(User)角色,是文件的所有者
oldgirl 女主人(和所有者oldboy属于相同组,oldboy的家人)用来代表用户组incahome的角色
test 其他人 其他(others)人,用来代表其他用户角色

你可能感兴趣的:(2019-03-21 课堂笔记)