powershell-5.0 - 如何更新端口 5986 (WinRM) 证书?
问题描述
我们收到一封电子邮件,说我们的端口 5986 (WinRM?) 证书即将到期,我们应该采取措施避免中断。
去年我为 TFS 通信配置 WinRM 的方式是这样的:
- 从 GitHub 下载 <a href="https://github.com/Microsoft/vsts-rm-extensions/blob/master/TaskModules/powershell/WinRM/WinRM-Http-Https/ConfigureWinRM.ps1" rel="nofollow noreferrer" >这个 PowerShell 脚本 </li>
- 在具有管理权限的 PowerShell 控制台中执行以下操作:
ConfigureWinRM.ps1 {FQDN} https
例子:ConfigureWinRM.ps1 server.tst.com https
我是否必须再次重新运行才能续订?我需要先删除旧的证书指纹吗?
显然,4 年前有一个错误,WinRM 似乎确实注意到证书已更新,因为它继续通过 HTTPS 接受 WinRM 连接而没有问题,即使在下面引用的证书WSman\Listener
已过期之后也是如此。
我不希望发生冲突,所以我想安全地更新它,尤其是当我们收到相同的生产通知时。
注意:该 git 错误报告中使用了一些有用的命令来比较替换的证书指纹:
ls cert:\localmachine\my
ls wsman:\localhost\listener\listener_1305953032
Winrm enumerate winrm/config/listener
netsh http show sslcert ipport=0.0.0.0:5986
解决方案
我只需要再次重新运行相同的步骤(如果上次脚本仍然存在,请跳过第 1 步)
- 从 GitHub 下载 <a href="https://github.com/Microsoft/vsts-rm-extensions/blob/master/TaskModules/powershell/WinRM/WinRM-Http-Https/ConfigureWinRM.ps1" rel="nofollow noreferrer" >此 PowerShell 脚本
- 在具有管理权限的 PowerShell 控制台中执行以下操作:
ConfigureWinRM.ps1 servername https
PSVersion 5.1.14393.3471 上似乎不存在该错误
我运行了上面列出的注释中的命令,并且所有 4 个都显示了新的指纹。
不需要重新启动
推荐阅读
- tensorflow - tf.stop_gradient 和 feed 变量之间的 Tensorflow 差异优化器?
- c# - Quit() 使 Access 暂时可见
- javascript - i18n.changeLanguage 不是函数
- string - 避免汇编中的空终止字符串
- excel-formula - 尝试制作一个将字符串与其他字符串值的大列进行比较的函数
- r - 如何读取具有动态名称的文件,同时避免在 R 中进行硬编码?
- ansible - ansible 比较文件中的两个字符串并检查是否等于定义的变量
- excel-formula - 在数组公式中使用日期范围
- c# - 如何在 C# 单元测试中伪造内置方法的返回?
- javascript - Angular 6:拒绝从“URL”执行脚本,因为它的 MIME 类型()不可执行,并且启用了严格的 MIME 类型检查