码迷,mamicode.com
首页 > 系统相关 > 详细

Linux文件系统上的特殊权限

时间:2016-07-20 06:48:49      阅读:296      评论:0      收藏:0      [点我收藏+]

标签:linux文件系统特殊权限


Linux文件系统上的特殊权限

    SUID, SGID, Sticky

    1 权限
        r, w, x

        user, group, other

    2 安全上下文
        前提:进程有属主和属组;文件有属主和属组;
        (1) 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限;
        (2) 启动为进程之后,其进程的属主为发起者;进程的属组为发起者所属的组;
        (3) 进程访问文件时的权限,取决于进程的发起者:
            (a) 进程的发起者,同文件的属主:则应用文件属主权限;
            (b) 进程的发起者,属于文件的属组;则应用文件属组权限;
            (c) 应用文件“其它”权限;

    3 SUID
        (1) 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限;
        (2) 启动为进程之后,其进程的属主为原程序文件的属主;

[root@MyServer ~]# ls -l  `which passwd`
-rwsr-xr-x 1 root root 30768 Feb 22  2012 /usr/bin/passwd
[root@MyServer ~]# ls -l   /etc/passwd
-rw-r--r-- 1 root root 892 Jul 18 20:52 /etc/passwd
[root@MyServer ~]# ls -l   /etc/shadow
---------- 1 root root 613 Jul 18 20:52 /etc/shadow
[centos@MyServer ~]$ /tmp/cat /etc/shadow
/tmp/cat: /etc/shadow: Permission denied
[root@MyServer ~]# chmod u+s /tmp/cat
[root@MyServer ~]# su - centos
 welcome 502, your home is /home/centos. note.....

 

[centos@MyServer ~]$ /tmp/cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
saslauth:x:499:499:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
aaa:x:501:501::/home/aaa:/bin/bash
centos:x:502:502::/home/centos:/bin/bash

        权限设定:
            chmod u+s FILE...
            chmod u-s FILE...

    4 SGID
        默认情况下,用户创建文件时,其属组为此用户所属的基本组;
        一旦某目录被设定了SGID,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的属组;

        权限设定:
            chmod g+s DIR...
            chmod g-s DIR...

    5 Sticky
        对于一个多人可写的目录,如果设置了sticky,则每个用户仅能删除自己的文件;

        权限设定:
            chmod o+t DIR...
            chmod o-t DIR...

        SUID SGID STICKY
            000 0
            001 1
            010 2
            011 3
            100 4
            101 5
            110 6
            111 7

            chmod 4777 /tmp/a.txt

[root@MyServer /]# chmod 4777 /tmp/hosts 
[root@MyServer /]# ll /tmp/hosts 
-rwsrwxrwx 1 root root 158 Jul 17 13:49 /tmp/hosts

        几个权限位映射:
            SUID: user, 占据属主的执行权限位;
                s: 属主拥有x权限
                S:属主没有x权限
            SGID: group,  占据group的执行权限位;
                s: group拥有x权限
                S:group没有x权限            
            Sticky: other, 占据ohter的执行权限位;
                t: other拥有x权限
                T:other没有x权限

[root@MyServer /]# chmod 4777 /tmp/hosts 
[root@MyServer /]# ll /tmp/hosts 
-rwsrwxrwx 1 root root 158 Jul 17 13:49 /tmp/hosts
[root@MyServer /]# chmod 7777 /tmp/hosts 
[root@MyServer /]# ll /tmp/hosts 
-rwsrwsrwt 1 root root 158 Jul 17 13:49 /tmp/hosts


本文出自 “梁小明的博客” 博客,请务必保留此出处http://7038006.blog.51cto.com/7028006/1827891

Linux文件系统上的特殊权限

标签:linux文件系统特殊权限

原文地址:http://7038006.blog.51cto.com/7028006/1827891

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!