文件的权限问题及umask 普通文件 SUID chmod

                                               粉丝不过w

   普通文件默认是 644 也就是:

   自已有读写(rw),同组人员有读(r),其它有读(r)
   默认权限可通过 umask 修改

     默认 umask 为 022
        文件:666 - 022 = 644
        目录:777 - 022 = 755

如 umask 044 的指令,则生成的文件目录权限

     文件:666 - 044 = 622
     目录:777 - 044 = 733
 

    r(Read,读取):文件:具有读取文件内容的权限

                               目录:具有浏览目录的权限

    w(Write,写入):文件:具有新增、修改文件内容的权限

                             目录:具有删除、移动目录内文件的权限

    x(eXecute,执行):文件:具有执行文件的权限

                                    目录:该用户具有进入目录的权限

    s 或 S(SUID,Set UID):小写 s :能执行

                                              大写 S :不能执行

  可执行的文件搭配这个权限,便能得到特权,任意存取该文件的所有者能使用的全部系统资源

   请注意具备 SUID 权限的文件,黑客经常利用这种权限,以 SUID 配上 root 帐号拥有者,无声无息地在系统中开扇后门,供日后进出使用

            r  -----        读访问

           w -----        写访问

           x  -----       执行许可

           s  -----       SUID / SGID

           t  -----        sticky 位

    用户修改密码,是通过运行命令 passwd 来实现的

      最终必须要修改/etc/passwd 文件,而 passwd 的文件的属性是

      passwd 文件只有对于 root 用户是可写的,而对于所有的他用户来说都是没有写权限的

     一个普通的用户如何能够通过运行 passwd 命令修改这个 passwd 文件,为解决这个问题, SUID/SGID 便应运而生

          AT&T 对它申请了专利

     进程在运行的时候,有一些属性,其中包括 实际用户 ID,实际组ID,有效用户 ID,有效组 ID 等

     实际用户 ID 和实际组 ID 标识我们是谁,谁在运行这个程序,一般这 2 个字段在登陆时决定,在一个登陆会话期间, 这些值基本上不改变

     有效用户 ID 和有效组 ID 则决定了进程在运行时的权限

      内核在决定进程是否有文件存取权限时, 是采用了进程的有效用户 ID 来进行判断的

     当一个程序设置了为 SUID 位时,内核就知道了运行这个程序的时候,应该认为是文件的所有者在运行这个程序

      该程序运行的时候,有效用户 ID 是该程序的所有者

   T 或 T(Sticky):小写 t 表示能执行,大写 T 表示不能执行/tmp 和 /var/tmp 目录供所有用户暂时存取文件,亦即每位用户皆拥有完整的权限进入该目录,去浏览、删除和移动文件

     R,W,X 是基本权限 S,T 是特殊权限.
各权限位代表的数字值:
          R:4
         W:2
          X:1
          suid:4
          sgid:2
          sticky:1

    当使用特殊权限位时 chmod 的用法:
       例:
            chmod 7000 后的权限: ---S--S--T
            chmod 7755 后的权限: -rwsr-sr-t

猜你喜欢

转载自blog.csdn.net/qq_44226094/article/details/105469180