- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
shell文件安全和权限.doc
第1章文件安全与权限
为了防止未授权用户访问你的文件,可以在文件和目录上设置权限位。还可以设定文件
在创建时所具有的缺省权限:这些只是整个系统安全问题中的一小部分。在这里我们并不想
对系统安全问题的方方面面进行全面的探讨,只是介绍一下有关文件和目录的安全问题。
本章包含以下内容:
? 文件和目录的权限。
? setuid。
? chown和c h g r p。
? umask。
? 符号链接。
创建文件的用户和他(她)所属于的组拥有该文件。文件的属主可以设定谁具有读、写、执
行该文件的权限。当然,根用户或系统管理员可以改变任何普通用户的设置。一个文件一经
创建,就具有三种访问方式:
1) 读,可以显示该文件的内容。
2) 写,可以编辑或删除它。
3) 执行,如果该文件是一个s h e l l脚本或程序。
按照所针对的用户,文件的权限可分为三类:
1) 文件属主,创建该文件的用户。
2) 同组用户,拥有该文件的用户组中的任何用户。
3) 其他用户,即不属于拥有该文件的用户组的某一用户。
1.1 文件
当你创建一个文件的时候,系统保存了有关该文件的全部信息,包括:
? 文件的位置。
? 文件类型。
? 文件长度。
? 哪位用户拥有该文件,哪些用户可以访问该文件。
? i节点。
? 文件的修改时间。
? 文件的权限位。
让我们使用ls -l命令,来看一个典型的文件:
第一部分s h e l l
下面让我们来分析一下该命令所得结果的前面两行,看看都包含了哪些信息:
total 4232:这一行告诉我们该目录中所有文件所占的空间。
- r w x r- x r- x:这是该文件的权限位。如果除去最前面的横杠,这里一共是9个字符,他们
分别对应9个权限位。通过这些权限位,可以设定用户对文件的访问权限。这9个字符可以分
为三组:
r w x:文件属主权限这是前面三位
r- x:同组用户权限这是中间三位
r- x:其他用户权限这是最后三位
后面我们还将对这些权限位作更详细的介绍。出现在r、w、x位置上的横杠表示相应的访
问权限被禁止。
1 该文件硬链接的数目。
root 文件的属主。
root 文件的属主r o o t所在的缺省组(也叫做r o o t )。
3578 用字节来表示的文件长度,记住,不是K字节!
Oct 14 04:44 文件的更新时间。
dmesg 文件名。
1.2 文件类型
还记得前面一节所提到的文件权限位前面的那个字符吗?我们现在就解释一下这个横杠
所代表的意思,文件类型有七种,它可以从ls -l命令所列出的结果的第一位看出,这七种类型
是:
d 目录。
l 符号链接(指向另一个文件)。
s 套接字文件。
b 块设备文件。
c 字符设备文件。
p 命名管道文件。
- 普通文件,或者更准确地说,不属于以上几种类型的文件。
1.3 权限
让我们用t o u c h命令创建一个文件:
$ touch myfile
现在对该目录使用ls -l命令:
2
我们已经创建了一个空文件,正如我们所希望的那样,第一个横杠告诉我们该文件是一
个普通文件。你将会发现所创建的文件绝大多数都是普通文件或符号链接文件(后面将会出现
更多的符号链接文件)。
文件属主权限组用户权限其他用户权限
r w - r- - r—
接下来的三个权限位是文件属主所具有的权限;再接下来的三位是与你同组用户所具有
的权限,这里是a d m i n组;最后三位是其他用户所具有的权限。在该命令的结果中,我所属于
的缺省组也显示了出来。下面是对该文件权限的精确描述:
表1-1 ls -l命令输出的含义
(第一个字符) - 普通文件
(接下来的三个字符) r w - 文件属主的权限
(再接下来的三个字符) r- - 同组用户的权限
(最后三个字符) r- - 其他用户的权限
因此,这三组字符(除了第一个字符)分别定义了:
1) 文件属主所拥有的权限。
2) 文件属主缺省组(一个用户可以属于很多的组)所拥有的权限。
3) 系统中其他用户的权限。
在每一组字符中含有三个权限位:
r 读权限
w 写/更改权限
x 执行该脚本或程序的权限
这里我们采用另外一种方式来表示刚才所列出m y f i l e的文件权限:
- r w - r- - r--
文件类型为普通文件文件属主可以读、写同组用户可以读其他用户可以读
你可能已经注意到了,m y f i l e在创建的时候并未给属主赋予执行权限,在用户创建文件时,
系统不会自动地设置执行权限位。这是出于加强系统安全的考虑。必须手工修改这一权限位:
后面讲到u m a s k命令时,你就会明白为什么没有获得执行权限。然而,你可以针对目录设置执
行权限位,但这与文件执行权限位的意义有所不同,这一点我们将在后面讨论。
上面这段关于权限位的内容可
文档评论(0)