概述
本章提供有助于在您的环境中强化运行 Microsoft® Windows Server™ 2003 SP1 和 Microsoft 证书服务的服务器的指导。尽管本章包括保护这些类型的服务器所需的所有信息,但是它不提供有关如何在您的环境中创建安全的证书服务基础结构或如何部署证书颁发机构 (CA) 的任何详细信息。Windows Server 2003 产品文档中详细讨论了这些主题。Windows Server 2003 Resource Kit 和 Microsoft 网站上提供的白皮书中也对它们进行了讨论。有关其他信息,请参阅附加指南:使用证书服务确保无线 LAN 安全,网址为 http://go.microsoft.com/fwlink/?LinkId=14843。
本章中的设置是通过组策略配置和应用的。可以将补充成员服务器基准策略 (MSBP) 的组策略对象 (GPO) 链接到包含 CA 服务器的适当组织单位 (OU) 来为此服务器角色提供所需的安全设置更改。本章只讨论不同于 MSBP 的那些策略设置。
这些设置被尽可能地收集在将对 CA 服务器 OU 应用的增量组策略模板中。本章中的某些设置无法通过组策略应用。提供了有关如何手动配置这些设置的详细信息。
EC 环境的 CA 服务器安全模板的名称是 EC-CA Server.inf。这是增量 CA 服务器模板,该模板用于创建链接到合适环境中 CA 服务器 OU 的新 GPO。第 2 章“Windows Server 2003 强化机制”提供了分步骤说明,帮助您创建 OU 和组策略,然后将合适的安全模板导入到每个 GPO。
有关 MSBP 中的设置的信息,请参阅第 4 章“成员服务器基准策略”。有关所有默认设置的信息,请参阅附加指南威胁和对策:Windows Server 2003 和 Windows XP 的安全设置,网址为 http://www.microsoft.com/china/technet/security/guidance/secmod48.mspx。
注意:证书服务服务器角色的策略设置建议只在企业客户端环境下进行了测试。因此,本章不包含为本指南中的其他大多数服务器角色指定的拒绝服务 (DoS) 信息。
您可以在您的环境中的一些证书服务服务器上安装 Microsoft Internet 信息服务 (IIS),以便这些服务器可以分发 CA 证书和证书吊销列表 (CRL)。IIS 还用于宿主证书服务服务器 Web 注册页面,这允许非 Microsoft Windows® 客户端注册证书。在按照本章中的信息进行操作之前,请确保了解如何安全地安装 IIS,本指南第 9 章“Web 服务器角色”对其进行了描述。如果在您的 CA 上安装 IIS,则必须先对证书服务服务器应用为第 9 章开发的安全配置模板,然后再配置本章描述的规定设置。
注意:在简化的环境中,颁发 CA 服务器可用于宿主 Web 服务器、CA 证书和 CRL 下载点。但是,应该考虑在您自己的环境中使用单独的 Web 服务器来提高 CA 的安全性。
IIS 用于宿主证书服务器的注册页面,以及为非 Windows 客户端分发 CA 证书和 CRL 下载点。Microsoft 建议您不要在根 CA 服务器上安装 IIS。如有可能,不要在环境中的颁发 CA 和任何中间 CA 上运行 IIS。在其他服务器上为 CA 证书和 CRL 宿主 Web 下载点比在 CA 服务器上宿主下载点要安全得多。必要时,应禁止许多需要检索 CRL 或 CA 链信息的证书用户(内部和外部)访问 CA。但是,如果您在 CA 上宿主下载点,则无法使用户与 CA 隔离。
审核策略设置
在企业客户端环境指南中,证书服务服务器的审核策略设置是通过 MSBP 配置的。有关 MSBP 的详细信息,请参阅第 4 章“成员服务器基准策略”。MSBP 设置确保了在全部证书服务服务器上记录所有相关的安全审核信息。
用户权限分配
在企业客户端环境中,证书服务服务器的用户权限分配设置也是通过 MSBP 配置的。有关 MSBP 的详细信息,请参阅第 4 章“成员服务器基准策略”。MSBP 设置确保在整个企业内统一配置对证书服务服务器的正确访问权限。
安全选项
可使用组策略的“安全选项”部分启用或禁用计算机的安全设置,如数据的数字签名、Administrator 和 Guest 帐户名、软盘驱动器和 CD-ROM 驱动器访问、驱动程序安装行为和登录提示。
在 Windows Server 2003 中,您可以在组策略对象编辑器的以下位置配置安全选项设置:
计算机配置\Windows 设置\安全设置\本地策略\
安全选项
下表包括企业客户端环境中的证书服务服务器角色的建议安全选项设置。表后面的文本提供了有关设置的详细信息。
表 11.1 推荐的安全选项设置
| 设置 | 企业客户端 |
|
系统加密:使用 FIPS 兼容的算法来加密、哈希和签名 |
已启用 |
系统加密:使用 FIPS 兼容的算法来加密、哈希和签名
此策略设置确定传输层安全性/安全套接字层 (TLS/SSL) 安全提供程序是否仅支持 TLS_RSA_WITH_3DES_EDE_CBC_SHA 密码套件。事实上,支持此加密套件意味着该提供程序只支持将 TLS 协议作为客户端和服务器(如果适用)。
TLS/SSL 安全提供程序使用以下算法:
| • |
用于 TLS 传输加密的三重数据加密标准 (3DES) 加密算法。 |
| • |
用于 TLS 密钥交换和身份验证的 Rivest、Shamir 和 Adelman (RSA) 公钥算法。(RSA 是 RSA Data Security, Inc 开发的公钥加密技术。) |
| • |
符合 TLS 哈希要求的 SHA-1 哈希算法。 |
对加密文件系统服务 (EFS) 来说,TLS/SSL 安全提供程序仅支持使用三重 DES 加密算法来加密 Windows NTFS 文件系统中存储的文件数据。默认情况下,EFS 使用 DESX 算法加密文件数据。
如果启用此策略设置,您的环境中属于此服务器角色的计算机将使用为数字加密、哈希和签名提供的最强大的算法。因为这些算法限制未经授权的用户破坏数字加密或签名的数据的能力,所以使用它们可将风险降至最低。
因此,对于企业客户端环境,“系统加密:使用 FIPS 兼容的算法来加密、哈希和签名”设置被配置为“已禁用”。
注意:启用了此策略设置的客户端计算机无法通过数字加密或签名的协议与不支持这些算法的服务器通信。不支持这些算法的网络客户端计算机将无法使用需要网络通信算法的服务器。例如,许多基于 Apache 的 Web 服务器未配置为支持 TLS。
如果启用此设置,还将需要将 Internet Explorer 配置为使用 TLS。为此,请从 Internet Explorer 的“工具”菜单打开“Internet 选项”对话框,单击“Internet 选项”对话框上的“高级”选项卡,向前滚动到“设置”列表的底部,然后单击“使用 TLS 1.0”复选框。也可以通过组策略或使用 Internet Explorer 管理员工具包来配置此功能。
事件日志设置
在企业客户端环境中,证书服务服务器的事件日志设置是通过 MSBP 进行配置的。有关 MSBP 的详细信息,请参阅第 4 章“成员服务器基准策略”。
其他注册表项
为 EC-CA Server.inf 模板文件创建了其他注册表项。在本指南中定义的企业客户端环境的管理模板 (.adm) 文件中,未定义这些注册表项。.adm 文件为 Windows Server 2003 SP1 的桌面、外壳和安全设置定义了系统策略和限制。
在安全模板内配置了其他注册表项来使它们的实施自动化。如果删除了此环境的增量证书服务组策略,将不会自动删除其设置,且必须使用注册表编辑工具(如 Regedt 32 .exe)手动更改它们。
在 Windows Server 2003 中,可以在组策略对象编辑器的以下位置配置注册表项:
MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration
其他安全设置
下列 ACL 是建议的并且可以通过组策略分配。但是,因为数据库和日志的路径将因服务器不同而各异,所以本指南提供的安全模板中未包括这些 ACL。例如,您的证书服务服务器可能有 C:\、D:\ 及 E:\ 驱动器。下一节中提供了有关如何手动实施这些策略设置的详细信息。
文件系统 ACL
如果文件不是由访问控制列表 (ACL) 所保护的,则能够在本地或通过网络访问这些文件的未经授权用户就能很容易地对其查看、更改或删除。虽然 ACL 可以帮助保护文件,但是对于那些只需要由单个用户访问的文件来说,加密为其提供了更多的保护,并且是一个切实可行的选择。
下表包含企业客户端环境中基于 WindowsServer2003 的证书服务服务器的文件系统 ACL。在此环境中,证书服务服务器使用 D:\CertSrv 作为证书数据库目录,且数据库日志存储在默认文件夹 %SystemRoot%\system32\CertLog 中。还可能将日志从系统驱动器移到物理上分开的镜像驱动器,如 E:\CertLog。安全性考虑不需要将数据库和日志单独放在不同的物理磁盘驱动器上,但是为了更好地预防磁盘故障并提高性能,建议采用此配置。默认情况下,证书服务默认安装文件夹 %SystemRoot%\system32\CertLog 和 %SystemRoot%\system32\CertSrv 拥有正确的 ACL,如下表所示。
表 11.2 文件系统 ACL
| UI 中的 ACL 路径 | 企业客户端 |
|
%SystemRoot%\system32\CertLog(传播到所有子文件夹) |
Administrators(完全控制) SYSTEM(完全控制) |
|
%SystemRoot%\system32\CertSrv (传播到所有子文件夹) |
Administrators(完全控制) SYSTEM(完全控制) 用户(读取和执行、列出文件夹内容以及读取) |
|
D:\CertLog |
Administrators(完全控制) SYSTEM(完全控制) |
|
D:\CertSrv |
Administrators(完全控制) SYSTEM(完全控制) 用户(读取和执行、列出文件夹内容以及读取) |
因为 CA 具有安全敏感的特性,所以在上表所列的证书服务文件夹上启用了文件审核。审核项的配置如下表所示:
表 11.3 证书服务文件和注册表审核配置
| 文件路径或注册表路径 | 审核类型 | 审核设置 |
|
%SystemRoot%\system32\CertLog |
失败 |
Everyone(完全控制) |
|
%SystemRoot%\system32\CertSrv |
成功 |
Everyone(修改) |
|
D:\CertSrv |
成功 |
Everyone(修改) |
|
D:\CertLog |
成功 |
Everyone(修改) |
这些策略设置将审核来自任何用户的任何类型的失败访问(读取或修改),还将审核任何用户进行的成功修改。
保护众所周知的帐户
Windows Server 2003 SP1 具有大量不能删除但可重命名的内置用户帐户。Windows Server 2003 中的两个最为人熟知的内置帐户为 Guest 和 Administrator。
默认情况下,Guest 帐户在成员服务器和域控制器上被禁用。此配置不可更改。许多恶意代码的变种在初次尝试破坏服务器时使用内置 Administrator 帐户。因此,应重命名内置 Administrator 帐户和更改其描述,以帮助防止尝试使用此知名帐户的攻击者对远程服务器进行破坏。
近几年来,进行上述重命名配置的意义已经大大降低了,因为出现了很多新的攻击工具,这些工具通过指定内置 Administrator 帐户的安全标识符 (SID) 来确定该帐户的真实姓名,从而侵入服务器。SID 是用来唯一标识网络上的每个用户、用户组、计算机帐户和登录会话的值。此内置帐户的 SID 是不可能更改的。不过,如果您使用独特的名称来重命名 Administrator 帐户,您的操作组就可以轻松监视针对该 Administrator 帐户所进行的攻击尝试。
保护 CA 服务器上众所周知的帐户
| • |
在每个域和服务器上,重命名 Administrator 和 Guest 帐户,然后将其密码更改为长而复杂的值。 |
| • |
在每个服务器上使用不同的名称和密码。如果所有域和服务器使用同一个帐户名和密码,则取得其中一台成员服务器访问权的攻击者将取得其他成员服务器的访问权。 |
| • |
将帐户描述更改为不同于默认描述的内容,从而避免使用简单的帐户标识。 |
| • |
将这些更改记录到一个安全的位置。 注意:可通过组策略重命名内置的 Administrator 帐户。未在本指南附带的任何安全模板中实施此策略设置,因为每个组织都应为此帐户选择一个独特的名称。但是在 EC 环境中,您可以配置“帐户:重命名管理员帐户”设置来重命名 Administrator 帐户。此策略设置是 GPO 的“安全选项”设置的一部分。 |
保护服务帐户
除非不可避免,否则不要将服务配置为在域帐户的安全上下文下运行。如果服务器受到物理破坏,可以通过转储 LSA 机密轻松获取域帐户密码。有关如何保护服务帐户的详细信息,请参阅服务和服务帐户安全规划指南,网址为 www.microsoft.com/technet/security/topics/serversecurity/serviceaccount/default.mspx。
使用 SCW 创建策略
要部署必要的安全设置,您必须使用安全配置向导 (SCW) 和本指南的可下载版本附带的安全模板创建服务器策略。
创建您自己的策略时,确保跳过“注册表设置”和“审核策略”部分。这些设置是安全模板针对所选环境提供的。此方法是确保模板提供的策略元素优先于 SCW 配置的元素所必需的。
您应该使用新的操作系统安装开始您的配置工作,这将有助于确保没有来自以前配置的旧设置或软件。如有可能,您使用的硬件应该类似于您在部署中所使用的硬件,以帮助确保尽可能高的兼容性。新安装称为引用计算机。
在执行服务器策略创建步骤期间,您可能将文件服务器角色从检测到的角色列表中删除。通常,有些服务器不需要该角色,如果在这些服务器上配置该角色,就会带来风险。若服务器需要部署文件服务器角色,则可以在此过程的后面应用另一个策略。
创建证书服务服务器策略
|
1. |
在新引用计算机上创建 Windows Server 2003 SP1 的新安装。 |
|
2. |
通过“控制面板”、“添加或删除程序”、“添加/删除 Windows 组件”来安装安全配置向导组件。 |
|
3. |
将计算机加入到域,这将应用来自父 OU 的所有安全设置。 |
|
4. |
仅安装和配置共享此角色的每个服务器所必需的应用程序。例如,特定于角色的服务、软件和管理代理、磁带备份代理以及防病毒或反间谍软件实用程序。 |
|
5. |
启动 SCW GUI,选择“创建新的策略”,然后将其指向引用计算机。 |
|
6. |
确保检测到的服务器角色(例如证书角色)适合于您的环境。 |
|
7. |
确保检测到的客户端功能适合于您的环境。 |
|
8. |
确保检测到的管理选项适合于您的环境。 |
|
9. |
确保您的基准所需要的任何附加服务(例如备份代理或防病毒软件)已被检测到。 |
|
10. |
确定如何处理您的环境中的未指定服务。为了获得附加的安全,您可能需要将此策略设置配置为“禁用”。应该对此配置进行测试,然后再将其部署到生产网络中,因为若生产服务器所运行的附加服务未复制到引用服务器上,部署此配置就会造成问题。 |
|
11. |
确保在“网络安全”部分中取消选中“跳过这一部分”,然后单击“下一步”。前面标识的相应端口和应用程序被配置为 Windows 防火墙的例外。 |
|
12. |
在“注册表设置”部分中,单击“跳过这一部分”复选框,然后单击“下一步”。这些策略设置从提供的 INF 文件中导入。 |
|
13. |
在“审核策略”部分中,单击“跳过这一部分”复选框,然后单击“下一步”。这些策略设置从提供的 INF 文件中导入。 |
|
14. |
包括相应的安全模板(例如 EC-CA Server.inf)。 |
|
15. |
以适当的名称保存策略(例如 Certificate Services.xml)。 |
使用 SCW 测试策略
在您创建和保存策略后,Microsoft 强烈建议您将其部署到测试环境中。理想情况下,测试服务器和生产服务器应具有相同的硬件和软件配置。此方法将允许您找到和修复潜在的问题,例如特定硬件设备需要意料之外的服务。
两个选项都可用于测试该策略。您可以使用本机 SCW 部署工具,或通过 GPO 来部署策略。
开始创作您的策略时,您应当考虑使用本机 SCW 部署工具。使用 SCW 可一次将策略强制到一个服务器,也可以使用 Scwcmd 将策略强制到一组服务器。本机部署方法允许在 SCW 中轻松回滚部署的策略。在进行测试的过程中对策略做出多次更改时,此功能就非常有用。
测试该策略的目的是确保在将此策略应用到目标服务器时不会对其重要的功能造成负面影响。应用配置更改之后,应开始验证计算机的核心功能。例如,如果将服务器配置为证书颁发机构 (CA),请确保客户端可以请求和获取证书、下载证书吊销列表等。
如果对您的策略配置非常有信心,就可以使用以下过程中显示的 Scwcmd 将策略转换为 GPO。
有关如何测试 SCW 策略的详细信息,请参阅 Deployment Guide for the Security Configuration Wizard(网址为 www.microsoft.com/technet/prodtechnol/windowsserver2003/
library/SCWDeploying/5254f8cd-143e-4559-a299-9c723b366946.mspx )和 Security Configuration Wizard Documentation(网址为 http://go.microsoft.com/fwlink/?linkid=43450)。
转换和部署策略
在彻底测试策略之后,请完成以下步骤以便将策略转换为 GPO 并进行部署:
|
1. |
在命令提示符处,键入以下命令: scwcmd transform /p:<PathToPolicy.xml> /g:<GPODisplayName> 然后按 Enter。例如: scwcmd transform /p:"C:\Windows\Security\msscw\Policies\ Certificate Services.xml" /g:"Certificate Services Policy" 注意:因为显示限制,此处在命令提示符处输入的信息将显示为多行。应该在一行中输入全部信息。 |
|
2. |
使用组策略管理控制台将新建的 GPO 链接到适当的 OU。 |
注意,如果 SCW 安全策略文件包含 Windows 防火墙设置,那么为使该过程成功完成,就必须在本地计算机上激活 Windows 防火墙。要验证 Windows 防火墙是否已激活,请打开“控制面板”,然后双击“Windows 防火墙”。
应该立即执行最终的测试以确保 GPO 应用了期望的设置。要完成此过程,请确认是否进行了适当的设置,而且功能未受影响。
本章解释了可用于在本指南定义的企业客户端环境中强化运行 Windows Server 2003 SP1 的证书服务服务器的策略设置。这些设置是通过补充 MSBP 的组策略对象 (GPO) 配置和应用的。GPO 可链接到包含证书服务服务器的适当组织单位 (OU) 来提供附加的安全。
更多信息
下列链接提供了与强化运行 Windows Server 2003 SP1 的服务器和证书服务相关联的主题的附加信息。
| • |
有关公钥基础结构 (PKI) 概念和 Windows 2000 证书服务功能的详细介绍,请参阅“An Introduction to the Windows 2000 Public Key Infrastructure”,网址为 www.microsoft.com/technet/archive/windows2000serv/evaluate/featfunc/pkiintro.mspx。 |
| • |
有关 Windows Server 2003 和 Windows XP 中的 PKI 功能的详细信息,请参阅“Windows XP Professional 和 Windows Server 2003 中的 PKI 增强功能”,网址为 www.microsoft.com/technet/prodtechnol/winxppro/plan/pkienh.mspx。 |
| • |
有关关键 PKI 概念的更多背景信息,请参阅公钥基础结构页面,网址为 www.microsoft.com/technet/prodtechnol/windowsserver2003/library/ |

