Unix中利用粘着位防止文件被恶意删除(2)

  二、粘着位在/var/tmp目录中的应用。

  当粘着位应用在目录文件上时,它便成为了一个有用的安全措施。其实在Unix系统中,就有一个很好的案例可以帮助我们来了解粘着位与目录文件结合的作用。如/var/tmp目录,只要用来存储用户或者应用程序的临时文件。通常情况下,这个目录允许所有的用户创建文件,但是任何用户不能够删除其他用户建立的文件。很多系统管理员刚接触Unix系统的时候,会对这个功能感到疑惑。笔者在对学员进行培训时,也往往把这个内容放在后面进行介绍,免得搞得学员头昏脑涨。其实这就是粘着位在起作用。为了说明白粘着位到底在其中扮演者什么角色,我们可以利用命令ls -ld /var/tmp/ 来看一下这个目录的权限信息。

  drwxrwxrwt 3 root root 4096 Apr 3 13:39 /var/tmp/

  看到这个结果,大家是否会感到奇怪。“drwxrwxrwt”这个表示某个目录文件的权限信息。其中第一个字符d表示这是一个目录文件,第二个到底四个字符rwx表示目录的所有者对这个目录具有读写执行的权限,即完全控制权限;第五个字符到第七个字符rwx表示组成员对这个目录具有读写执行的权限;第八个字符到第七个字符是用来表示其他用户对这个目录文件的权限,原来也应该是rwx或者rw-的。但是这里最后一个字符却变为了t。其实这个t就是粘着位。上面这个文件的权限信息,就是表示任何用户对这个目录都具有写入的权限(即可以创建文件)。但是由于多了一个粘着位,则某个用户就不能够删除其他用户创建的文件(即用户只能够删除所有权为自己创建的文件)。

可见利用粘着位能够防止其他用户对文件进行恶意删除。这个功能在实际工作中非常有用。如文章开头所阐述的,现在企业需要开发一个新项目而从各个部门抽调人员组成一个新的项目小组。现在企业希望各个项目小组成员都能够往一个为项目建立的文件夹中建立文件,但是不能够删除其他用户的文件,而只能够删除自己创建的文件。此时就可以利用粘着位来实现。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/28630.html