WinRm - 由于 SSL 证书不正确,无法在 HTTPS 上创建 WinRM 侦听器

问题描述 投票:0回答:3

我想将 WinRM 与 https 传输结合使用。我购买了 Comodo 证书(错误表明我无法使用自签名证书),其主题与我的 Windows 10 计算机(未加入域)的 FQDN(系统中的完整计算机名称)相匹配:

CN = my.domain.net 
OU = PositiveSSL 
OU = Domain Control Validated

尝试使用以下命令创建 https 侦听器时:

WinRm 快速配置 - 传输:https

我收到错误消息:

错误号:-2144108267 0x80338115 无法在 HTTPS 上创建 WinRM 侦听器,因为该计算机没有适当的证书。要用于 SSL,证书必须具有与主机名匹配的 CN,适合服务器身份验证,并且不会过期、吊销或自签名。

我已在多个存储(本地计算机/个人和受信任的根证书颁发机构)中安装(双击 *.crt 文件)证书,但 WinRM 无法创建 https 侦听器。 http 侦听器工作正常。

一些额外信息:当使用 certreq 尝试安装

*.cer
证书时,我收到错误:

未找到元素。 0x80070490(WIN32:1168 ERROR_NOT_FOUND)

如何让 WinRM 与 https 配合使用?

ssl https ssl-certificate winrm certreq
3个回答
8
投票

以下是我解决此问题的方法:

  • 使用 digicert.com 上的适用于 Windows 的 DigiCert 证书实用程序创建 SSL CSR
  • 使用生成的 CSR 来请求证书。我使用了 versionsio.nl,但我猜那里有很多 CA
  • 双击证书即可安装
  • 转到用户的证书管理器
  • 右键单击证书(应该在个人商店中)并将其导出 - 按照向导操作并确保导出私钥
  • 在本地计算机证书存储中安装新导出的证书(将密钥标记为可导出并包含所有扩展属性)

使用管理员权限打开控制台 (cmd) 并输入:

winrm 创建 winrm/config/Listener?地址=*+传输=HTTPS @{Hostname="server.fqdn";CertificateThumbprint="YOURCERTIFICATETHUMPPRINT"}

这对我有用。如果它不起作用,需要检查一些事项:

  1. 证书是否仍然有效(检查日期范围)
  2. 检查证书属性“主题”是否具有包含您计算机的 FQDN 的 CN 值
  3. 检查监听器是否已安装(winrm e winrm/config/listener)

我花了很多时间才弄清楚这一点。我希望它能对你们中的一些人有所帮助。


0
投票

我也遇到过这个问题 - RHAD 的答案部分有帮助,但我需要使用完全内部生成的 CA。

问题是由我选择的密钥算法引起的。使用相同的配置,仅更改其工作的密钥:

失败的密钥:使用 BrainpoolP512t1 曲线的椭圆曲线加密(在证书中显示为:公钥算法:id-ecPublicKey / ASN1 OID:brainpoolP512t1)

成功的密钥:RSA密钥:(证书中:RSA公钥:(4096位))

希望这可以帮助其他有类似问题的人。


0
投票

感谢以上所有内容 - 为我指明了正确的方向。

我的证书没有捆绑密钥 - 运行以下命令创建了一个证书,然后可以以通常的方式安装该证书,并且 WinRM 接受该证书:

openssl pkcs12 -export -out "merged_server_cert.txt" -inkey "my_server.key" -in "merged_server&intermediate_cerificates.txt"

请注意,服务器证书必须依次包含服务器证书和其中包含的任何中间证书。

完成上述操作后,

WinRm quickconfig -transport:https
命令就可以正常工作了:)

© www.soinside.com 2019 - 2024. All rights reserved.