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

如何验证Azure虚拟机RDP证书?,azure,certificate,rdp,azure-virtual-machine,Azure,Certificate,Rdp,Azure Virtual Machine,由于某种原因,我的虚拟机的RDP证书指纹已更改。我有没有办法在Azure中验证新的证书指纹 类型:虚拟机(经典型),计算机:Basic_A3,操作系统:Windows Server如果您使用的是经典型虚拟机(ASM),则旧版Azure门户可能会在此处为您提供帮助(manage.windowsazure.com)。我知道对于Linux虚拟机,它会显示SSH指纹,但不确定是否会显示自动注册的RDP证书。如果您启用了VM扩展,那么如果需要重置RDP配置,您应该能够在classic VM上部署密码重置扩

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


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

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

这为我解决了问题

  • 使用PowerShell登录到VM。(如果您不知道如何操作,请遵循。安全登录的证书可在新门户中找到:云服务(经典)>(vm名称)>设置>证书)

  • 远程执行以下命令:

    set-location cert
    set-location localmachine
    set-location "remote desktop"
    dir
    
  • 这将为您提供证书指纹。当您尝试使用远程桌面连接时,请使用它来验证给定的值


  • 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
        }
    }
    
    如您所见,有一个
    rdpcertificatedtails
    对象列出了RDP服务器证书的SHA指纹。与Linux引导诊断日志不同,它每次都会列出指纹,因此如果第一次引导时没有记录指纹,则无需担心

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

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

    单击查看证书,然后转到详细信息。在这里,您可以找到要与引导诊断中的指纹进行验证的指纹


    有关在Azure门户中查找引导诊断和获取Linux VM的SSH密钥的更多详细说明,请参阅上的我的回答。

    @MichaelB似乎Azure机器每6个月自动续订一次证书。但谁知道是不是应该是这样的……谢谢。我添加了一些基本的机器信息。遗留门户中确实存在RDP指纹。但是现在,和我连接时得到的不一样。我将尝试找出原因。我在Serial log选项卡中没有看到JSON输出。我看到XML语法显示了各种数据,如
    ,但没有提到
    remoteAccess
    。只是测试了这个,是的,它们似乎改变了串行日志输出,这是不幸的。不过,我找到了解决办法。转到操作>运行命令>运行PowerShellScript并运行
    获取子项-路径“Cert:LocalMachine\Remote Desktop”
    以提取RDP证书指纹。