免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 980 | 回复: 0
打印 上一主题 下一主题

setUid、setGid文件和带粘着位的目录文件 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-09-02 22:37 |只看该作者 |倒序浏览

  在Linux/Unix下,有一种可执行文件被setUid,这使得任意使用者在执行该文件时,都绑定了文件拥有者的权限。setUid文件通常用来提升使用者的权限.最有代表性的su命令.普通用户可以可以执行该命令,使自己升级为root。setUid命令的用法是:
  chmod 4755 your_program
  setGid 文件和setUid文件非常类似,它使得这使得任意使用者在执行该文件时,都绑定了文件所有组的权限.单独setGid的文件非常少用,通常都是即setUid又setGid。不过和您猜想的可能有点不同。setUid+setGid通常并不是用来提升权限的,而是为了绑定某个特殊用户及其组的特殊权限,例如qmail 的外围软件vpopmail,就使用了一个setUid+setGid的程序vchkpw来校验用户名和密码。这个道理和Apache常常以nobody用户运行一样。其目的是为了更加安全。
  setGid 命令的用法为
  chmod 2755 your_program
  通常使用命令
  chmod 6755 yourprogram
  来使得某可执行程序同时setUid和setGid
  全能的root用户当然可以任意setUid和setGid。但尚方宝剑不能用来假传圣旨,普通用户只能给属于自己的文件配置setUid或setGid。由于setUid或setGid文件会使普通用户提升权限,谨慎的系统管理员通常会留意系统中有setUid或setGid文件的变化。减少安全隐患。
  在Linux下,/tmp是一个存放临时文件的目录,要求是对所有用户可写。但每个用户都只能删除自己拥有的文件。这种情况下,就可以把目录加一个粘着位。
  [root@yaoyao /]# ls -l |grep tmp
  drwsrwsrwt 9 root root 4096 8月7 10:50 tmp
  注意第是个字符"t",它代表了这个目录被设置了粘着位。
  我们自行建立一个abc的目录,使之具有和/tmp相同的特点
  chmod 777 abc
  chmod +t abc
  上述的个两个命令组合等同于下边的一个命令:
  chmod 1777 abc
  用ls –l 看abc 目录的属性如下:
  [root@yaoyao test]# ls -l
  总用量 4
  drwsrwsrwt 2 root root 4096 8月 7 11:32 abc
  和/tmp目录相同的需求往往在ftp服务器的upload 目录中也存在。可以用相同的方式处理。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/43550/showart_373011.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP