Windows 2012的AD CS服务器角色概述

所有与PKI相关的组件都是以AD CS服务器角色中的角色服务形式部署的,AD CS服务器角色包含了多个组件,这些组件被称为角色服务,每个角色服务承担了证书基础架构的一个特定部分,所有的角色服务结合起来就构成了一个完整的PKI解决方案。

AD CS的角色服务如下:

  1. CA。这个组件将证书颁发给用户、计算机、服务,它还可以用来管理证书的有效性。多个CA能够通过链接构成一个分层的PKI结构。

  2. CA Web注册。这个组件为用户、计算机、设备颁发和续签证书,设备可以是未加域的,也可以是没有直接连接到内部网络的,或者非windows操作系统的。

  3. 在线应答器。你可以使用这个组件来配置和管理OCSP校验和吊销检查。在线应答器将特定证书的吊销状态请求进行解码,然后评估这些证书的状态,并将请求的证书的状态信息签名后返回给请求方,在线应答器可以在Windows2012的任何版本中使用,使用在线应答器时,证书的吊销数据可以从一台CA服务器上获取,CA服务器的系统可以是Win2003,Win2008,甚至可以是一个非微软的CA服务器。

  4. 网络设备注册服务(NDES Network Device Enrollment Service).通过这个组件,路由器、交换机以及其他的网络设备都可以从AD CS中获取证书,如果操作系统使用的是Windows2008R2,那么这个角色只能在企业版和数据中心版上使用,但是Windows2012的所有版本都可以使用这个角色。

  5. 证书注册Web服务(CES Certificate Enrollment Web Service)。这个组件作为Win7和Win8客户端与CA服务器之间的一个代理,它最初出现在Windows2008R2版本中,要使用此功能AD林的功能级别必须是Window2008R2以上,它能够让用户通过浏览器连接到CA执行以下操作:

    a.申请、续签、安装颁发的证书

    b.获取CRL

    c.下载根证书

    d.通过internet注册证书,或跨林注册证书

  6. 证书注册策略Web服务(CEP Certificate Enrollment Policy Web Service).这个组件也是从Windows2008R2时候出现的,它允许用户获得证书注册策略的信息。它和CES结合在一起使非域或未连接到域的客户端计算机进行基于策略的证书注册。


Windows 2012中AD CS的新功能

和其它的Windows服务器角色一样,AD CS在Windows2012中也有所改善和增强。在Windows2012中和Windows2008R2一样仍旧是6个角色服务,不过与之前的版本相比,Windows2012的AD CS提供了更多的新功能和新特性。

在Windows2008R2中,部分AD CS角色服务器要求特定的版本的服务器系统,比如NDES是无法在Windows2008标准版上运行的,它只能在Windows2008企业版中运行,但是在Windows2012中就不再有这种限制,所有的角色服务可以在任意的服务器系统版本中运行。

AD CS中所有的角色服务器可以运行在Full安装的Windows2012中,也可以运行在Minimal安装的Windows2012中,甚至运行在Server Core的Windows2012中。你可以使用Server Manager去部署AD CS服务器角色,也可以通过Powershell命令部署,你可以本地部署,也能够通过网络进行远程部署。

从管理的角度来看Windows2012的AD CS,它的事件记录器和最佳实践分析工具都集成在了Server Manager控制台中,你可以在Server Manager中就可以直接使用这些工具,当然AD CS也完全支持Powershell命令的管理。

Windows2012的AD CS引入了一个新版本的证书模板--V4,它也提供了一些新的功能,这个稍后会提到。Windows2012还对CES进行增强,该功能从Win7和Windows2008R2时开始被引入,它允许来自非信任域或未加域的设备在线申请证书,在Windows2012中,CES加入了为此类计算机自动续签证书的新功能。

从安全性的角度来看,Windows2012的AD CS要求续签证书的时候使用相同秘钥,Windows2012还支持生成受信任平台模块(TPM Trusted Platform Module),此功能使用基于TPM的秘钥存储提供器来保护秘钥。使用基于TPM秘钥存储提供器的好处是真正实现秘钥的不可导出性,所有的秘钥都是由TPM机制支持,这样能够有效的阻止那些多次使用错误PIN码访问的用户。如果想更进一步加强安全性,你可以对所有发给Windows2012 AD CS的证书请求强制加密。


虚拟智慧卡

智慧卡可以作为多因素验证的可选方法,它从Windows2000服务器操作系统开始被应用,智慧卡能够提供比密码更强的安全性,因为未授权的的用户很难获得和保持对系统的访问,此外想要访问被智慧卡保护的系统,要求用户拥有一个有效的卡并知道访问卡所需的PIN码。智慧卡默认只会有一个副本存在,所以在同一时间只能有一个用户能够使用登录凭证,因此如果用户的卡被盗了还是遗失了,他很快就会知道卡究竟是被盗了还是遗失了。相比于密码,智慧卡极大的降低了凭证被盗的风险。

但是在某些情况下,部署智慧卡基础架构的成本太过昂贵,因为你必须购买硬件,包括读卡器和智慧卡,这些花费都是你实施的时候需要考虑的地方。为了解决这个问题,Windows2012 AD CS引入了一个新技术,它能够提供智慧卡级别的安全性,但是却降低了材料和支持上的花费。这个技术就是虚拟智慧卡,虚拟智慧卡模拟了传统智慧卡的功能性,但是它不需要采购额外的硬件。

在Windows2012中,虚拟智慧卡利用的是计算机主板上TPM芯片的功能,这个芯片在近2年生产的主板中都已经集成了,所以它不需要你专门花钱去买智慧卡和读卡器,但是它与传统的智慧卡不同的是,传统智慧卡的用户必须物理的占用智慧卡,而虚拟智慧卡是由主板上的TPM芯片来充当智慧卡的角色,你同样可以达到双重因素验证的效果,它与物理智慧卡结合PIN码的效果是类似的。启用了虚拟智慧卡的用户,必须有一台计算机,并且要知道虚拟智慧卡的PIN码。

理解虚拟智慧卡如何保护私钥是很重要的,传统的智慧卡拥有自己的存储和加密机制来保护私钥,而虚拟智慧卡中,它不是使用独立的物理内存来保护私钥,而是使用TPM的加密功能,TPM会将保存在智慧卡中的所有敏感信息进行加密,然后以它的加密格式将信息保存在硬盘上,虽然私钥是以TPM的加密格式保存在硬盘上的,但是所有的加密操作都是在一个安全独立的TPM环境中发生的。私钥是不会未经过加密就离开这个环境的,万一计算机的硬盘被人破解了,私钥也是不可访问的,因为是TPM对私钥进行保护和加密。要部署虚拟智慧卡,你需要Windows2012的AD CS和Win8客户端,以及支持TPM芯片的计算机主板。


公共CA与私有CA的对比

当你计划在公司中部署PKI的时候,第一个需要做出决定的就是使用公共CA还是私有CA,这两种方法都可以帮你搭建PKI,如果选择私有CA,那么我们需要部署AD CS服务器角色,然后建立一个内部的PKI。如果你想使用一个外部的PKI,那么就不需要在内部部署任何服务。

这两种方法各有其优点和缺点,以下的表格列出了他们的各自的优缺点:

CA类型 优点

缺点

外部公共CA

a.被许多的外部客户端信任(网页浏览器和操作系统)

b.几乎不需要去管理

a.相比内部CA,花费会比较高

b.按照证书的数量进行收费

c.获取证书的时间较长

内部私有CA

a.对证书的管理更加可控

b.相对于公共CA,花费更加低

c.可以自定义证书模板

d.可以自动注册

a.外部客户端默认是不信任私有CA颁发的证书的

b.需要更多的管理操作

有些公司会使用混合CA来部署他们的PKI架构,他们将一个外部的公共CA作为他们的根CA,然后通过内部CA来发布证书,这使得他们内部颁发的证书能够拥有公共CA的优点,被外部的客户端所信任,同时还能够拥有私有CA的优点。这种方式唯一的缺点就是花费较大,因为公共CA颁发的公共证书价格是比较贵的。

或者你可以对内部使用私有CA,用于EFS,数字签名等等,然后对外部的一些应用使用公共CA,比如公司网站和邮件服务器等等。这个方法花费不是很大,而且这个方法是性价比最高的方法。

有些公司公司对安全性的要求比较高,他们可能会定义一个专用的受信任根CA列表,用于公司的内部和外部。


什么是Cross-certification层次?

根据这个名称我们可以猜想到,Cross-certification层次应该是在CA层次中的某台根CA将一个Cross-certification提交给另一个CA层次中的根CA,另一个层次中的根CA将收到的证书安装,经过这个步骤后,信任关系会从安装了证书的层级向下传递到所有的从属CA。

Cross-certification的优势:

  1. 在企业之间以及PKI产品之间提供了交互操作功能

  2. 将完全不同的PKI关联起来

  3. 为外部的CA层次构建完全的信任

企业通常部署Cross-certification在PKI层次上建立一个相互信任,以及部署某些依赖与PKI的应用程式,比如在企业之间建立SSL会话,或者用于交换数字签名文档的时候。