一、综述

Windows server 2008是目前最先进、最可靠和最安全的windows操作系统,也是中百网站架构的运行支撑平台。针对目前生产服务器的需求情况,基于“最少的服务+最小的权限=最大的安全”原则,从规划、安装、配置几个环节描述如何搭建一个安全的标准系统。

本文档适用于公司在IDC托管的Windows Server 2008操作系统安装和测试环境的Windows系统,本文仅为基准系统的安装。

二、规划

1. 服务规划

规划好系统安装过程与服务器的所需程序、服务,准备好这些安装程序且确保这些安装程序没有任何问题,尽量使用官方提供的安装程序。不要安装任何多余的程序或组件,遵循“最少的服务+最小的权限=最大的安全”原则。

2. 分区规划

所有分区采用NTFS格式,NTFS在空间的利用、安全和性能方面比FAT格式都有较大的提升。

建议分四个区。系统在C盘,空间15G-20G;D/E/F盘平分剩余空间,软件和数据库程序安装在D盘,E盘放临时文件和工具文件,F盘存放日志文件和备份。

尽可能少的向系统盘写入非系统文件以减少系统备份的工作量。

三、基本安全设置

首次登录服务器,在做系统安全配置之前,需要首先进行一些基本的安全设置。

1. 帐户优化

(1)将administrator帐户重新命名为cn100admin,按照密码策略修改密码,可用KeePass软件生成一个密码。

(2)创建一个账户administrator,将密码设置为超级复杂,并且没有任何权限,日常是不使用仅做陷阱账户。

(3)禁用或删除掉guest帐号(手工或工具均可,推荐删除guest)。

2. 启用系统防火墙

鼠标右击“桌面”,在下拉框中选择 “个性化”-“更改桌面图标”,把“计算机、回收站、控制面板、网络”选上,然后“确定”。

鼠标右击“网络”,在下拉框中选择“属性”,依次选择“windows防火墙”-“更改设置”-“启用”,然后“确定”。

3. 杀毒软件

建议所有windows服务器都安装macfee企业版杀毒软件。

如果安装的是MCFEE,请确保启用了以下服务

AutoUpdate     每天

按访问扫描程序   默认

电子邮件传递扫描程序   默认

访问保护  :端口阻挡   默认   文件…保护  全选

缓冲区溢出保护         启用

4. 系统补丁更新

通过Windows Updata安装所有的Windows核心补丁,并且设置成“下载更新,但是让我选择是否安装更新”,在例行维护的时候统一更新。

四、配置本地安全策略

1. 帐户策略

推荐设置如下:

密码策略:密码必须符合复杂性要求<启用>,密码长度最小值设为<8个字符>,密码最短使用期限<0天>,密码最长使用期限<30天>,强制密码历史<3个记住的密码>。

帐户锁定策略:帐户锁定阈值设为<3次无效登录>,复位帐户锁定计数器<60分钟之后>,帐户锁定时间<60分钟>。

2. 本地策略

推荐设置如下:

审核策略:审核策略更改<成功,失败>,审核登录事件<成功,失败>,审核对象访问<失败>,审核目录服务访问<失败>,审核特权使用<失败>,审核系统事件<成功,失败>,审核帐户登录事件<成功,失败>,审核帐户管理<成功,失败>。

用户权限分配:拒绝从网络访问这台计算机中添加guest帐号。

安全选项:不显示最后的用户名<启用>,不允许SAM帐户的匿名枚举<启用>,不允许SAM帐户和共享的匿名枚举<启用>,防止用户安装打印机驱动程序<启用>,将 CD-ROM 的访问权限仅限于本地登录的用户<启用>,将软盘的访问权限仅限于本地登录的用户<启用>,允许在未登录的情况下弹出<禁用>,允许系统在未登录的情况下关闭<禁用>。

五、服务优化

1. 必须禁用的服务

以下服务危险性较大,必须禁用 [先停止服务再将属性设置为:禁用]。

Remote Registry  [说明:禁止远程连接注册表]

server           [说明:禁止默认共享]

Telnet           [说明:禁止telnet远程登陆]

workstation       [说明:防止一些漏洞和系统敏感信息获取]

Certificate Propagation   [说明:为智能卡提供证书,我们不用智能卡]

2. 建议禁用的服务

CNG Key Isolation   [说明:不使用自动有线网络配置和无线网络的可以禁用]

Computer Browser   [说明:维护网络上计算机的更新列表]

Desktop Window Manager Session Manager   [说明:关于桌面Aero的]

Diagnostic Policy Service   [说明:诊断策略服务]

Diagnostic Service Host   [说明:关于服务诊断的,可以跟上面的一起禁用]

Diagnostic System Host   [说明:关于系统诊断的,可以一起禁用]

Fax   [说明:和传真有关的,跟本用不到]

Human Interface Device Access   [说明:键盘上特别的附加按键的启用,不需要]

IKE and AuthIP IPsec Keying Modules   [说明:不用×××或第三方×××的可以禁用]

IP Helper   [说明:就是让IPv4和IPv6互相兼容,现在的情况下不是特别需要]

IPsec Policy Agent   [说明:如需要用到windows域,该服务需要开启]

Netlogon   [说明:登录域会用到它,其实情况下禁用]

Portable Device Enumerator Service   [说明:windows media player相关的]

Print Spooler   [说明:打印服务]

Remote Access Auto Connection Manager   [说明:不需要让程序读取网络信息时自动连接到网络]

Shell Hardware Detection   [说明:为自动播放硬件事件提供通知]

Smart Card   [说明:管理此计算机对智能卡的读取访问]

Smart Card Removal Policy   [说明:允许系统配置为移除智能卡时锁定用户桌面]

TCP/IP NetBIOS Helper   [说明:NetBIOS名称解析]

Terminal Services UserMode Port Redirector  [说明:允许为 RDP 连接重定向打印机/驱动程序/端口]

Windows Audio   [说明:管理基于 Windows 的程序的音频]

注:其它服务就按默认的设置

六、配置windows防火墙

Windows server 2008的防火墙的配置有两种方法:(1)通过高级安全windows防火墙配置界面进行配置;(2)在命令行模式下使用命令进行配置。推荐使用配置界面进行配置,只需手动配置一台服务器,然后将配置导出成一个文件,其他服务器只需导入这个配置文件即可。

1. 打开防火墙配置界面方法

“开始”-“管理工具”-“高级安全windows防火墙”。

鼠标右击“计算机”,选择“管理”,展开“配置”,再展开“高级安全windows  防火墙”。

“开始”-“运行”,输入WF.msc

2. windows防火墙配置

我们做完以上那些后,防火墙默认规则也就剩核心网络这些了,防火墙属性按默认配置即可。Windows 2008防火墙共有三个规则,入站规则、出站规则和连接安全规则,我们一般只需在入站规则里面添加规则。该防火墙还有一点好处,就是以后不管是配置服务器还是安装微软自己的软件,防火墙默认都会添加规则允许通过。安装第三方软件的话,就需要手动添加规则了。

3. 添加一条入站规则(举例)

例如我现在要开放8173端口供WEB服务器文件同步用,源服务器IP:192.168.0.144,目的服务器IP:192.168.0.109、192.168.0.102,那我们只需要添加一条入站规则即可。

右击“入站规则”-“新规则”,打开“新建入站规则向导”,选中“端口”,下一步。

Windows server 2008基准系统配置_第1张图片

选中“TCP”,端口指定为8173,下一步

Windows server 2008基准系统配置_第2张图片

选中“允许连接”,下一步

Windows server 2008基准系统配置_第3张图片

根据需要可以选择域、专用或公用网络,局域网和internet的话就选择公用网络,下一步。

Windows server 2008基准系统配置_第4张图片

输入规则名称,描述可不输入,点击“完成”。

Windows server 2008基准系统配置_第5张图片

在入站规则里面就可以看到我们添加的这条规则了。

双击这条规则,继续配置,点击“用作域”

Windows server 2008基准系统配置_第6张图片

输入允许访问的本机IP地址和远程IP地址,点击“确定”。

Windows server 2008基准系统配置_第7张图片

七、网络安全配置

  Ø  设置网络连接,在属性里只保留TCP/IP协议,禁用TCP/IP上的NetBios。

Windows server 2008基准系统配置_第8张图片

Ø  修改注册表,禁止建立远程空连接。

运行 regedit ,找到如下主键 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA] RestrictAnonymous DWORD )的键值改为 :00000001

Windows server 2008基准系统配置_第9张图片

Ø  隐藏重要文件/目录

进入HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Fol der\Hidden\SHOWALL,将CheckedValue值由1改为0

Ø  可以安装第三方网络防火墙。

Ø  启用TCP/IP筛选,仅开放必须的TCP端口,禁用所有UDP端口。

Ø  实现简单抵御DDOS***。

下面是一个脚本,将其保存为 *.reg 文件,运行后会自动修改注册表相应的选项,以防止 DDOS ***。

   
   
   
   
  1. Windows Registry Editor Version 5.00 
  2.   
  3. [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer] 
  4. "NoRecentDocsMenu"=hex:01,00,00,00 
  5. "NoRecentDocsHistory"=hex:01,00,00,00 
  6.   
  7. [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon] 
  8. "DontDisplayLastUserName"="1" 
  9.   
  10. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa] 
  11. "restrictanonymous"=dword:00000001 
  12.   
  13. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\Parameters] 
  14. "AutoShareServer"=dword:00000000 
  15. "AutoShareWks"=dword:00000000 
  16.   
  17. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] 
  18. "EnableICMPRedirect"=dword:00000000 
  19. "KeepAliveTime"=dword:000927c0 
  20. "SynAttackProtect"=dword:00000002 
  21. "TcpMaxHalfOpen"=dword:000001f4 
  22. "TcpMaxHalfOpenRetried"=dword:00000190 
  23. "TcpMaxConnectResponseRetransmissions"=dword:00000001 
  24. "TcpMaxDataRetransmissions"=dword:00000003 
  25. "TCPMaxPortsExhausted"=dword:00000005 
  26. "DisableIPSourceRouting"=dword:00000002 
  27. "TcpTimedWaitDelay"=dword:0000001e 
  28. "TcpNumConnections"=dword:00004e20 
  29. "EnablePMTUDiscovery"=dword:00000000 
  30. "NoNameReleaseOnDemand"=dword:00000001 
  31. "EnableDeadGWDetect"=dword:00000000 
  32. "PerformRouterDiscovery"=dword:00000000 
  33. "EnableICMPRedirects"=dword:00000000 
  34.   
  35. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters] 
  36. "BacklogIncrement"=dword:00000005 
  37. "MaxConnBackLog"=dword:000007d0 
  38.   
  39. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AFD\Parameters] 
  40. "EnableDynamicBacklog"=dword:00000001 
  41. "MinimumDynamicBacklog"=dword:00000014 
  42. "MaximumDynamicBacklog"=dword:00007530 
  43. "DynamicBacklogGrowthDelta"=dword:0000000a 

八、IIS安全配置(以ASP为例)

1. 停止默认站点,删除默认站点的虚拟目录c:\inetpub,并将虚拟目录更改到其他盘。

2. 配置所有站点的公共设置,设置好相关的连接数限制,带宽设置以及性能设置等其他设置。启用ASP应用程序扩展。

3. 创建虚拟站点。虚拟站点的HTML文件夹只授权administrators ,system完全控制,为此虚拟站点设置IIS匿名用户读取运行、列出目录。

4. 修改站点的日志存放目录,更改为非C盘下。

5. 修改403错误页面,将其转向到其他页,可防止一些扫描器的探测。

6. 防范asp***

开始-运行,输入CMD,执行以下脚本,卸载最不安全组件。

__________________________________________________

ren c:\WINDOWS\system32\wshom.ocx wshom.ocx.save

ren C:\windows\system32\shell32.dll shell32.dll.save

regsvr32 /u C:\WINDOWS\System32\wshom.ocx

regsvr32 /u C:\WINDOWS\system32\shell32.dll

__________________________________________

即可将WScript.Shell, Shell.application, WScript.Network组件卸载,可有效防止asp***通过wscriptshell.application执行命令以及使用***查看一些系统敏感信息。另法:可取消以上文件的users用户的权限,重新启动IIS即可生效。但不推荐该方法。

九、SQL server安全配置

1SystemAdministrators 角色最好不要超过两个

2、如果是在本机最好将身份验证配置为Win登陆

3 、为sa帐户配置一个超级复杂的密码,数据库连接不使用sa帐户,单数据库单独设使用帐户,只给publicdb_owner权限。

十、修改远程终端服务和SQLserver默认端口

1. 修改远程终端的默认端口(3389):

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\PortNumber=”设定值 ” 。

2. 隐藏 SQL Server、更改默认的1433端口

开始-所有程序-microsoft SQL server 2008-配置工具-SQL server配置管理器-SQL server网络配置-MSSQLSERVER的协议,双击右边窗口的“TCP/IP”,打开TCP/IP属性窗口,点击“IP地址”,找到IPALL这项,修改TCP端口即可。

Windows server 2008基准系统配置_第10张图片

在防火墙的规则里添加远程终端服务端口和SQL server端口(千万别忘记了),并设置可访问此端口的IP地址。以后如需要用到什么端口,只需在防火墙规则中添加即可。