当前,企业局域网都有文件服务器,通常会将单位重要的共享文件放到服务器进行共享,这一方面方便大家工作,便于协同办公;另一方面也为大家存储工作中形成的重要文件提供了方便。但是,这也使得员工可以随时访问服务器重要的共享文件,一旦将这些文件复制到自己的电脑,尤其是外来电脑;或者外部人士随意访问公司共享文件,都会使得共享文件面临着各种风险。为此,设置共享文件访问权限、监控共享文件夹访问,就成为企业共享文件管理的重要工作。
权限
要了解如何对文件服务器进行授权,也就是说如何设置文件夹的权限,必须首先明白什么是权限。权限其实是一张表,这张表中记录了什么用户可以使用什么方式访问什么对象。例如在图一中,我们新建了一个secret文件夹,这里面是机密文件,只允许DG_IT这个群组访问。但是这个群组中有一位即将离职的员工刘海波Louis_liu,自然不能允许这个账户再访问secret文件夹。那么我们可以这样设置,将DG_IT群组加入这张“安全表”,并授予相应的权限,同时也添加Louis_liu账户,设置这个账户拒绝访问该文件夹的权限。通常我们把这张“安全表”叫做自主访问控制列表discretionary access control list (DACL)
在设置DACL的时候,一般不要将用户账户一个个添加进来,而是添加一个群组,这样有利于提高系统访问的效率和方便管理。
我们授权DG_IT这个群组可以访问secret文件夹,且只有DG_IT组可以及读取、浏览和执行IT_Public下面的文件,则此时任何不属于DG_IT组用户读取该文件夹下的文件时,就会遭到系统的拒绝。
共享与安全
出于安全性的考虑,当您在服务器上共享文件夹的时候,需要设置两个权限:共享权限和安全权限。这两个权限的关系,可以通过一个网络用户的访问过程来说清楚。当用户从网络访问一个目录时,系统先校验共享权限,看看这个用户是否在共享权限允许的范围内。如果允许访问再校验安全权限。所以这个目录较终允许什么用户访问,将取决于共享权限和安全权限的交集。当前安全权限和共享权限在同一对象上发生冲突或者叠加时,取较严格的设置。
共享权限
利用windows server 2003 R2来实现文件服务器,共享权限是必不可少。共享权限是用以控制文件夹及其子文件夹和文件来进行共享的。文件夹共享的特性不管是基于fat16/32还是NTFS分驱,本身就具有。同样子文件夹会继承这种属性。共享文件夹只针对从网络上访问才有限,对于本机访问是属于无效的,不同于文件夹的安全性设定。共享权限优大于NTFS安全权限,例如IT_Public设置了允许Jimmy完全控制的安全权限,但共享权限当中却只有只读的权限,结果Jimmy对IT_Public的较大权限是只读权限,而不是完全控制。在设置文件夹共享建议把该权限设置为完全控制,否则后面的安全权限设置完全失去了意义,除非是Fat32/16没有安全权限,但该分区是不大可能用来作文件服务器分区。
安全权限
因为大家通常都在Windows NTFS类型的分区上设置文件夹的安全权限(在FAT 16/32 的分驱上是没有的),所以有人也喜欢把安全全权限叫做NTFS权限。这是基于NTFS文件系统的磁盘分驱特有的权限。NTFS分驱下面的每个文件夹、子文件夹及其文件均允许设置与上一级不同的权,权限一经设定,不但对本机存取的安全主体有效,而且对整个网络的安全主体都有效。默认情况下其子文件夹及文件会自动继承上级权限,但若有必要,也可针对的每一个子文件夹及文件予以设定个别权限。但在实际只是缩小上级权限的范围,我们不需要一个个添加,只需要对某个文件进行阻断继承设置,去掉限制访问的用户,也可以是添加拒绝访问的用户,设置拒绝访问权限。至于用哪一种方法好,起决个人习惯,大多数人使用较早种方法。修改子文件夹的权限的时候要避免犯低级错误,如添加了一个用户,该用户根本就没有权限访问上级文件夹;设置文件夹权限的时候一定至少要留一个“修改”的权限给管理员作备份用,当然用“完全控制”亦可以,如果严格考虑到网络的安全因素,建议用前者。
NTFS权限有多少,可以细化到一个什么样的程度呢?下面将对NTFS权限作一个全面剖析和比较。标准的NTFS权型有五种分别是:写入,读取,读取及执行,修改,完全控制。这几种权限是属于NTFS的标准权限,虽然从上面的权限上我们可以大致看出它们都具备什么样的功能。但是实际上这几种功能远远不能满足于实际的需求,例如Jimmy想要授权给Tom能删除文件,但很现有的五种权限似乎都不满足,都不精确,那么列底该给他一个什么样的权限呢才合适。实际上windows2003在这6种标准的权限的背后,还分别对应一组共计13项的“有效权限”(如图二),为了方便权限的管理,windows才将权限简化成6大标准权限,其对应关系如下表:
|
遍历文件夹/运行文件
|
列出文件夹/读取数据
|
读取属性
|
读取扩展属性
|
创建文件/写入数据
|
创建文件夹/附加数据
|
写入属性
|
写入扩展属性
|
删除子文件夹及文件
|
删除
|
读取权限
|
更改权限
|
取得所有权
|
||||||||
完全
控制
|
√
|
√
|
√
|
√
|
√
|
√
|
√
|
√
|
√
|
√
|
√
|
√
|
√
|
||||||||
修改
|
√
|
√
|
√
|
√
|
√
|
√
|
√
|
√
|
|
√
|
√
|
|
|
||||||||
读取 与运行
|
√
|
√
|
√
|
√
|
|
|
|
|
|
|
√
|
|
|
||||||||
列出文件夹目录
|
√
|
√
|
√
|
√
|
|
|
|
|
|
|
√
|
|
|
||||||||
读取
|
|
√
|
√
|
√
|
|
|
|
|
|
|
√
|
|
|
||||||||
写入
|
|
|
|
|
√
|
√
|
√
|
√
|
|
|
|
|
|
从上表中,我们可以得知五个标准权限的对应的有效权限。比如修改权限,除了不具备“删除子文件夹及文件”、“更改权限”和“取得所有权”这三个功能外,它具备有效权限的其它所有功能。需要强调一点,“写入”权限与“读取”权限并没有关联。读取权限比较好理解,但是写入权限不具备读取的能力理解起来如何有点困难,其实具有写入权限的用户虽然不能直接对文件进行读取,但可以通过修改文件的属性,或者是以另外一个文件的内容来覆盖原始文件。 “读取”及“运行”权限比较好理解,它涵盖了读取所能做的所有事,外加允许运行可运行文件。“修改”权限涵盖了读取、读取及执行及写入所能做的所有事,外加允许删除。“完全控制”权限涵盖了修改所能做的所有事(含读取、读取及执行及写入),外加允许改变用户权限及取得拥有权。在设计共享文件夹时建议至少留给一个完全控制权限给管理员,方便权限权限丢失时来取得所有权,其它用户端就没有必要给完全控制权限。
文件夹权限设置
Windows 之所以设计成基本权限及特别的权限架构,将13项有效权限组合成六项较常用的标准权限,这样可以有效避免用户或网络管理人员直接面对众多复杂多样的权限,通过简化文件权限有效提升了管理效率。当然,这也不等于说windows特别权限可以取消了,不需要了。实际在许多场合下面还是需要利用到特别权限。当您在Windows 上有特殊的权限需要,可以自行将有效权限予以组合。
例如以标准权限而言,让用户或群组有能力删除档案,至少需要赋予修改的权限,但事实上从前面的列表中你会发现“修改”的权限不但能删除,还能新增、读取、写入等等,权限相当的大。如果您只希望用户能读取和删除,却不能写入,此时就可以自行在13项有效权限中加以组合。这种组合而成非标准的权限,我们称之为特别的殊权。
在Windows NT下,每一个文件夹及文件的权限都可以自行设定,并会各自随该对象存取在文件系统中。当建立一个新的子文件夹或新文件时,会参照上层文件夹的设定成为新对象的预设权限。新物件一经建立完成,在上下层之间的权限从此各自独立,没有继承关系。但在每一次重新设定或修改文件夹的权限时,可选择是否需要以新权限取代该文件夹下的原有使用权限。
但在windows 2003以及R2版本下,对于上层文件夹所设定的NTFS权限默认值会自动继承到其子文件夹及文件。继承过来的权限属性以灰色状态呈现,不能直接对其权限进行修改。如果不想下面的物件继承上级权限,可以通过“高级”à“权限”,然后去掉选中“从父项继承那些可以应用到子对象的权限项目,包括那些在此明确定义的项目(I)”这个选项,再通过“添加”、“删除”和“编辑”来修改权限,修改权限时应该注意一个问题,新增的子文件夹权限必须是能够读取上级文件夹的权限,否则连父文件夹都不能读取不可能进入子文件夹。
对象访问身份验证
当用户打开一个对象时,操作系统中就会启动一个进程,一个进程同时又有可能被切割成多个线程平行运算。在每一个线程上都会标有当前用户的访问令牌,当这个线程去访问某一网络资源时,访问令牌就代表这个用户的身份,从而决定了访问的动作是被允许还是拒绝。例如Tom想访问文件服务器上面的public文件夹,fileserver主机会检查该文件夹的权限列表,比较是否有符合的存取控制权利的SID与该访问令牌中所列的用户或群组的SID相符。它的执行过程是:
l 明确拒绝的存取控制项目操作系统会优先执行,首先判断访问令牌当中的任何一个SID是否与明确拒绝存取控制项目相符,若是则存取立即被拒绝。
l 其次再判断访问令牌当中是否有SID与较早项访问控制项目的SID相符,不符自动会跳到下一个存取控制项目,而相符则允许存取。
l 若线程想要执行的动作既没有允许的存取控制项目,又没有明确的拒绝存绝,则执行操作系统的默认拒绝存取。
权限访问控制是实现文件服务器安全当中非常重要的一部分,一个连操作系统权限访问控制都不太了解的管理员,是不可能管理好企业网络安全的。
规划与审核策略
文件服务器规划也比较重要,规划合不合理会牵涉到日后的日常管理工作。建议文件服务器的规划时参照活动目录OU和Group设计架构,AD的设计建议要参照公司的行政管理结构。例如某公司有五大部门,OU设计都是按照部门在规划的,那么共享文件夹也建立五个,参照部门名称建立,下面再建立相关子文件夹。必要的时候为了方便权限的设计,可以在OU中建立相同特点的用户组,再配加合理的权限,文件服务器初步建立。仅仅设置好文件服务器的权限,还是远远不够的。因为管理员不知道什么人,什么时候,会以什么方式,访问了什么内容,这就是为什么要建立文件服务器安全审核机制。审核的内容按管理者的要求而定。由于文件审核会占用一定的系统资源,这与审核文件的多少成正比,现实环境当中我们也只对特殊重要的文件才进行审核。对文件服务器的审核管理员需要设定安全审核原则,将其关注的文件状态纪录在安全审核记录中,以备日后审查(如图三)。安全审核具有以下目的:
1、可以有效防止重要文件因管理员的疏忽权限设置不对,造成非法的破坏,管理员可以事后根据审核记录,查出肇事者;
2、可以知道重要的文件试图被哪些人非法读取或修改,结果是成功还是失败。
3、重要文件被合法的授权用户进行非法更改,用户拒不承认,审核记录可以作为较后的凭证。
Windows server 2003 R2审核策略共有九项,分别是审核策略的更改、审核登陆事件、审核对象访问、审核过程追踪、审核目录服务访问、审核特权使用、审核系统事件、审核帐户登录事件、审核帐户管理。以上列各项设定大多只要设定启动,刷新策略生效后即会开始记录,较后审核的结果会全部存放在事件检视器的安全性当中。比较特别的是审核对象访问及审核目录服务存取等两项,审核对象访问的对象指的是打印机和NTFS分驱下的文件夹和文件;审核目录服务存取的目录服务指的是windows 2003 AD中的对象。
例:用户huojun_xu复制名片.doc到文件服务器上IT_Public共享文件夹,审核记录成功和失败的日志。
在IT_Public这个文件夹上授予huojun_xu的权限是“读取和运行”、“列出文件夹目录”、“读取”这三个权限。Huojun_xu的访问被拒绝。打开“事件查看器”à“安全性”我们找到失败审核,如图四
[小结]存在不足
Windows Server 2003 R2虽然比起以前版本实现文件服务器有很多改进,比如添加了文件屏蔽、磁盘限额,但依然存在许多不足。这些不足表现在如下方面:
l 文件审核过于检查,检查起来比较麻烦。当一个文件有多个人访问时,文件泄密就非常难查。
l 不能实现对文件进行加密,虽然微软有RMS系统,但只适合于Office系统,往往公司较重要的不是Office文件,而是设计之类的。
l 无法对文件进行归档。比如某大型企业有若干台文件服务器,并部署了DFS系统。若干年后,文件服务器的承载越来越大,如何判断哪些文件有重要的有效的,哪些年久的文件可以删除,没有再利用的价值。
l 文件屏蔽功能虽然有,但显得很苍白,只是根据文件的扩展名来屏蔽,换了一个扩展名就无能为力了。
希望微软在下一代操作系统中对文件服务器的功能有更大重视,安全性能够更高,目前个人感觉微软对文件服务器并不是十分重视,文件服务器设计过于简单。
但是,我们可以借助第三方服务器共享文件管理软件来保护共享文件的安全。例如有一款大势至共享文件夹管理软件(下载地址:http://www.grabsun.com/gongxiangwenjianshenji.html),只需要在服务器上安装就可以自动扫描服务器共享文件,并且点点鼠标就可以设置不同用户访问共享文件夹的不同权限,可以只让读取共享文件而禁止复制共享文件、只让打开共享文件而禁止另存为本地磁盘、只让修改共享文件而禁止删除共享文件等,以及禁止拖动共享文件、禁止打印共享文件,禁止共享文件重命名、禁止剪切共享文件等,全面保护共享文件的安全。如下图所示:
图:大势至共享文件管理系统
此外,通过本系统还可以详细记录共享文件访问日志,并可以导出为Word和Excel等格式,从而便于事后备查和审计。如下图:
总之,企业保护共享文件的安全,一方面需要充分发挥操作系统的相关功能,另一方面也需要借助第三方共享文件夹监控软件来实现。