|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
欢迎大家来到仓酷云论坛!我们上岸到体系以后,创立一个通俗文件或许目次的时刻,会有一个默许的权限。通俗文件是644,目次文件是755,想必人人都晓得这个是由umask这个值决议的。我们可以直接履行umask敕令检查,linux体系默许的umask值是0022。想转变创立文件默许的权限,我们直接修正umask就能够,然则普通的权限都是经由过程777-022获得的默许权限位。022后面的这个0是甚么呢?第一个0就是特别权限位,下边我们就来跟人人说一下setuid、setgid和sticky这个三个特别权限位。
1.suid,setuid:在一个法式或敕令上添加setuid今后(u+s),如许属主有了s权限,意味着任何用户在履行此法式时,其过程的属主不再是提议者自己,而是这个法式的属主。最典范的一个例子就是passwd这个敕令;
通俗用户运履行passwd敕令来修正本身的暗码,其实终究更改的是/etc/passwd这个文件。
我们晓得/etc/passwd文件是用户治理的设置装备摆设文件,只要root权限的用户能力更改。- [root@Vmware5~]#ls-l/etc/passwd-rw-r--r--.1rootroot981Oct2501:00/etc/passwd
复制代码 依照惯例的逻辑思想,通俗用户是修正不了/etc/passwd此文件的,然则在passwd这个敕令上添加了setuid这个特别权限位,通俗账号暂时酿成root,就可以直接修正本身账号的暗码了。- [root@Vmware5~]#ls-l/usr/bin/passwd(s就是suid位)-rwsr-xr-x.1rootroot30768Feb222012/usr/bin/passwd
复制代码 设置setuid的办法:(其实前边提到过了参数是u+s)- chmodu(+|-)s/path/somefilechmod4664/path/somefile留意:s:表现属主本来有履行权限S:表现属主本来没有履行权限
复制代码 实例演示:
添加一个名字为taokey的通俗用户- [root@Vmware5~]#useraddtaokey
复制代码 把/etc/fsatb文件拷贝到/tmp目次下一份- [root@Vmware5~]#cp/etc/fstab/tmp/[root@Vmware5~]#cd/tmp/
复制代码 检查/tmp目次下fstab文件的属性- [root@Vmware5tmp]#llfstab-rw-r--r--.1rootroot899Oct2500:16fstab
复制代码 把其他用户的读权限给去失落- [root@Vmware5tmp]#chmodo-rfstab[root@Vmware5tmp]#llfstab-rw-r-----.1rootroot899Oct2500:16fstab
复制代码 切换到通俗用户taokey- [root@Vmware5tmp]#su-taokey
复制代码 履行cat敕令,看下能否可以检查fstab文件- [taokey@Vmware5~]$cat/tmp/fstabcat:/tmp/fstab:Permissiondenied
复制代码 因为other去失落了r权限,一切提醒cat被谢绝
为了保存原始情况,把cat敕令拷贝到/tmp目次一份- [root@Vmware5~]#cp/bin/cat/tmp/[taokey@Vmware5tmp]$ls-lfstabcat-rwxr-xr-x.1rootroot45224Oct2500:21cat-rw-r-----.1rootroot899Oct2500:16fstab[taokey@Vmware5tmp]$./catfstab./cat:fstab:Permissiondenied[taokey@Vmware5tmp]$exitlogout
复制代码 特换到root用户,添加setuid权限- [root@Vmware5~]#ls-l/usr/bin/passwd(s就是suid位)-rwsr-xr-x.1rootroot30768Feb222012/usr/bin/passwd0
复制代码- [root@Vmware5~]#ls-l/usr/bin/passwd(s就是suid位)-rwsr-xr-x.1rootroot30768Feb222012/usr/bin/passwd1
复制代码
- [root@Vmware5~]#ls-l/usr/bin/passwd(s就是suid位)-rwsr-xr-x.1rootroot30768Feb222012/usr/bin/passwd2
复制代码
切换到通俗用户以后,可以胜利履行cat敕令,检查/tmp/fstab文件,就是由于tmp目次下cat这个敕令上添加了s权限位。
1
2
[taokey@Vmware5tmp]$llcat
-rwsr-xr-x.1rootroot45224Oct2500:21cat
留意:设置suid这个特别权限很风险,不到万不得已,做好照样不要应用。
2.Sgid,Setid,属组有s权限,意思就是履行此法式时,此过程的属组不再是运转者自己所属的根本组,而是此法式文件的属组。
任务中常常会碰到如许一个成绩?
运维和开辟同属于技巧部,用户同属于一个组,文件在一个目次中,运维人员和开辟人员可以互相之间拜访本身的文件,如果一个一个修正属组就有点费事,这时候候用sgid就会很便利的处理这个成绩。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
例子:
[root@Vmware5tmp]#usermod-a-Gmygrpxen
[root@Vmware5tmp]#usermod-a-Gmygrpkvm
[root@Vmware5tmp]#mkdir/tmp/test
[root@Vmware5tmp]#ls-ld/tmp/test/
drwxr-xr-x.2rootroot4096Oct2500:48/tmp/test/
[root@Vmware5tmp]#chmodg+w/tmp/test
[root@Vmware5tmp]#ls-ld/tmp/test/
drwxrwxr-x.2rootroot4096Oct2500:48/tmp/test/
[root@Vmware5tmp]#chown:mygrp/tmp/test
[root@Vmware5tmp]#ls-ld/tmp/test
drwxrwxr-x.2rootmygrp4096Oct2500:48/tmp/test
[root@Vmware5~]#su-xen
[xen@Vmware5~]$cd/tmp/test
[xen@Vmware5test]$toucha.xen
[xen@Vmware5test]$ls-l
total0
-rw-rw-r--.1xenxen0Oct2500:50a.xen
[root@Vmware5~]#su-kvm
[kvm@Vmware5~]$cd/tmp/test
[kvm@Vmware5test]$toucha.kvm
[kvm@Vmware5test]$ls-l
total0
-rw-rw-r--.1kvmkvm0Oct2500:51a.kvm
-rw-rw-r--.1xenxen0Oct2500:50a.xen
kvm用户想往xen创立的文件a.xen中写器械,然则被谢绝了。
1
2
[kvm@Vmware5test]$echo"hello">>a.xen
-bash:a.xen:Permissiondenied
我们在用root,给/tmp/test文件添加一个sgid权限位,然后再测试下。
1
2
3
[root@Vmware5~]#chmodg+s/tmp/test
[root@Vmware5~]#ls-ld/tmp/test
drwxrwsr-x.2rootmygrp4096Oct2500:51/tmp/test
切换到xen通俗用户
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@Vmware5~]#su-xen
[xen@Vmware5test]$touchb.xen
[xen@Vmware5test]$llb.xen
-rw-rw-r--.1xenmygrp0Oct2501:01b.xen
[root@Vmware5~]#su-kvm
[kvm@Vmware5~]$echo"hello">>b.xen
[kvm@Vmware5~]$catb.xen
hello
[kvm@Vmware5~]$touchb.kvm
[root@Vmware5~]#su-xen
[xen@Vmware5~]$cd/tmp/test/
[xen@Vmware5test]$echo"Mynameistaoyake.">>b.kvm
[xen@Vmware5test]$catb.kvm
Mynameistaoyake.
可以胜利写出来,这个就是由于在/tmp/test文件设置了sgid权限位
然则这个不只可以能胜利写出来,还可以删除文件,我们只能本身删除本身的文件,不想让其他用户删除我们的文件,这时候候怎样办呢?
1
2
3
4
5
6
7
例如:
[xen@Vmware5test]$rmb.kvm
[xen@Vmware5test]$ll
total0
-rw-rw-r--.1kvmkvm0Oct2500:51a.kvm
-rw-rw-r--.1xenxen0Oct2500:50a.xen
-rw-rw-r--.1xenmygrp0Oct2501:01b.xen
3.这时候候就用到了粘滞位,t,sticky,附加other的权限上,表示为t。
chmodo+|-t/path/somefile
1
2
3
4
5
6
7
8
9
10
11
12
实例操作:
[root@Vmware5~]#ls-ld/tmp/test
drwxrwsr-t.2rootmygrp4096Oct2501:10/tmp/test
[xen@Vmware5test]$ls
a.kvma.xenb.xenc.kvm
[xen@Vmware5test]$echo"beyond">>c.kvm
[xen@Vmware5test]$catc.kvm
beyond
[xen@Vmware5test]$echo"">c.kvm
[xen@Vmware5test]$catc.kvm
[xen@Vmware5test]$rm-rfc.kvm
rm:cannotremove`c.kvm:Operationnotpermitted
可以添加和随意率性修正其他用户的文件,就是不克不及删除其他用户的文件,本身可以删除本身创立的文件。
1
2
3
4
5
6
7
8
9
10
11
[kvm@Vmware5test]$touchc.kvm
[kvm@Vmware5test]$ls
a.kvma.xenb.xenc.kvm
[kvm@Vmware5test]$rmc.kvm
[kvm@Vmware5test]$ls
a.kvma.xenb.xen
[xen@Vmware5test]$ll
total0
-rw-rw-r--.1kvmkvm0Oct2500:51a.kvm
-rw-rw-r--.1xenxen0Oct2500:50a.xen
-rw-rw-r--.1xenmygrp0Oct2501:01b.xen
本文出自“岁月在流逝,辉煌仍然在”博客,请务必保存此出处http://taokey.blog.51cto.com/4633273/1329992
欢迎大家来到仓酷云论坛! |
|