美文网首页
day16-2019年3月21日

day16-2019年3月21日

作者: Linux_wu_sir | 来源:发表于2019-03-21 23:48 被阅读0次

     权限

    Linux基础权限是9个字符

    [root@oldboy_template-2 ~]# ls -lhi

    total 0

    51523334 drwxr-xr-x 2 root root 94 Mar 20 21:48 oldboy

    文件权限:

    rwx r-x r-x

    user group others

    r read读取   4

    w write 写   2

    x execute    1

    - 没有权限

    分三组:

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

    中三个字符是表示用户组权限位              g

    后三个字符是表示其它用户权限位           o

    同一组的三个字符权限也是有位置的:

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

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

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

    Linux系统中的权限对于文件和目录来说,是有一定区别的,下面先列举下普通文件对应的权限重要指示。

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

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

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

    其中,对于可读r,这里有两点需要说明:

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

     ②删除文件或创建文件的权限是受腹肌目录(上一级目录)的权限控制的(因为文件名没有放到Inode里,而是放在上级目录的Block里存放着的,若修改上级目录的Block(删除文件本质),当然会受到上级目录的Inode的权限控制),和文件本身的权限无关,因此,文件本身的可写w权限,和文件是否能够被删除和改名无关。

    usermod -g icnahome oldboy  usermod修改用户权限   -g修改所属组  icnahome组名ZZ

    id oldboy 查看oldboy所属组

    如果此前没有创建oldboy用户,可以执行下面命令,

    useradd oldboy -g icnahome

    userdel oldboy 删除用户

     权限修改:

    Linux权限有两种表现形式:

    1、数字表示法

    r read读取   4

    w write 写   2

    x execute    1

    实际的权限表示就是将每三位相加,即可

    2、字符表示法

    用户类型:u g o a

    操作字符:+ - =

    权限字符:r w x - 

    修改文件属性的用户和组

    chown     用户.用户组  文件 这里的点可以用冒号代替

    chown    用户    文件

    chown    .用户组  文件

    安全权限临界点:

    文件不想被修改:644

    默认也是644

    [root@oldboy_template-2 oldboy]# ls -l

    total 24

    -rw-r--r-- 1 root root   68 Mar 20 12:25 123.123

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

    服务器的博客目录和文件的权限,防止被恶意篡改

    控制默认权限的东西 umask

    [root@oldboy_template-2 oldboy]# umask 

    0022

    创建文件默认最大的权限是666  (-rw-rw-rw-),其默认创建的文件没有可执行权限x位

    666

    022

    -------------

    644 默认权限

    umask设置linux默认权限

    当umask中存在奇数位的时候,在计算完毕后,奇数位加1

    --------------------------------------------------------------------

    基于文件:默认权限规则

    从666计算做减法

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

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

    基于目录:默认权限规则

    从777计算做减法

    对文件目录的修改都是永久的,对自身环境的设置都是临时的

    解决方案:

    1、备份

    2、找到被修改的文件

    3、批量删除

    4、找到文件被篡改的来源,并优化调整

    亡羊补牢

    5、写总结 故障报告

    还有3位特殊权限位

    suib位:

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

    存在于基本权限的用户权限位的用户权限为的x权限对应的位置,

    如果用户权限位对应的x权限位上有x权限,则suid就用小写的s标识,

    suid的s对应的数字权限为4,完整权限用八进制数4000表示。

    sgid位:

    sgid(setgid)位同样是通过S字符来标识,

    但是,sgid位存在于基本权限的用户组权限位的x权限对应的位置,

    如果用户组权限位对应的x权限位上有x权限,则sgid就用小写的s标识,

    sgid的s对应的数字权限为2,完整的权限用八进制数2000表示。

    sticky(粘滞位)知识简介

    sticky(粘滞)位通过字符T标识,存在于基本权限的其他用户位对应的x权限位上,

    如果其他用户的x权限位上有x权限,

    则sticky(粘滞)位通过小写的t标识,对应的数字权限是1,

    完整的权限用八进制数1000表示。

    类别 SUID SGID sticky

    表示字符 S S T

    占据位置 基本权限x位 基本权限x位 基本权限x位

    基本权限位有x s s t

    数字表示 4 2 1

    八进制表示 4000 2000 1000

    作用 针对用户位 针对用户组 其它用户

    工作中有什么用?

    suid到底有什么用

    简单的说,suid的作用就是让普通用户和普通

    suid核心知识小节

    1)suid功能是针对二进制命令或程序的,不能用在shell等类似脚本文件上

    2)用户或属主对应的前三位权限的x位上,如果有s(S)就表示具备suid权限

    3)suid的作用就是让普通用户可以在执行某个设置了suid位的命令或者程序时,拥有和root管理员一样的身份和权限(默认)

    4)二进制命令程序需要有可执行权限x配合才行

    5)suid对应的身份和权限仅在程序命令执行过程中有效

    6)suid是一把双刃剑,是一个比较危险的功能,对系统安全有一定的威胁,企业里用户授权可以使用sudo等代替sgid功能

    7)在进行安全优化时,系统默认设置了suid权限的命令要取消掉

    相关文章

      网友评论

          本文标题:day16-2019年3月21日

          本文链接:https://www.haomeiwen.com/subject/kjkkvqtx.html