如何验证Azure虚拟机RDP证书?

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

我的虚拟机的 RDP 证书指纹由于某种原因发生了更改。有没有办法让我在 Azure 中验证新的证书指纹?

类型:虚拟机(经典),机器:Basic_A3,操作系统:Windows Server

azure certificate rdp azure-virtual-machine
3个回答
5
投票

Azure 中提供启动诊断日志,在启动虚拟机时默认启用。您可以通过在 Azure 门户中选择虚拟机来找到它们;在菜单部分“帮助”中,选择“启动诊断”,然后选择“串行日志”选项卡。这些日志将各种系统参数列为 JSON 对象,其中包含如下所示的

remoteAccess
对象。

"remoteAccess": {
    "windows": {
        "rdpPort": 3389,
        "rdpEnabled": true,
        "rdpTcpListenerSecurityConfiguration": {
            "nlaUserAuthenticationRequired": true,
            "authenticationSecurityLayer": "TLS",
            "protocolNegotiationAllowed": true
        },
        "rdpTcpListenerMaxConnections": 2,
        "rdpFirewallAccess": "Allowed",
        "rdpAllowedUsers": [
            "TestUser"
        ],
        "rdpCertificateDetails": {
            "subject": "CN=RDPTest",
            "thumbprint": "9AD7CB3493790BCAB6FBF543EBBBE68883E9EE89",
            "validFrom": "2018-02-17T10:58:42Z",
            "validTo": "2018-08-19T10:58:42Z"
        },
        "rdsLicensingStatus": null
    }
}

如您所见,有一个

rdpCertificateDetails
对象列出了 RDP 服务器证书的 SHA 指纹。与 Linux 启动诊断日志不同,它每次都会列出指纹,因此无需担心首次启动时是否未记录指纹。

首次连接时,会出现“未知发布者”警告。

单击并输入您的凭据。输入您的凭据后,它将显示“身份无法验证”警告。计算机的名称将是 Azure 中 VM 的名称。

点击查看证书,进入详细信息。您可以在此处找到指纹,以与启动诊断中的指纹进行验证。

有关在 Azure 门户中查找启动诊断以及获取 Linux VM 的 SSH 密钥的更多详细说明,请参阅我对此 StackOverflow 问题的回答。


1
投票

如果您使用经典 VM (ASM),旧版 Azure 门户很可能可以在这里为您提供帮助 (manage.windowsazure.com)。我知道对于 Linux VM,它会显示 SSH 指纹,但不确定它是否会显示自动注册的 RDP 证书。如果您启用了虚拟机扩展,那么如果需要重置 RDP 配置,您应该能够在经典虚拟机上部署密码重置扩展。不过,门户已内置了该扩展。如果您提供有关操作系统和虚拟机型号的更多信息,我们将能够在这里为您提供更好的帮助。


1
投票

这解决了我的问题。

  1. 使用 PowerShell 登录虚拟机。 (如果您不知道如何操作,请按照此指南进行操作。安全登录的证书可在新门户中找到:云服务(经典)>(虚拟机名称)> 设置 > 证书)

  2. 远程执行以下命令:

    set-location cert
    set-location localmachine
    set-location "remote desktop"
    dir
    
  3. 这将为您提供证书指纹。使用它来验证当您尝试使用远程桌面进行连接时给出的信息。

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