none
CA迁移问题 RRS feed

  • 问题

  • 环境:
    系统:WIN2008R2
    域功能:WIN2008R2
    林功能:WIN2008R2
     
    背景信息:
    CA和DC在同一台机器上,CA迁移走后DC不可能退出域也不可能离线。

    参照文档:
    http://technet.microsoft.com/zh-cn/library/ee126170(v=ws.10).aspx
    和文档有所不同的是本次迁移发生在2008R2之间
     
     
    迁移过程:整个迁移过程平滑流畅没有任何出错提示或报警
    在原CA上的操作:
    一、备份原CA上的:数据库和私钥、CA 注册表
    使用“证书颁发机构”管理单元备份 CA 数据库和私钥
     
    1.打开“证书颁发机构”管理单元。
    2.右键单击包含 CA 名称的节点,指向“所有任务”,然后单击“备份 CA”。
    3.在 CA 备份向导的“欢迎”页上,单击“下一步”。
    4.在“要备份的项目”页上,选中“私钥和 CA 证书”以及“证书数据库和证书数据库日志”复选框,指定备份位置,然后单击“下一步”。
    5.在“选择密码”页上,键入用于保护 CA 私钥的密码,并单击“下一步”。
     
    使用 Regedit.exe 备份 CA 注册表设置
    1.单击“开始”,指向“运行”,并键入 regedit 以打开注册表编辑器。
    2.在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CertSvc 中,右键单击“Configuration”,然后单击“导出”。
    3.指定位置和文件名,然后单击“保存”。
     
    二、从原服务器上删除CA角色服务,然后重启
     
    在新CA上的操作
    一、使用服务器管理器在新服务器上添加 CA 角色服务(新服务器已经加入到域中)
    1.在“指定安装类型”页上,指定“企业”CA;在“指定 CA 类型”页上,指定“根 CA”
    2.在“设置私钥”页上,选择“使用现有私钥”和“选择一个证书并使用其关联私钥”。
    3.在“证书”列表中,单击导入的 CA 证书,然后单击“下一步”。
     
    二、在新服务器上还原 CA 数据库和配置,将原服务器上备份的数据库、私钥、CA注册表复制过来
    1.双击备份的注册表文件导入注册表。
    2.在“证书颁发机构”右键单击包含 CA 名称的节点,指向“所有任务”,然后单击“还原 CA”。如果出现提示,请单击“确定”停止 CA 服务。 
    3.在“要还原的项目”页上,选择“证书数据库和证书数据库日志”,选择到复制过来的备份。然后重新启动 CA 服务。
     
     
     
    之后重启了原DC和新CA,进入测试阶段。做了三个测试:
    一.EFS加密证书
    域用户可以正常加密和解密,并在第一次加密时由CA自动颁发EFS加密证书

    二.在原CA上提交证书申请,迁移后在新CA上颁发并使用
    1.在原CA上关掉自动颁发
    2.在域中一台IIS上生成Base64编码的证书申请文件,并通过web页面提交申请
    3.迁移CA
    4.新CA上线后,从挂起的申请中颁发该证书,然后在提交申请的客户机上执行:certreq –retrieve -config "<目标服务器名称\CA 名称>" <请求 ID> 保存证书。
    测试结果是获取到证书,并在测试三中可以使用

    三.用CA迁移前加入域的客户端去访问由新CA颁发的证书的应用
    1.在IIS上用测试二中申请到的证书启用SSL
    2.客户端通过HTTPS访问该站点,看是否有证书警告弹出,解释结果:访问正常,客户端信任由新CA颁发的WEB证书


    疑问:
    1.这几个测试能不能证明这次CA的迁移是成功的?
    2.很多文档说CA的迁移需要新旧CA的主机名相同,并且需要从域中删除源CA服务器,如果主机名不同需要另外做操作(文档中有:http://technet.microsoft.com/zh-cn/library/9aa53be9-0497-49fa-9ff6-09b72cb69444(v=ws.10)#BKMK_RestoreCA),我们这里并没有做这些操作,会不会有什么影响?
    3.发布增量CRL,发现CRL不能立刻更新到,有没有方法可以立刻更新或者强制更新?
    4、主机名不同会不会影响CRL的发布?

    smallrascal

    2013年7月31日 13:58

全部回复

  • 你好,

    如果你没有从域中删除你的原CA,重命名新CA是不能成功的。从经过的测试看,这次的迁移是成功的,如果会出现问题的话,我们需要根据错误信息进行排错。我建议你还是根据文档的步骤一步一步来,因为毕竟是经过验证的。

    关于强制更新CRL,无法强制更新缓存的 CRL。 CRL 具有到期日期。 在 CR 后,续订 CRL。

    或者可以删除每个server 上的缓存,这样,CRLs就会重新被下载下来。

    certutil –setreg chain\ChainCacheResyncFiletime @now

    Regards,

    Yan Li


    Cataleya Li
    TechNet Community Support

    2013年8月2日 2:54
    版主
  • 说到强制更新,我也想请教2个问题:

    1.我在企业CA上发布了CRL,但是我发现域中的客户端并没有自动拿到这个CRL。是自动更新吗?更新周期和更新时机是什么样的呢?

    2.你说到的命令:

    certutil –setreg chain\ChainCacheResyncFiletime @now
    是在CA上执行吧,客户端怎么知道CRL更新了呢?

    2013年8月6日 9:21
  • 提醒一下CA的轉移手冊上,有註明主機名稱不一樣,CA的轉移會不一樣

    GPO可以派送更新

    2013年8月6日 9:32
  • 也就是说通过企业CA发布的CRL不是自动更新的,需要额外编辑GPO来做了?
    2013年8月6日 9:46