特殊权限

若是无缘再见,白堤柳帘垂泪好几遍;若是有缘再见,断桥残雪沉默了语言。

  • 搜狗截图20180415224343
  • SUID:需要作用在二进制可执行文件上才有意义,以往某用户在运行某个程序时比如cat,cat进程的权限会是启动用户的权限,这个进程的属主就是启动用户;而有SUID后的程序,用户在运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动者。比如/usr/bin/passwd,每个用户都可以修改自己的密码,将密码写入shadow
  •  图片1
    • 设置SUID:chmod u+|- s FILE,如果FILE原本有x权限,则SUID显示为s,否则显示为S,本来SUID就是要作用在二进制文件上,如果是S就失去了意义
    • 例:cat有了SUID后,用其他用户来启动cat 就能访问shadow了
    • 图片1
  • SGID:当目录属组有写权限,且有SGID权限时,当有些用户的附加组也为该目录的属组时,他们以属组身份在此目录中新建文件或目录时,新文件的属组不是用户的基本组,而是此目录的属组,因此他们所创建的文件彼此都可以修改。如果直接上其他人有写权限也必然可以是他们可以彼此修改文件,但是这样做是非常危险的操作。而作为普通用户来讲,怎么将自己的文件共享给别人,让别人来写,普通用户又不能修改属主属组,只能修改权限,所以需要使用SGID机制
    • SGID:作用于二进制文件上,执行二进制文件的用户会继承二进制文件所属组的权限去访问文件;作用于目录,目录内新建文件的所属组自动继承目录的所属组
    • 设置SGID:chmod g+|- s DIRECTORY
    • 例:有一个开发团队develop team,团队里有三个人hadoop,hbase,hive,要求他们任意一人在/tmp/project里所创建的文件,其他的两个人都能编辑访问
    • 图片1
    • 已经在该目录中的用户,root在改了目录的写权限后,该用户依然不能在目录中创建文件,需要退出目录后重新进才能创建文件
    • 图片1
    • 注意:用户所创建的文件,文件的所属组是用户的基本组,但基本组未必有写权限
    • 图片1
    • 让其有SGID权限
    • 图片1
    • 再创建文件,文件不再以用户的基本组作为属组,而是以目录的属组作为属组
    • 图片1
    • 但是hadoop用户能删掉hbase用户的文件,为了避免这种情况发生就需要Sticky
    • 图片1
  • Sticky:用户在一个具有写权限的目录里,可以删除该目录中的任何文件,无论这些文件的权限位如何设置。Sticky的意义在于,若在一个公共目录上设置Sticky 位,每个人都可以创建文件,删除自己的文件,但不能删除别人的文件。sticky 设置在文件上无意义
    • 设置Sticky:chmod o+|- t DIRECTORY,如果是T表示Sticky位没有x权限失去意义
    • 图片1
    • 特殊权限位用数字表示:( SUID:4 SGID:2 Sticky:1 )
      • chmod 5755 /tmp/test :最前的数字5表示SUID+Sticky,然后这个目录的普通权限位是755

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96241

(0)
DPingDPing
上一篇 2018-04-15 22:39
下一篇 2018-04-16 08:53

相关推荐

  • mysql

    yum安装 1、yum install mysql-server /var/lib/mysql 用户存放的位置 2、chkconfig –list mysqld 查看是否启动 3、chkconfig mysqld on 设置为开机启动 4、ss -ntl;service mysqld start 开启服务 端口号为3306 /!可以执行linux…

    Linux笔记 2018-06-14
  • RAID和逻辑卷

    1、RAID技术
    2、RAID实验
    3、逻辑卷管理
    4、逻辑卷快照

    Linux笔记 2018-06-10
  • 网络管理-第二篇

    IP地址 它们可唯一标识 IP 网络中的每台设备 每台主机(计算机、网络设备、外围设备)必须具有唯一的地址 IP地址由两部分组成: 网络ID: 标识网络 每个网段分配一个网络ID 主机 ID: 标识单个主机 由组织分配给各设备 MAC地址没有管理性 IP地址可管理性标识性高 子网掩码标识网络ID和主机ID 地址分类 二进制 A类地址:前八位是网络ID 1-1…

    2018-05-03
  • 软件包管理

      软件包管理 API:Application Programming Interface POSIX:Portable OS 程序源代码 –> 预处理 –> 编译 –> 汇编 –> 链接 静态编译:.a 动态编译:.so 二进制应用程序的组成部分: 二进制文件、库文件、配置文…

    2018-04-19
  • 基于Memcached的session server

    session server:将Tomcat的session信息保存在Memcached中,实现session server 前提: 两个Tomcat节点,两个Memcached节点,一个nginx节点;Tomcat需要使用到Memcached-session-manager这个Java类,即上面所说的调用了Memcached提供的API的模块,以达到Mem…

    Linux笔记 2018-03-31
  • gpg非对称秘钥实验

     生成秘钥对 /*图形界面 便于生成随机数*/ gpg –gen-key/*类型 长度 有效期 (默认)*//*用户名(其他可不填)*/私钥加密/*生成随机数*/ 查看 gpg –list-keys                                                                     …

    Linux笔记 2018-05-20