AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1090542
Accepted
TheCleaner
TheCleaner
Asked: 2022-01-20 12:34:19 +0800 CST2022-01-20 12:34:19 +0800 CST 2022-01-20 12:34:19 +0800 CST

域控制器自动注册 - 更改颁发 CA

  • 772

我们正在清理我们的 Windows PKI/CA 环境并用新服务器替换我们的根 CA。当前的根 CA 多年来一直在颁发以下证书模板(除了从属证书模板):

  • Kerberos 身份验证
  • 域控制器身份验证(我们知道这已被 Kerberos 身份验证模板取代)
  • 域控制器(我们知道现在已被取代)
  • 目录电子邮件复制

从属 CA 还具有“已发布”的模板。

我们知道这并不理想,新的根 CA 将被设置为仅颁发从属证书模板。

问题:

在从根CA颁发的上述模板中删除(不删除模板本身,只是将其从该根CA颁发的模板中删除)后,当域控制器自动更新上述证书时,他们是否会知道查看从属CA根据域控制器所需的模板更新/颁发新证书? 或者我们还需要做些什么来主动向环境中的 DC 颁发新证书?现有证书不会被吊销,因此在重新注册之前它们将一直有效,但我们很好奇如果原始证书是由旧根 CA 颁发的,重新注册是否会失败。我们不确定 DC 是如何“决定”的

附加附加问题:

您知道我们替换 rootCA 后从现有 SubCA 颁发的现有证书会有什么影响吗?我们正在根据以下内容将 rootCA 迁移到一个新名称:逐步将 CA 迁移到新服务器——评论中的其他人基本上问了我关于现有证书的问题,但没有回复。我的猜测是,只要客户端在其受信任的根存储中仍然有旧的 RootCA,在中间存储中仍然有 SubCA,他们应该仍然有一个良好的证书链,直到证书过期,但我想提前知道的时间。

domain-controller certificate-authority ad-certificate-services
  • 1 1 个回答
  • 1002 Views

1 个回答

  • Voted
  1. Best Answer
    Crypt32
    2022-01-20T23:28:41+08:002022-01-20T23:28:41+08:00

    当域控制器自动更新上述证书时,他们是否知道根据域控制器所需的那些模板查看从属 CA 以更新/颁发新证书?

    是的。注册客户端将首先枚举所有支持从 AD 请求模板的 CA。然后客户端将从该列表中选择随机 CA 来发送续订请求。也就是说,从根 CA 中删除所有模板很好,客户端将尝试另一个支持该模板的可用 CA。

    ps 虽然我会考虑将企业根 CA(加入域)转换为独立根 CA(工作组成员),这样您就可以在大部分时间关闭根 CA,因为它与在线无关。您将每年打开一次或两次以发布 CRL 或当您需要签署从属 CA 证书时。但这是另一个问题,只是遵循最佳实践的好方法。

    更新 1 (21.01.2022)

    Microsoft Docs 页面未显示有关它如何枚举 CA 等的任何信息。

    注册客户端调用通用IX509Enrollment::Enroll执行一系列调用(非常简化的步骤):

    使用[MS-XCEP] 的CA 发现

    1. 从注册表加载策略列表。
    2. 按PolicyId属性对策略进行分组。
    3. 组按成本属性排序,然后按身份验证属性排序。Kerberos 身份验证具有更高的优先级。其余组以任意顺序放置。
    4. 通过调用IPolicy::GetPoliciesResponse web 方法查询每个策略。响应包含 CA Web 服务列表
    5. 响应包含:调用者有权注册的证书模板列表和 CA 端点列表(实现[MS-WSTEP]协议)以及有关支持的证书模板的信息。
    6. 准备空列表。
    7. 对于每个排序的策略组:
    8. 按成本属性排序 CA ,然后按身份验证属性。Kerberos 身份验证具有更高的优先级。其余组以任意顺序放置。消除调用者没有权限的 CA。以相同的顺序将有序的 CA 附加到列表中。
    9. 重复 (8) 直到所有 CA 都添加到列表中。
    10. 对于剩余列表中的每个 CA:
    11. 生成证书请求并调用ICertRequest::Submit将请求提交给选定的 CA。
    12. 重复 (11) 直到调用成功。

    使用[MS-WCCE] 的CA 发现

    1. 执行ICertConfig::Next的 do-while 循环调用以枚举所有自动发现的 CA(本地、在 AD 中注册、存储在共享目录中等)。这将生成所有可能的 CA 的列表。
    2. 对于每个 CA 客户端,都使用作为参数进行ICertRequest2::GetCAProperty调用。消除离线 CA。CR_PROP_TEMPLATESpropID
    3. (1)中获得的过滤器列表,用于排除不支持请求模板的 CA。
    4. 如果配置了CA 站点感知,则筛选与客户端位于同一 ADDS 站点中的 CA 列表。如果未配置 CA 站点感知或客户端所在的同一 ADDS 站点中没有 CA,则不要过滤。
    5. 调用ICertRequest::GetCACertificate以检索 CA 证书并验证每个证书。消除证书无效或不受信任的 CA。
    6. 从剩余列表中选择任意 CA,生成证书请求并调用ICertRequest::Submit将请求提交给选定的 CA。

    同样,注册客户端发现 CA 并提交证书请求是一个简化的任务序列。

    更新 2

    您知道我们替换 rootCA 后从现有 SubCA 颁发的现有证书会有什么影响吗?

    只要客户端信任根 CA,实际上什么都没有。

    • 4

相关问题

  • 更换2000域控制器

  • 服务器核心上的 DCPromo - 密码复杂性

  • 如何创建专用林根域?

  • 如何让 WindowsXp 机器使用特定的域控制器作为登录服务器?

  • 在同一台机器上将域控制器作为 1 个 VM 和一个 RODC 作为另一个 VM 运行,它会工作吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve