企业根CA如何发放客户机证书-L2TP证书问题的补充说明
         ISA系列第二十一篇的博文中,我们介绍了如何在***服务器中使用L2TP协议。L2TP可以使用证书或预共享密钥,很多朋友反映在做这个实验时出了问题,关键是申请不到客户机证书。因此今天特意花点时间,为大家介绍一下如何解决证书问题。
         由于我在博文中使用的是一个独立根CA,而不少博友在实验时使用的是企业根CA,因此环境上的差异造成了实验的困扰。独立根CA发放客户机证书是非常容易的,但企业根CA就需要进行一番设置。当然,独立根CA和企业根CA本质上是一样的,只是在一些配置方法上存在一些差异,看了本文之后,相信大家就不会有这种困扰了。本文的实验拓扑如下图所示,我们使用了域控制器充当域控制器和企业根CA,还有一个成员服务器配合申请证书。
 
 
         首先我们要知道,企业根CA的证书模板中默认并没有客户机证书。我们在域控制器的管理工具中打开证书颁发机构,如下图所示,我们可以在证书模板中看到并没有看客户机证书。因此,如果不对证书模板进行调整,我们肯定无法申请到客户机证书。
 
我们准备在CA服务器的证书模板中增加一个客户机证书的模板,如下图所示,我们在企业根CA中新建“要颁发的证书模板”。
 
如下图所示,工作站身份验证就是我们要的客户机证书,我们把它添加到客户机模板中。
 
好,现在我们有了需要的证书模板,那是否可以申请客户机证书呢?在成员服务器上我们用MMC控制台定制出一个证书管理单元,管理的是本地计算机的证书,注意,是在成员服务器上做这个操作!如下图所示,我们在个人文件夹中选择“申请新证书”。
 
如下图所示,我们可以申请“工作站身份验证”的证书,其实这就是客户端证书。能做到这一步,证明我们添加的证书模板已经起作用了,这个申请到的证书完全可以用于L2TP实验。至此,至少我们已经有了一种基本的解决方案。
 
接下来我们在成员服务器上尝试用浏览器申请客户机证书,如下图所示,我们很遗憾地发现,我们无法申请到客户机证书。因为工作站证书的模板中默认从Active Directory中提取证书申请者的数据,并不依赖用户输入。因此我们只能从成员服务器上或客户机上用MMC控制台申请,不能从域控制器上申请,也不能用浏览器申请。那能否想想办法,用浏览器也能申请到这个客户机证书呢?呵呵,办法总是有的….
 
如下图所示,我们在域控制器的证书颁发机构中选择管理证书模板。
 
如下图所示,我们在管理的证书模板中选择复制“工作站身份验证”的证书。
 
我们为新复制生成的证书命名为“客户机证书”。
 
我们在新复制的工作站证书模板的属性中切换到“使用者名称”标签,选择“在请求中提供”,这是关键的一个步骤!这意味着我们申请客户机证书可以通过浏览器提交证书参数,而不是默认的从Active Directory中提取了。
 
接下来我们在证书模板的属性中切换到“安全”标签,确保“Authenticated Users”组具有注册证书的权限。
 
配置完客户机证书后,接下来我们在证书颁发机构中把新复制的客户机证书模板添加进来。如下图所示,我们看到企业CA的证书模板中已经有客户机证书模板了。
 
重启证书服务或重启证书服务器,然后我们在成员服务器上用浏览器申请证书,如下图所示,我们发现已经可以用浏览器申请到客户机证书了。OK,问题解决,希望大家可以顺利地进行L2TP实验。