远程桌面“无法连接到远程计算机”

Posted

技术标签:

【中文标题】远程桌面“无法连接到远程计算机”【英文标题】:Remote Desktop "can't connect to the remote computer" 【发布时间】:2011-12-16 12:31:23 【问题描述】:

我按照本教程创建了第一个 azure 应用程序 http://msdn.microsoft.com/en-us/WAZPlatformTrainingCourse_IntroToWindowsAzureLabVS2010

因为部署后它无法在以下网址上运行 http://24fb8b6a055d4ab2a556218f62d6dbe1.cloudapp.net/

我发现以下链接有助于通过远程桌面连接以查看错误: http://wely-lau.net/tag/remote-desktop/

但是,在完成所有步骤后,我收到以下错误

远程桌面无法连接到其中之一的远程计算机 原因:

1) 未启用对服务器的远程访问 2) 远程计算机已关闭 3) 远程计算机在网络上不可用

确保远程计算机已打开并连接到 网络,并且启用了远程访问。

在: 服务配置.Cloud.cscfg

我有这个内容

<?xml version="1.0"?>
<ServiceConfiguration serviceName="GuestBook" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
  <Role name="GuestBook_WebRole">
    <Instances count="1" />
    <ConfigurationSettings>
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="DefaultEndpointsProtocol=https;AccountName=luisvalenciaguestbook;AccountKey=x" />
      <Setting name="DataConnectionString" value="DefaultEndpointsProtocol=https;AccountName=luisvalenciaguestbook;AccountKey=x" />
      <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled" value="true" />
      <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountUsername" value="levalencia" />
      <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword" value="x" />
      <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountExpiration" value="2012-12-16T23:59:59.0000000+01:00" />
    </ConfigurationSettings>
    <Certificates>
      <Certificate name="Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordEncryption" thumbprint="x" thumbprintAlgorithm="sha1" />
    </Certificates>
  </Role>
  <Role name="GuestBook_WorkerRole">
    <Instances count="1" />
    <ConfigurationSettings>
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="DefaultEndpointsProtocol=https;AccountName=luisvalenciaguestbook;AccountKey=x" />
      <Setting name="DataConnectionString" value="DefaultEndpointsProtocol=https;AccountName=luisvalenciaguestbook;AccountKey=x" />
      <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled" value="true" />
      <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountUsername" value="levalencia" />
      <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword" value="x" />
      <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountExpiration" value="2012-12-16T23:59:59.0000000+01:00" />
      <Setting name="Microsoft.WindowsAzure.Plugins.RemoteForwarder.Enabled" value="true" />
    </ConfigurationSettings>
    <Certificates>
      <Certificate name="Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordEncryption" thumbprint="x" thumbprintAlgorithm="sha1" />
    </Certificates>
  </Role>
</ServiceConfiguration>

【问题讨论】:

当远程计算机打开时(因为您的站点可见),它必须是配置。在您的角色配置文件中,您是否有类似 'Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled=true' 的设置? 是的,我添加了配置文件的内容。 我的公司是否有一些不连接到远程桌面的政策?有没有办法验证? 【参考方案1】:

默认情况下,Azure 远程桌面使用通常的 TCP 端口 3389:您需要在公司防火墙上启用此功能。

直接通过配置文件或通过 Visual Studio 设置远程桌面的另一种方法是使用 Azure 管理门户临时修改它们。这更容易,也更不容易出错,尤其是在涉及证书的情况下。

照常登录管理门户,然后选择“托管服务”。然后找到您要配置的服务。

下一步是配置 Web 角色或辅助角色以允许远程桌面连接:这将调整服务的配置文件,因此当您下次升级或重新映像时,此处的任何更改都将丢失。选择角色,然后在工具栏中确保选中“启用”,然后选择配置:

系统将提示您输入用户名、密码、证书和到期时间。

选择确定。如果您对配置进行了更改,可能需要一段时间(有时是几分钟)才能应用它们。

一旦实例再次被标记为“就绪”,您就可以选择一个并选择连接:

这将下载一个扩展名为 .rdp 的文件,然后您可以打开该文件以连接到远程主机。 (这样做时您很可能会看到一些安全警告。)


如果您仍然看到有关无法连接到远程主机的警告,那么有几件事需要探索:证书和防火墙问题。根据我的经验,通过门户在 Azure 中配置远程桌面设置的“手动”过程通常可以解决证书的任何问题。

防火墙问题更难解决。您可能会发现使用 Windows Azure Connect(本质上创建从您的 PC 到 Azure 实例的安全 *** 连接)允许您直接访问 Azure 主机,通过公司防火墙建立隧道。

【讨论】:

我已经这样做了,经过一段时间的研究,我意识到它的公司网络不允许我连接,我尝试使用 .RDP 文件从家里连接,它工作得很好。【参考方案2】:

如果您要公开一个 https 端点,请确保您也公开一个 http 端点。这为我在 webrole 中托管的数据服务解决了同样的问题。

【讨论】:

【参考方案3】:

以上所有方法都不适合我。

输入您的凭据,前缀为 .例如。 “\马丁”。这样做是为了从输入的凭据中删除 Windows 域。

它有点奇怪,没有记录在任何地方,应该被 windows azure RD manager 剥离!

【讨论】:

【参考方案4】:

我遇到了这个问题,但没有任何效果,即使角色完全正常工作,我也无法远程桌面。

原来 Azure SDK 1.7 和 1.8 存在一个已知问题。以下是我从 Microsoft 收到的信息:

SDK 版本 1.7 和 1.8 中的角色启动时间问题有时会导致远程转发器服务所需的防火墙规则被删除。重新启动服务将更正问题并重新创建防火墙规则,但这不是永久修复。角色实例的任何重新部署或重新启动都可能导致问题再次发生。

解决方法:

Azure 应用程序开发人员可以实现引用 *.cmd 文件(例如 RemoteForwarderConfig.cmd)的自定义启动任务,如下所述。这将确保创建打开远程转发器服务端口的防火墙规则。应将此启动任务添加到指定用于运行远程转发器的角色中。

有关启动任务的文档可在http://msdn.microsoft.com/en-us/library/windowsazure/gg456327.aspx 获得

示例任务配置:

<Task commandLine="RemoteForwarderConfig.cmd" executionContext="elevated" taskType="background"></Task>

示例任务 cmd 文件内容:

@echo off
netsh advfirewall firewall add rule name="RemoteForwarderService custom rule" description="Allow incoming connections to the remote forwarder" dir=in protocol=tcp program="%ProgramFiles%\Windows Azure Remote Forwarder\RemoteForwarder\RemoteForwarderService.exe" action=allow enable=yes

【讨论】:

【参考方案5】:

我遇到了这个问题,无法解决。

原来密码不够复杂,但它在任何时候都没有告诉我这一点。添加更复杂的密码并使用 \YourUsername 登录为我排序!

【讨论】:

以上是关于远程桌面“无法连接到远程计算机”的主要内容,如果未能解决你的问题,请参考以下文章

远程桌面由于以下原因之一无法连接到远程计算机解决方法(亲测)

远程桌面错误:由于安全设置错误,客户端无法连接到远程计算机

解决Windows远程桌面“由于安全设置错误, 客户端无法连接到远程计算机”

win7/win10-远程桌面 "由于安全设置错误, 客户端无法连接到远程计算机”

win10远距离桌面无法使用?

win10远程桌面无法连接怎么解决