哪位高手帮我讲解一下chmod命令中的suid和guid?查了某些资料我还是不懂,我觉得设不设suid和guid好象没有区别,多谢!
meteor06 回复于:2003-08-28 13:42:59 |
不错 ;) |
li2002 回复于:2003-08-28 09:42:52 |
1.6.1 为什么要使用suid/guid
为什么要使用这种类型的脚本?这里有一个很好的例子。我管理着几个大型的数据库系 统,而对它们进行备份需要有系统管理权限。我写了几个脚本,并设置了它们的g u i d,这样 我指定的一些用户只要执行这些脚本就能够完成相应的工作,而无须以数据库管理员的身份 登录,以免不小心破坏了数据库服务器。通过执行这些脚本,他们可以完成数据库备份及其 他管理任务,但是在这些脚本运行结束之后,他们就又回复到他们作为普通用户的权限。 有相当一些U N I X命令也设置了s u i d和g u i d。如果想找出这些命令,可以进入/ b i n或/ s b i n目 录,执行下面的命令: $ ls -l | grep '^...s' 上面的命令是用来查找s u i d文件的; $ ls -l | grep '^...s..s' 上面的命令是用来查找s u i d和g u i d的。 现在我们明白了什么是s u i d,可是如何设置它呢?下面就来介绍这个问题。如果希望设置 s u i d,那么就将相应的权限位之前的那一位设置为4;如果希望设置g u i d,那么就将相应的权限 位之前的那一位设置为2;如果希望两者都置位,那么将相应的权限位之前的那一位设置为4+2。 一旦设置了这一位,一个s将出现在x的位置上。记住:在设置s u i d或g u i d的同时,相应的 执行权限位必须要被设置。例如,如果希望设置g u i d,那么必须要让该用户组具有执行权限。 如果想要对文件l o g i n设置s u i d,它当前所具有的权限为rwx rw- r-- (741),需要在使用 c h m o d命令时在该权限数字的前面加上一个4,即chmod 4741,这将使该文件的权限变为r w s rw- r - -。 $ chmod 4741 logit 1.6.2 设置suid/guid的例子 下面给出几个例子: 表1-7 设置s u i d / g u i d [code:1:ba85db1c69] ----------------------------------------------------------------------------- 命令 结果 含义 chmod 4755 rws r-x r- x 文文件被设置了s u i d,文件属主具有读、写和执行的权限,所有其他用户具有读和执行的权限 chmod 6711 rws --s --s 文文件被设置了s u i d和g u i d,文件属主具有读、写和执行的权限,所有其他用户具有执行的权限 chmod 4764 rws rw- r- - 文文件被设置了s u i d,文件属主具有读、写和执行的权限,同组用户具有读和执行的权限,其他用户具有读权限 ------------------------------------------------------------------------------- [/code:1:ba85db1c69] 还可以使用符号方式来设置s u i d / g u i d。如果某个文件具有这样的权限: rwx r-x r- x,那么 可以这样设置其s u i d: chmod u+s <filename> 于是该文件的权限将变为: rws r-x r-x 在查找设置了s u i d的文件时,没准会看到具有这样权限的文件:rwS r-x r- x,其中S为大写。 它表示相应的执行权限位并未被设置,这是一种没有什么用处的s u i d设置,可以忽略它的存在。 注意,c h m o d命令不进行必要的完整性检查,可以给某一个没用的文件赋予任何权限,但 chmod 命令并不会对所设置的权限组合做什么检查。因此,不要看到一个文件具有执行权限, 就认为它一定是一个程序或脚本。 |
zy520fxq 回复于:2003-08-28 10:02:26 |
多谢 |
saintdragon 回复于:2003-08-28 10:24:48 |
长知识 |
yujf 回复于:2003-08-29 11:10:18 |
强,知道的好细哦 |
yutian 回复于:2003-08-29 11:28:37 |
顶一下 |
saintjian 回复于:2003-08-29 19:15:56 |
好牛,不白来。 |
htldm 回复于:2003-08-29 21:30:31 |
好 |
秋意正浓 回复于:2003-08-29 23:15:03 |
好,我也试试看。 |
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/