Windows Server 2003服务器安全配置基础

硬件周刊

  网络安全是网络管理的一个重点,好的安全系统可确认试图访问计算环境的人的身份,防止冒名顶替者的访问、盗窃或者破坏系统资源;保护环境中的特定资源免受用户的不正当访问;为设置和维护用户工作环境中的安全性提供了一种简单而有效的方法,同时防止信息和资源被损坏以及有人未授权访问。本文以Windows Server 2003(以下简称Windows 2003)为例,介绍服务器安全配置的基础知识。

  一、安全基本概念

  1.安全模型

  Windows 2003安全模型的主要功能是用户身份验证和访问控制。

  (1)用户身份验证

  Windows 2003安全模型包括用户身份验证的概念,这种身份验证赋予用户登录系统访问网络资源的能力。在这种身份验证模型中,安全性系统提供了两种类型的身份验证,即交互式登录(根据用户的本地计算机或Active Directory账户确认用户的身份)和网络身份验证(根据此用户试图访问的任何网络服务确认用户的身份)。

  为提供这种类型的身份验证,Windows 2003安全系统包括了3种不同的身份验证机制:Kerberos V5、公钥证书和NTLM(与 Windows NT 4.0 系统兼容)。

  (2)基于对象的访问控制

  通过用户身份验证,Windows 2003允许管理员控制网上资源或对象的访问。Windows 2003通过允许管理员为存储在Active Directory中的对象分配安全描述符实现访问控制。安全描述符列出了允许访问对象的用户和组,以及分配给这些用户和组的特殊权限。安全描述符还指定了需要为对象审核的不同访问事件。文件、打印机和服务都是对象的实例。通过管理对象的属性,管理员可以设置权限,分配所有权以及监视用户访问。

  管理员不仅可以控制对特殊对象的访问,也可以控制对该对象特定属性的访问。例如,通过适当配置对象的安全描述符,用户可以被允许访问一部分信息。

  (3)Active Directory和安全性

  Active Directory通过使用对象和用户凭据的访问控制提供了对用户账户和组信息的保护存储。由于Active Directory不仅存储用户凭据还存储访问控制信息,因此登录到网络的用户将同时获得访问系统资源的身份验证和授权。

  例如,用户登录到网络时,Windows 2003安全系统通过存储在Active Directory上的信息来验证用户。然后,当用户试图访问网络上的服务时,系统检查由任意访问控制列表为这一服务定义的属性。由于Active Directory允许管理员创建组账户,因此管理员可以更有效地管理系统的安全性。例如,通过调节文件属性,管理员可以允许组中的所有用户读取文件。这样,访问Active Directory中的对象以组成员为基础。

  2.域的体系结构

  (1)域和安全性

  域是网络对象的分组。例如,用户、组和计算机。域中所有的对象都存储在Active Directory下。Active Directory可以常驻在某个域中的一个或多个域控制器下。每个域都是一个安全界限,这意味着安全策略和设置(例如,系统管理权利、安全策略和访问控制表)不能跨越不同的域。特定域的管理员有权设置仅属于该域的策略。由于每个域都是一个安全壁垒,因此不同的管理员可以在单位中创建和管理不同的域。

  理解域的关键是:安全策略可以贯穿整个域来实现;为保证数据库的同步,包括安全信息的Active Directory会定期复制到域中每个域控制器;Active Directory中的对象可以按组织单位的不同级别进行组织和管理;可转移的信任关系可以建立在域树中的域之间。

  (2)单个域和多个域

  Windows NT 4.0限制了目录可以存储的用户账户的个数。因此,为了适应大环境的需要,创建和管理多个域,且每个都拥有自己的用户账户目录,对于单位来说就非常必要了。域通常可以按主域(存储用户和组的账户)和资源域(存储文件、打印机、应用程序服务等等)进行组织。

  这种多域的计算环境被称为多主域模式。多主域模式意味着资源域需要与所有的主域具有多个信任关系。这些信任关系允许主域的用户访问资源域中的资源。

  通过扩大存储用户、组和计算机账户的能力,Active Directory可实现多个域的功能,因此取而代之。通过Active Directory,管理员可以把跨越多个域的所有账户(过去必须存储在主域中)和所有资源(过去必须存储在资源域中)合并到单个域中。出于管理的目的,管理员可以在域中将对象分组到不同组织单位(OU)中以维持对象的逻辑分组。然而,在某些情况下,用户出于策略原因可能希望保留多个域。

  (3)可转移的信任关系

  当用户将对象从多个域转到单个域时,会降低必须建立和保持的域信任关系的数量。同样,将域合并成单个域林时,这些域将自动建立可转移的信任关系,减少了在域之间手动建立信任关系所需的数量。要访问域林中所有其他域,每个域同域林中的另一个域只需要一个信任关系。

  (4)服务器角色

  域中的服务器担当下面的其中一种角色:

  域控制器运行Active Directory并且提供身份验证和策略。

  成员服务器不提供身份验证和策略,常作为文件、应用程序、数据库、Web服务器等使用。

  3.身份验证

  身份验证是系统安全性的一个基本方面。它负责确认试图登录域或访问网络资源的任何用户的身份。Windows 2003身份验证允许对整个网络资源进行单独登记。采用单独登记的方法,用户可以使用单个密码或智能卡一次登录到域,然后通过身份验证向域中的所有计算机表明身份。

  Windows 2003支持几种工业标准的身份验证类型。验证用户身份时,Windows 2003依据多种要素使用不同种类的身份验证。Windows 2003支持Kerberos V5 身份验证;安全套接字层(SSL)和传输层安全性(TLS)的身份验证;NTLM身份验证。

  在Windows 2003中,NTLM被用作域中两台计算机之间事务的身份验证协议,其中一台或两台计算机运行Windows NT 4.0或更早版本。Windows 2003在默认情况下以混合模式网络配置安装。混合模式的网络配置使用Windows NT 4.0和Windows 2003的任意组合系统。如果没有混合模式网络,可以在域控制器中转换为本地模式来禁用NTLM身份验证。

  4.授权

  Windows 2003的安全性建立在身份验证和授权之上的,管理员可以指派特定权利组账户或单个用户账户。

  用户权利定义了本地级别上的功能。虽然用户权利可以应用于单个的用户账户,但最好是在组账户基础上管理。这样可以确保作为组成员登录的账户将自动继承该组的相关权利。通过对组而不是对单个用户指派用户权利,可以简化用户账户管理的任务。当组中的用户都需要相同的用户权利时,用户可以一次对该组指派用户权利,而不是重复地对每个单独的用户账户指派相同的用户权利。

  对组指派的用户权利应用到该组的所有成员(在它们还是成员时)。如果用户是多个组的成员,则用户权利是累积的,这意味着用户有多组权利。指派给某个组的权利只有在特定登录权利的情况下才会与指派给其他组的权利发生冲突。然而,指派给某个组的用户权利通常不会与指派给其他组的权利冲突。要删除用户的权利,管理员只需简单地从组中删除用户。在这种情况下,用户不再拥有指派给这个组的权利。

  用户权利有两种类型:特权和登录权利。

  特权:特权的一个典型范例就是备份文件和目录的权利。

  登录权利:登录权利的一个典型范例就是登录本地系统的权利。

  5.审核

  安全审核是Windows 2003的一项功能,负责监视各种与安全性有关的事件。监视系统事件对于检测入侵者以及危及系统数据安全性的尝试是非常必要的。

  应该被审核的最普通的事件类型包括:访问对象,例如文件和文件夹;用户和组账户的管理;用户登录以及从系统注销时。

  除了审核与安全性有关的事件,Windows 2003还生成安全日志并提供了查看日志中所报告的安全事件的方法。

  6.安全策略

  安全设置定义了系统的安全相关操作。通过对Active Directory中组策略对象的使用,管理员可以集中应用保护企业系统所要求的安全级别。确定包括多台计算机的组策略对象的设置时,必须考虑给定站点、域或单位的组织和功能特征。例如,销售部门的计算机和财务部门的计算机对安全级别的需要就大不一样。

  (1)安全设置

  安全设置包括安全策略(账户和本地策略)、访问控制(服务、文件、注册表)、事件日志、组成员(受限的组)、网际协议 (IP) 的安全策略和公钥策略。

  (2)安全模板

  安全模板是安全配置的物理表现,一组安全设置应该存储于一个文件中。Windows 2003包括一组以计算机的角色为基础的安全模板,从低安全域客户端的安全设置到非常安全的域控制器。这些模板可用于创建自定义安全模板,修改模板或者作为自定义安全模板的基础。

  (3)安全配置工具

  管理员可使用安全模板管理单元来定义和使用安全模板;可使用安全配置和分析管理单元来配置和分析本地的安全性;可使用组策略管理单元来配置Active Directory中的安全性。

  7.数据保护

  数据的保密性和完整性开始于网络的身份验证。用户可以通过适当的凭据(安全的密码或者公钥凭据)在网络上登录,并在此过程中获得访问存储数据的权限。Windows 2003支持两种数据保护方式:存储数据和网络数据。

  (1)存储数据的保护

  保护存储的数据(联机或是脱机)可以通过:

  文件加密系统(EFS):EFS使用公钥加密技术对本地的NTFS数据进行加密。

  数字签名:数字签名对软件组件进行签名以确保它们的合法性。

  (2)网络数据的保护

  在用户的工作环境(局域网和子网)中的网络数据通过身份验证协议来保护它的安全。用户也可以选择其他的安全级对用户工作环境中的网络数据进行加密。使用IP协议的安全机制,用户可以为指定的客户端或某个域中的所有客户端的所有网络通讯数据进行加密。传入及传出用户所在工作环境的网络数据(通过内部网、外部网或Internet网关)可以使用以下实用程序进行保护:

  网际协议安全。对客户端的所有 TCP/IP 通讯进行加密。

  路由和远程访问。配置远程访问协议和路由。

  代理服务器。为站点提供防火墙和代理服务器。

  另外,Exchange、Outlook和Internet Explorer等程序都提供了某个站点内或者整个网络上的信息和事务的公钥加密。

  8.公钥基础结构

  在这个信息互联的时代,单位的网络可能包括内部网、Internet站点和外部网都有可能被一些未经授权、蓄意盗阅或更改单位数字信息财产的个人访问。

  有许多潜在的机会可未经授权访问网络上的信息。个人可以尝试监视或更改类似于电子邮件、电子商务和文件传输的信息流。用户的单位可能与合作伙伴在限定的范围和时间内进行项目合作,有些雇员用户虽然一无所知,但却必须给他们一定的权限访问用户的部分信息资源。如果用户的用户为了访问不同安全系统需要记住许多密码,他们可以会选择一些防护性较差或很普通的密码,以便于记忆。这不仅给黑客提供一个容易破解的密码,而且还提供了众多安全系统和存储数据的访问。

  那么,管理员怎样才能确定正在访问信息的用户的身份而且利用身份对被访问的信息进行控制呢?另外,管理员怎样才能轻松而安全地分发和管理单位中的身份凭证呢?这些都是可以通过仔细规划的公钥基础结构解决的问题。

  通常缩写为PKI的公钥系统是由数字证书、证书颁发机构(CA)以及核实和验证通过公钥加密方法进行电子交易的每一方的合法性的其他注册颁发机构所构成的系统。尽管作为电子商务必要组成部分的公钥基础结构(PKI)已被广泛应用,但它仍然在发展之中。

  二、控制对象的访问

  1.设置、查看、更改或删除文件和文件夹权限

  双击打开“我的电脑”,然后定位到用户需要设置权限的文件和文件夹。右键点击该文件或文件夹,选择“属性”命令,在出现的对话框中点击“安全”选项卡。如图1所示。

图1

  在该对话框中,如果你需要设置新组或用户的权限,请点击“添加”按钮。在出现的对话框中按照“域名\名称”的格式键入要设置权限的组或用户的名称,完成后点击“确定”按钮。如果你需要更改或删除现有的组或用户的权限,请点击该组或用户的名称,点击“删除”按钮即可。

  如果必要,请在“权限”列表中点击每个要允许或拒绝的权限的“允许”或“拒绝”选项。

  注意:只能在格式化为使用NTFS的驱动器上设置文件和文件夹权限;要更改访问权限,用户必须是所有者或已经由所有者授权执行该操作;无论保护文件和子文件夹的权限如何,被准许对文件夹进行完全控制的组或用户都可以删除该文件夹内的任何文件和子文件夹;如果“权限”列表中的复选框为灰色,或者没有“删除”按钮,则表示文件或文件夹已经继承了父文件夹的权限。

  2.设置、查看或删除共享文件夹或驱动器的权限

  双击打开“我的电脑”,然后定位到用户需要设置权限的共享文件夹或驱动器。右键点击该文件或文件夹,选择“属性”命令,在出现的对话框中点击“共享”选项卡,点击“共享该文件夹”选项,然后点击“权限”按钮,打开相应对话框。

  在这里,要设置共享文件夹权限,请点击“添加”按钮。然后在打开的对话框中键入要设置权限的组或用户的名称,完成后点击“确定”按钮。要删除权限,请在“组和用户名称”列表中选择相应组或用户,点击“删除”按钮即可。

  最后,在“权限”列表中,如果需要,请对每个权限点击“允许”或“拒绝”选项。

  3.取得文件或文件夹的所有权

  双击打开“我的电脑”,然后定位到用户需要取得其所有权的文件或文件夹。右键点击该文件或文件夹,选择“属性”命令,在出现的对话框中点击“安全”选项卡。点击“高级”按钮,在出现的对话框中点击“所有者”选项卡。如图2所示。点击新的所有者,然后点击“确定”按钮即可。

图2

  注意:选中“替换子容器和对象的所有者”选项,可以更改目录树中所有子容器和对象的所有者。另外,你可以有两种方式转让所有权,一是当前所有者可以授予其他人“取得所有权”权限,允许这些用户在任何时候取得所有权;二是管理员可以获得计算机中任何文件的所有权。但是,管理员不能将所有权转让给其他人。该限制可以保持管理员的责任。

  三、事件的审核

  1.设置、查看、更改或删除文件或文件夹的审核

  双击打开“我的电脑”,然后定位到用户需要审核的文件和文件夹。右键点击该文件或文件夹,选择“属性”命令,在出现的对话框中点击“安全”选项卡。点击“高级”按钮,在出现的对话框中点击“审核”选项卡。

  要设置新组或用户的审核,请点击“添加”按钮,在打开的对话框中的“名称”框中键入新的用户名,然后点击“确定”按钮,系统将自动打开相应“审核”对话框供用户选择。要查看或更改现有组或用户的审核,请点击相应的名称,然后点击“编辑”按钮。要删除现有组或用户的审核,请点击相应的名称,然后点击“删除”按钮。

  注意:在Windows 2003中审核对文件和文件夹的访问之前,用户必须使用“组策略”管理单元来启用“审核策略”中的“审核对象访问”设置。否则,在设置文件和文件夹的审核时,将收到错误信息且不会审核任何文件或文件夹。启用了“组策略”中的审核之后,请查看“事件查看器”中的安全日志,以检查试图访问审核的文件和文件夹是成功还是失败。

  2.查看系统日志

  右键点击“我的电脑”,选择“管理”命令,打开“计算机管理”对话框。在左边窗格中双击“事件查看器→系统”选项,在右边窗格中即可看到当前系统的记录日志。

  四、管理磁盘上的数据加密

  1.加密文件或文件夹

  双击打开“我的电脑”,然后定位到用户需要加密的文件或文件夹,右键点击该文件或文件夹,选择“属性”命令,在出现的对话框中的“常规”选项卡中点击“高级”按钮,在出现的对话框中选中“加密内容以便保护数据”选项即可。

  注意:只可以加密NTFS文件系统卷上的文件和文件夹。不能加密压缩的文件或文件夹。无法加密系统文件。

  在加密文件夹时,系统将询问是否要同时加密文件夹内的所有文件和子文件夹。如果选中,那么文件夹中当前的和将来要添加的所有文件或子文件夹都将被加密。如果选择仅加密文件夹,则文件夹中当前所有文件和子文件夹将不加密。然而,任何将来被加入文件夹的文件和子文件夹在加入时均被加密。

  在加密单个文件时,系统将询问是否要同时加密包含它的文件夹。如果选中,所有将来添加进文件夹中的文件和子文件夹都将在添加时自动加密。

  创建临时工作文件的程序会损害文件加密的安全性。如果使用这样的程序工作,请在文件夹级别加密,而不要加密单独的文件。

  2.将加密的文件或文件夹移动或还原到另一台计算机

  使用 Windows 2003中的“备份”或任何为Windows 2003设计的备份程序将加密文件或文件夹,移动或还原到与加密该文件或文件夹不同的计算机上。如果用户已经通过漫游用户配置文件访问到第二台计算机,就不必导入和导出加密证书和私钥,因为它们在用户登录的每台计算机上都可用。

  如果没有通过漫游用户配置文件访问第二台计算机,用户可以使用第一台计算机将加密证书和私钥以.pfx文件格式导出。为此,在Microsoft 管理控制台(MMC)中使用“证书”中的“导出”命令。然后,在第二台计算机(在此还原加密的文件或文件夹)上,从MMC的“证书”中使用“导入”命令将.pfx文件导入到“个人”存储区即可。

  五、管理安全模板

  1.启动控制台

  决定是否将安全模板添加到现有的控制台,或创建新控制台。要创建控制台,请点击“开始→运行”菜单项,然后键入“mmc”,点击“确定”按钮即可。

  2.启动安全模板

  点击“文件→添加/删除管理单元”菜单命令,在出现的对话框中点击“添加”按钮,在出现的对话框中的“可用的独立管理单元”列表中选择“安全模板”选项,点击“添加”按钮,点击“关闭”按钮即可完成添加。如图3所示。

图3

  返回到“控制台”主界面,点击“文件→保存”菜单命令,在出现的对话框中输入指派给此控制台的名称,然后点击“保存”按钮即可。控制台将出现在“我的文档”中,可以在桌面上或从“开始”菜单项中访问。

  在安全模板启动后,用户可以执行以下操作:

  要自定义预定义安全模板;定义安全模板;删除安全模板;刷新安全模板列表;设置安全模板说明;将安全模板应用到本地计算机;将安全模板导入到“组策略”对象;查看有效的安全设置。

  六、安全配置和分析

  1.开始安全配置和分析

  启动“控制台”,点击“文件→添加/删除管理单元”菜单命令,在出现的对话框中点击“添加”按钮,在出现的对话框中的“可用的独立管理单元”列表中选择“安全配置和分析”选项,点击“添加”按钮,点击“关闭”按钮即可完成添加。

  返回到“控制台”主界面,点击“文件→保存”菜单命令,在出现的对话框中输入指派给此控制台的名称,然后点击“保存”按钮即可。控制台将出现在“我的文档”中,可以在桌面上或从“开始”菜单项中访问。

  2.设置工作的安全数据库

  在“控制台”主界面中右键点击“安全配置和分析”选项,选择“打开数据库”命令,在出现的对话框中选择现有的个人数据库,或键入文件名创建新的个人数据库。完成后点击“打开”按钮。

  如果这不是当前配置使用的数据库,系统将提示用户选择要加载到数据库的安全模板。如果选择可能已包含模板的现有个人数据库,并且要替换此模板,而不是将它合并到已存储的模板,请选中“导入之前清除这个数据库”选项,点击“打开”按钮,此数据库现在可以用于配置系统。如图4所示。

图4

  3.分析系统的安全性

  右键点击“安全配置和分析”选项,选择“立即分析计算机”命令,在出现的对话框中点击“确定”按钮,即可使用默认的分析日志来分析你的计算机(或输入日志的文件名和有效路径),当分析它们时,将显示不同的安全区域。如图5所示。一旦完成操作,就可以检查日志文件或复查结果。

图5

  当需要进行自动的任务分析时,自动的建立和应用模板、分析系统安全性,可以使用Secedit.exe命令工具,当对多台机器进行分析时,Secedit.exe 工具十分有用。

  Secedit.exe命令语法如下:

  secedit /analyze

  此命令分析系统的安全性。

  secedit /analyze [/DB filename] [/CFG filename] [/log logpath] [/verbose] [/quiet]

  参数

  /DB filename 提供到数据库的路径,此数据库包含执行分析的存储配置。该参数是必需的。如果filename指定了新数据库,也必须指定CFGfilename参数。

  /CFG filename 该参数只有与/DB参数一起使用才有效。它是到安全模板的路径,此安全模板将被导入到数据库中以用于分析。如果没有指定此参数,则根据已存储在数据库中的配置执行分析。

  /log logpath 此过程的日志文件的路径。如果不提供该参数,则使用默认文件。

  /verbose 在分析过程中需要更详细的进度信息。

  /quiet 不使用屏幕和日志文件的输出。使用安全配置和分析将仍然可以查看分析结果。