服务器操作系统的安全配置

在众多服务器操作系统中,Windows 2000 Server 是比较流行的服务器操作系统之一,它包含很多的安全功能和选项,但要想安全的配置这个操作系统并不容易。在此我结合许多系统管理员的成功经验,以及在实际工作中的一些体会和看法,谈一下微软Windows 2000 Server 操作系统的安全配置问题。

一、安装前的选择

(一)选择版本

Windows 2000 Server 有各种语言的版本,可以选择英文版或简体中文版,如果语言不是障碍,建议使用英文版。因为中文版的漏洞远远多于英文版,而补丁一般会晚至少半个月,也就是说一般在发现了漏洞后你的计算机还会有半个月处于无保护状况。

(二)定制组件

Windows 2000 Server 在默认情况下会安装一些常用的组件,而这个默认安装是不安全的,你应该确切的知道你需要哪些服务,并仅仅安装你需要的服务,原则是最少的服务加最小的权限是最大的安全。一个典型的Web 服务器需要的最小组件选择是:只安装IIS 的“Internet 服务管理器”,“World Wide Web 服务器”和“公用文件”这三个服务组件。为安全起见对其它组件的安装要慎重选择,特别是“FrontPage 2000 Server服务器扩展”和“Internet 服务管理器(HTML)”这两个服务组件。

(三)选择远程管理程序

选择一个好的远程管理软件非常重要,这不仅仅是安全方面的要求,也是应用方面的需要。Windows 2000Server 的Terminal Service(终端服务)是基于RDP(远程桌面协议)的远程控制软件,它速度快,操作方便,较适合用来进行常规操作。为了安全起见,建议再配备一个远程控制软件作为辅助,和Terminal Service 互补,如PCAnyWhere 就很不错。

二、Windows 2000 Server 的正确安装

(一)硬盘分区

不要将硬盘仅仅分为一个逻辑分区,这是很不好的习惯,建议最少建立两个分区,一个系统分区,一个应用程序分区,因为IIS 经常会有泄漏源码或溢出的漏洞,如果把系统和IIS 放在同一个驱动器会导致系统文件的泄漏,甚至使入侵者远程获取系统控制权。推荐的安全配置是建立三至四个逻辑驱动器,第一个驱2G 以上(推荐I0G),用来安装系统和存放重要的日志文件,第二个驱放置IIS,第三个驱放置FTP,第四个驱备份重要数据,这样无论IIS 或FTP 出了安全漏洞都不会直接影响到系统目录和系统文件,重要数据也不会丢。另外,使用NTFS 格式化所有分区。NTFS 文件系统要比FAT,FAT32 的文件系统安全得多。

(二)正确的安装顺序

I. 在安装前,先断开网络,即拔掉与网卡连接的网线:Windows 2000 Server 在安装时有一个漏洞,在你输入Administrator 密码后,系统就建立了Admin 的共享(远程系统控制用),但是并没有用你刚刚输入的密码来保护它,这种情况一直持续到你再次启动后,在此期间,任何人都可以通过Admin 进入你的机器,因为它没有密码保护。因此,在完全安装并配置好远程控制系统之前,一定不要把计算机接入网络。

2. 安装所需应用程序:应该避免在服务器上安装客户端应用程序,除非是那些对于服务器运行所必需的应用程序。如不应当安装电子邮件客户端、办公软件或对服务器来说并非完全必要的应用程序。

3.安装补丁程序(为操作系统打补丁):补丁的安装应该在所有应用程序安装完之后,因为补丁程序往往要替换或修改某些系统文件,如果先安装补丁再安装应用程序有可能导致补丁不能起到应有的效果。而且在服务器日常使用过程中,要经常访问微软和一些安全站点,下载最新的Service Pack 和漏洞补丁,保障服务器长久安全的工作。

三、配置Windows 2000 Server

即使正确的安装了Windows 2000 Server,系统还是有很多的漏洞,还需要进一步进行细致地配置。

(一)端口

端口是计算机和外部网络相连的逻辑接口,也是计算机的第一道屏障,端口配置正确与否直接影响到计算机的安全,一般来说,仅打开你需要使用的端口会比较安全,配置的方法是在网卡[属性][TCP/IP][高级][选项][TCP/IP 筛选]中启用TCP/IP 筛选,添加需要的TCP、UDP 端口即可。另一种方法是安装防火墙软件,如“天网”、“Lock Down”、“Norton”、“ZoneAIam”等,用防火墙软件管理系统端口更为方便。

(二)IIS(Internet 信息服务管理器)

IIS 是漏洞很多的一个组件,对IIS 的配置是个重点。首先,把C 盘的Inetpub 目录删掉,在D 盘建一个Inetpub(也可以改一个名字如Netsite 等),在IIS 管理器中将主目录指向D: Inetpub(或自定义目录)。其次,IIS安装时默认的Scripts 等虚拟目录一概删除,如果你需要什么权限的目录可以自己建,注意写权限和执行程序的权限,没有确实需要不要分配给其它用户。

(三)应用程序

在IIS 管理器中删除必须之外的任何无用映射,如除ASP 和其他你确实需要用到的文件类型之外,其余的映射都有可能出现问题,如:HTW,HTR,IDO,IDA 等。

(四)服务

windows 2000 Server 在每次启动时,会启动很多默认的服务,这些服务可能是不必要的,如果不经过一定的服务选择,不仅仅占用一定的服务器资源(CUP 或内存等),而且会给管理带来很多麻烦,更有可能给非法用户提供方便之门。要留意服务器上开启的所有服务,并每天检查它们,以避免恶意程序以服务的方式悄悄运行。

(五)安全日志

l.打开审核策略:Windows 2000 Server 的默认安装是不开任何安全审核的,你可以到[本地安全策略][审

核策略]中打开相应的审核,推荐的审核是:

账户管理成功失败

登录事件成功失败

对象访问成功失败

策略更改成功失败

特权使用失败

系统事件成功失败

目录服务访问失败

账户登录事件成功失败

如果审核项目太多不仅会占用系统资源而且会导致你根本没空去看,这样就失去了审核的意义。

2. 打开密码策略:在[账户策略][密码策略]中设定:

密码复杂性要求启用

密码长度最小值6 位

强制密码历史5 次

最长存留期42 天

3、开启帐户策略:在[账户策略][账户锁定策略]中设定:

账户锁定3 次错误登录

锁定时间20 分钟

复位锁定计数20 分钟

同样,TerminaI Service 的安全日志默认也是不开的,我们可以在[TerminaI Service Configration(远程服务配

置)][权限][高级]中配置安全审核,一般地只要记录登录、注销事件就可以。

四、用户账号及目录文件权限

(一)用户帐号的管理

l.限制空连接:Windows 2000 Server 的账号安全是另一个重点,首先,Windows 2000 Server 的默认安装允许

任何用户通过空用户得到系统所有账号或共享列表,这个本来是为了方便局域网用户共享文件的,但是一个

远程用户也可以得到你的用户列表并使用暴力法破解用户密码。我们知道可以通过更改注册表Hkey-LocaI-47

服务器操作系统的安全配置

Machine System CurrentControISet ControI LSA RestrictAnonymous = l 来禁止l39 空连接,实际上Windows

2000 Server 的本地安全策略(如果是域服务器就是在域服务器安全和域安全策略中)就有这样的选项Restrict-

Anonymous (匿名连接的额外限制),这个选项有三个值:

0:无,取决于默认的权限

l:不允许枚举SAM 帐号和共享

2:没有显式匿名权限就不允许访问

其中,0:这个值是系统默认的,什么限制都没有,远程用户可以知道你机器上所有的账号、组信息、共享目录、网络传输列表等等,对服务器来说这样的设置非常危险。l:这个值是只允许非NULL 用户存取SAM 账号信息和共享信息。2:这个值是在Windows 2000 Server 中才支持的。推荐设为l 比较好,这样入侵者没有办法取到用户列表,帐户也就安全多了。2. 停掉Guest 帐号:在计算机管理的用户里面把guest 帐号停用掉,任何时候都不允许guest 帐号登陆系统。为了保险起见,最好给guest 加一个复杂的密码。

3. 限制不必要的用户数量:去掉所有的dupIicate user 帐户,测试用帐户,共享帐号,普通部门帐号等等。用户组策略设置相应权限,并且经常检查系统的帐户,删除已经不在使用的帐户。这些帐户很多时候都是黑客们入侵系统的突破口,系统的帐户越多,黑客们得到合法用户的权限可能性一般也就越大。

4.把administrator 帐号改名:我们知道,windows 2000 的administrator 帐号是不能被停用的,这意味着别人可以一遍又一边的尝试这个帐户的密码。把Administrator 帐户改名可以有效的防止这一点。在[计算机管理][用户账号]中右击Administrator 将其改名。当然,不要使用Admin 之类的名字,改了等于没改,尽量把它伪装成普通用户。

5.创建一个陷阱帐号:创建一个名为”Administrator”的本地帐户,把它的权限设置成最低,什么事也干不了的那种,并且加上一个超过l0 位的超级复杂密码。这样让那些入侵者白忙活。

6. 不显示上次登录的用户名:打开注册表HKEY-LOCAL-MACHINE SOFTWARE Microsoft WindowsNT Currentversion WinIogon 项中的DontDispIayLastUserName,把REG SZ 的键值改成l ,这样系统不会自动显示上次的登录用户名。

(二)用户的目录和文件权限

为了控制好服务器上用户的权限,同时也为了预防以后可能的入侵和溢出,还必须非常小心地设置目录和文件的访问权限,NT 的访问权限分为:读取、写入、读取及执行、修改、列目录、完全控制。在默认的情况下,大多数的文件夹对所有用户(Everyone 这个组)是完全敞开的,你需要根据应用的需要对权限

进行重新设置。

l. 用户权限的分配:

利用用户组来进行权限控制是系统管理员必须具有的优良习惯之一,给不同的用户组分配不同的真正需要的权限是相当重要的。一定要注意权限是累计的:如果一个用户同时属于两个组,那么其就有了这两个组所允许的所有权限。

2. 目录和文件权限:可以为目录和文件设定用户及用户组组访问权限,但一定要注意拒绝的权限要比允许的权限高(拒绝策略会先执行),如果一个用户属于一个被拒绝访问某个资源的组,那么不管其它的权限设置给他开放了多少权限,他也一定不能访问这个资源;使用拒绝以要小心,任何一个不当的拒绝都有可能造成系统无法正常运行,同时注意文件权限比文件夹权限高;还要注意目录权限与父目录权限以及子目录权限的继承关系。因而设定目录和文件权限一定要小心。

3. 把共享文件的权限从”everyone”组改成“授权用户”“everyone”在win2000 中意味着任何有权进入你的网络的用户都能够获得这些共享资料。任何时候都不要把共享文件的用户设置成”everyone”组。包括打印共享,默认的属性就是”everyone”组的,一定不要忘了改。