欢迎大家光临【无师自通-教程网】您的到来是我们的荣幸。本站提供photoshop教程,ps教程,flash教程,cad教程,网页制作教程,excel教程,asp教程,vb教程,3d教程,c语言教程,html教程,coreldraw教程,dreamweaver教程,java教程,3dmax教程 等各种教程为主题的内容和服务,相信您会在这里找到您所需要的东东。无师自通伴您一生-谢谢您的光临!!
网站地图 设为首页
简繁切换 加入收藏
栏目待定 留言本站
您现在的位置: 无师自通-教程网 >> 操作系统 >> Linux >> 系统安全 >> 教程正文

  没有公告

教程: Linux教程-系统安全-使用chattr提高ext2文件系统的安全性 更多...
教程: Linux教程-系统安全-使用chattr提高ext2文件系统的安全性


LinuxAid nixe0n

简介
1.什么是ext2的属性(attribute)
2.使用什么命令设置和显示ext2文件系统的属性
3.ext2属性和文件权限的区别
4.我们应该使用chattr做什么?
4.1.安装、升级软件
4.2.管理用户和用户组
5.不能使用chattr命令的目录
总结

简介

众所周知,Linux内核中有大量安全特征。其中有很多的特征有着广泛的应用,但是绝大多数的系统管理员(包括一些资深系统管理员)都忽略了EXT2文件系统的属性(attribute)。Linux的这种安全特征甚至远没有Lids和Tripwire等外部安全工具受关注。本文将详细介绍EXT2文件系统的属性已经如何使用这个特征保护系统的安全。


1.什么是ext2的属性(attribute)


从Linux的1.1系列内核开始,ext2文件系统就开始支持一些针对文件和目录的额外标记或者叫作属性(attribute)。在2.2和2.4系列的内核中,ext2文件系统支持以下属性的设置和查询:



A

Atime。告诉系统不要修改对这个文件的最后访问时间。


S

Sync。一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘。


a

Append Only。系统只允许在这个文件之后追加数据,不允许任何进程覆盖或者截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件。


i

Immutable。系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。


d

No dump。在进行文件系统备份时,dump程序将忽略这个文件。


c

Compress。系统以透明的方式压缩这个文件。从这个文件读取时,返回的是解压之后的数据;而向这个文件中写入数据时,数据首先被压缩之后,才写入磁盘。


s

Secure Delete。让系统在删除这个文件时,使用0填充文件所在的区域。


u

Undelete。当一个应用程序请求删除这个文件,系统会保留其数据块以便以后能够恢复删除这个文件。


但是,虽然文件系统能够接受并保留指示每个属性的标志,但是这些属性不一定有效,这依赖于内核和各种应用程序的版本。下表显示每个版本支持的属性标志:


* 允许设置这个标志并使设置生效
i 允许设置这个标志但忽略其值
- 完全忽略这个标志

1.0 1.2 2.0 2.2 2.4
A - - * * *
S * * * * *
a - * * * *
i - * * * *
d - * * * *
c i i i i i
s * * i i i
u i i i i i


虽然早期的内核版本支持安全删除特征,但是从1.3系列的内核开始,开发者抛弃的对这个特征的实现,因为它似乎只能够提高一点点的安全性,而糟糕的是它会给不熟悉安全删除继承问题的用户造成安全的假象。

在对具有A属性的文件进行操作时,A属性可以提高一定的性能。而S属性能够最大限度的保障文件的完整性。

本文将主要讨论a属性和i属性,因为这两个属性对于提高文件系统的安全性和保障文件系统的完整性有很大的好处。同样,一些开放源码的BSD系统(如:FreeBSD和OpenBSD),在其UFS或者FFS实现中也支持类似的特征。



2.使用什么命令设置和显示ext2文件系统的属性


在任何情况下,标准的ls命令都不会一个文件或者目录的扩展属性。ext2文件系统工具包中有两个工具--chattr和lsattr,专门用来设置和查询文件属性。因为ext2是标准的Linux文件系统,因此几乎所有的发布都有e2fsprogs工具包。如果由于某些原因,系统中没有这个工具,你可以从以下地址下载这个工具包的源代码编译并安装:


http://sourceforge.net/projects/e2fsprogs


lsattr命令只支持很少的选项,其选项如下:



-a

列出目录中的所有文件,包括以.开头的文件。


-d

以和文件相同的方式列出目录,并显示其包含的内容。


-R

以递归的方式列出目录的属性及其内容。


-v

列出文件版本(用于网络文件系统NFS)。


chattr命令可以通过以下三种方式执行:



chattr Si test.txt

给test.txt文件添加同步和不可变属性。


chattr -ai test.txt

把文件的只扩展(append-only)属性和不可变属性去掉。


chattr =aiA test.txt

使test.txt文件只有a、i和A属性。


最后,每个命令都支持-R选项,用于递归地对目录和其子目录进行操作。



3.ext2属性和文件权限的区别


几乎所有的系统管理员都理解UNIX风格文件系统的权限和所有者以及ls命令的显示,例如:


[root@typhoid nixe0n]# ls -al test*
-rw-rw-r-- 1 nixe0n users 0 Nov 17 17:02 test.conf
-rw-rw-r-- 1 nixe0n users 0 Nov 17 17:02 test.log
-rw-rw-r-- 1 nixe0n users 0 Nov 16 19:41 test.txt


从ls的输出结果看,这些文件属于用户nixe0n,而nixe0n所在的用户组是users。用户nixe0n本人和users用户组的成员尉有具有对文件的修改权限,而其他的用户只有读取文件的权限。下面是lsatt

[1] [2] [3] 下一页

教程录入:admin    责任编辑:admin 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     
     
     
     

    dos入门教程

    dos入门教程-2

    dos入门教程-1
    免责声明!本站资料大部分来自于互联网,其版权归原作者或其他合法者所有.如内容涉及或侵犯了您的权益,请通知本人,我将尽快处理!.欢迎您的光临。
    辽ICP备07003958号
    无师自通,伴你一生-教程网