zoukankan      html  css  js  c++  java
  • 用组策略实现用户证书的自动注册申请:ISA2006系列之二十八

    用组策略实现用户证书的自动注册申请
    在前面的博文中,我们已经在邮件加密,安全 Web 站点, TLS 通讯,智能卡等诸多的应用领域中接触到了证书,证书在安全领域的重要性已是不言而喻。如果我们在内网搭建了 CA 服务器,用户应该如何获取证书呢?用户申请证 书一般有两种方式,如下图所示,用户既可以通过 MMC 控制台也可以利用浏览器进行证书的注册申请。但这两种证书申请方式对普通用户来说都有一定的技术难度,如果管理员代为用户申请证书,在 用户众多的环境下又不太现实。那我们在大型企业中应该如何处理用户证书的注册申请呢?
     


    我们可以通过组策略结合
    CA 服务器来完成证书的自动注册申请,利用这种方式,我们可以对整个域的用户或某个组织的用户,只要用户在开机后以域用户身份登录,就可以 自动完成证书的注册申请。怎么样,听起来是否很不错?下面我们通过一个实验来说明如何实现这个构想,拓扑如下图所示, Florence 是域控制器和 CA 服务器, Perth Istanbul 是用户 User1 User2 使用的工作站。
     
    创建企业根 CA
    要实现用户证书的自动注册,需要有企业级 CA 的支持,因为只有这种类型的 CA 服务器才能和组策略结合使用。由于我们创建的 CA 服务器是域中的第一个证书服务器,因此服务器类型应该选择企业根。
    在域控制器 Florence 上打开控制面板-添加或删除程序-添加 / 或删除 Windows 组件,如下图所示,勾选“证书服务”。
     
    证书服务器的类型应该选择“企业根 CA ”。
     
    CA 命名为 ITETCA ,有效期限 5 年。
     
    证书数据库的存储路径取默认值即可。
     
    如下图所示,我们成功地完成了企业根 CA 的安装,结束了实验的第一步。
     
    创建证书模板
    有了 CA 服务器,我们接下来要创 建一个支持用户自动注册的证书模板。具体步骤如下,我们在 Florence 上运行 MMC ,添加“证书模板”管理单元。如下图所示,右键点击“用户”模板,选择“复制模板”。 之所以选择复制出一个新模板,而不是直接在用 户模板上进行操作,是因为不希望影响其他应用程序对用户模板的使用。
     
    如下图所示,在复制出的新模板的常规标签处,我们为此模板命名为“用户自动注册模板”,注意,模板名称一旦确定就无法更改。同时确保勾 选“在 Active Directory 中颁发证书”。
     
    切换到证书模板的“处理请求”标签,如下图所示,确保选择“注册证书使用者时无需用户输入”。
     
    切换到证书模板的“安全”标签,我们在此可以分配证书模板的权限,如果我们希望哪些用户可以利用这个证书模板进行证书的自动注册,一定 要为这些用户赋予“读取”,“注册”和“自动注册”的权限。在本次实验中,我们希望域内所有的用户都可以实现证书的自动注册,因此如下图所示,我们为 Domain Users 组的成员赋予了上述三项权限。
     
    使用自动注册的证书模板
    创建了支持自动注册的证书模板,我们就要在证书服务器中使用这种证书模板。在 Florence 的管理工具中打开“证书颁发机构”,如下图所示,右键点击证书模板,选择新建“要颁发的证书模板”。
     
    选择我们新创建的“用户自动注册模板”。
     
    如下图所示,现在证书服务器已经使用了支持用户自动注册的证书模板,证书服务器已经可以支持用户自动进行证书的注册申请了。
     
    配置组策略
    证书服务器已经可以支持用户证书的自动注册申请,接下来我们需要在组策略中进行配置,允许用户自动进行证书的注册申请。由于我们希望域 内所有用户都能实现证书的自动注册,因此我们需要在域级别进行组策略设置。在 Florence 上打开 Active Directory 用户和计算机,如下图所示,在 CATEST.COM 域的属性中切换到“组策略”标签,由于我们只是进行实验,因此选择编辑默认的域用户策略即可。
     
    如下图所示,在组策略编辑器中定位到 用户配置- Windows 设置-安全设置-公钥策略,编辑右侧面板中的 “自动注册设置”。确保选择“自动注册证书”,如有必要,也可选择“续订过期证书,更新未决证书并删除吊销的证书”和“更新使用证书模板的证书”。这样一 来,用户不但可以完成证书的自动注册申请,还可以完成证书的自动更新,续订以及吊销。
     
    组策略设置完毕后,我们可以在工作站上使用 Gpupdate / Force 来加速组策略的生效。
     
    用户测试
    万事俱备,只欠东风,下面我们就在 Perth 上进行证书的自动注册测试,如下图所示,域用户 User1 在工作站 Perth 上登录。
     
    User1 登录后我满怀信心地用 MMC 打开用户证书的管理单元查看成果,咦,怎么回事?如下图所示, User1 没有申请到证书!重新启动 Perth ,让 User1 重新登录也无济于事。利用别的用户申请也是无功而返,问题出在哪里呢?
     
    打开 Florence 上的证书颁发机构,如下图所示,在失败的申请中我们发现了问题所在,证书模板要求用户属性中提供电子邮件地址,但我们没有为用户填写电 子邮件地址,域内也没有部署 Exchange 服务器,因此用户提供的属性不能满足证书模板的注册需求,这才导致申请被拒绝。
     
    打开用户自动注册证书模板查看,如下图所示,果然证书模板要求用户注册证书时提供电子邮件地址。
     
    找到了问题的原因,接下来就容易处理了,我们既可以取消证书模板对邮件地址的要求,也可以如下图所示,在 User1 的属性中填写电子邮件地址。
     

    我们填写了 User1 的邮件地址后,让 User1 再次在 Perth 上注销登录,哈哈,如下图所示,这次终于成功了, User1 完成了用户证书的自动注册申请。

    作者:Angelo Lee
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
  • 相关阅读:
    Visual Studio自带的的Developer Command Prompt对话框
    利用VS(Visual Studio)自带的工具查看DLL文件的信息
    谷歌面试官反馈级别
    Inno Setup中多语言时,使用占位符填充
    SQL*Plus命令
    Oracle 所有字典
    彻底完全卸载 SQL Server 2005 的图文教程
    win7(windows 7)系统下安装SQL2005(SQL Server 2005)图文教程
    创建表空间、新增用户、给用户赋予DBA权限 、删除用户下的上有数据表
    ORA-01012: not logged on
  • 原文地址:https://www.cnblogs.com/yefengmeander/p/2887824.html
Copyright © 2011-2022 走看看