我已经将ADCS配置为通过GPO安装用户和计算机证书。有了这些证书,我可以从机器到Clearpass RADIUS服务器进行EAP-TLS认证。这是件好事。
但是我试图让用户从http:///certsrv下载非域计算机的用户证书。他们可以下载一个证书,但是它不会放在客户端机器上的“Personal”证书存储中,而是放在'Active Directory用户对象‘存储中。EAP-TLS身份验证失败。经进一步检查,该证书似乎没有下载私钥。通过GPO安装的证书确实有私钥。如果没有计算机上的私钥,EAP将始终失败。
如何使ADCS允许通过web接口下载私钥?“用户”证书模板已选中该框以允许此操作。我甚至创建了一个新的证书模板,并确保启用了允许私钥下载的选项。
想法?
谢谢!
发布于 2017-11-10 03:35:23
但是我试图让用户从http:///certsrv下载非域计算机的用户证书。
对于ADCS网络注册,对于非域连接的机器,您需要手动创建证书请求,无论是使用certreq.exe (包含在OpenSSL中)还是使用OpenSSL。
使用certreq.exe创建证书请求时,私钥将在客户端计算机上创建,并在本地存储在客户端机器上。CA从来没有您的私钥。(企业CA密钥归档超出了此处的范围。)CA只是签署您的证书请求。然后,当您将签名的证书请求带回到您的客户端并导入它时,它就会“结婚”到私钥。
这都是手册。这种自动化是Active域管理客户端和企业PKI的优点.但你指定了非域连接。
(PS,我想您可以编写一个脚本来自动化所需的certreq和certutil命令,但我手头没有这个脚本。也许有点像这。)
编辑:最后注意,您可能想尝试在CA上配置密钥归档,然后在证书请求中设置RequestType = CMC和PrivateKeyArchive = True,老实说,我不知道这在非域连接的机器上是否有效,但理论上是可以的,因为您可以使用CA的证书安全地将私钥从客户端传输到CA。(尽管您可能会争辩说,在多个位置存储私钥原则上是不安全的。)
但我从来没有测试过,也找不到文件。
(并不是说您需要密钥归档来实现我前面描述的基本certreq过程;我已经完成了100次,我知道这是可行的。)
https://serverfault.com/questions/882765
复制相似问题