注:下列步骤并不一定适用所有场景,提供思路,请灵活应用

我们在使用Microsoft Azure 中Windows 虚拟机,有时会发生错误打开防火墙或一些管家软件错误的关闭了“远程桌面” ,会发生无法再次使用MSTSC.exe 连接到虚拟机的情况。

在下面的步骤中我假定无法RDP的虚拟机名字为VM01, 管理员为Azureuser, 密码为Password, Cloud Service 名为vm01.chinacloudapp.cn

  1. 在Azure管理网站上创建新的VM (ExtraSmall), 机器名RecoverVM, 用户名 为Azureuser 密码为Password, 放入同一个Cloud service下面。 如 vm01.chinacloudapp.cn
  2. 远程桌面访问 RecoverVM, RDP 端口为vm01.chinacloudapp.cn : xxxxx
  3. (关键) RecoverVM内打开REGEDIT,

    使用远程注册表连接到vm01, (可以打开的,原因a. 同一个cloud service下的VM在IP层面是互联互通的,b. Windows中,相同用户名,相同密码在工作组级别是相同安全级别的)



    增加注册表项 

    \VM01\HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run  

    EnableRDP:  C:\Windows\RemoteDesktopEnabler.cmd (REG_SZ)



    增加注册表项 

    \VM01\HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon               

    AutoAdminLogon : 0x1  (REG_DWORD)

    DefaultUsername: Azureuser (REG_SZ)               

    DefaultPassword: Password (REG_SZ)
  4. (关键)在recoveryvm  用notepad.exe 生成RemoteDesktopEnabler.cmd 复制到 \\vm01\c$\windows
  5. 生成 RemoteDesktopEnabler.cmd 仅适用于英文和简体中文的Windows , Vista 和以上的版本 附件
    ::0.Enable Fileshare/WinRM
    
     netsh advfirewall Firewall set rule group="Remote Administration" new enable=yes
    
     netsh advfirewall Firewall set rule group="Windows Remote Management" new enable=yes
    
     netsh advfirewall Firewall set rule group="File and Printer Sharing" new enable=yes
    
     netsh advfirewall firewall set rule group="Remote Desktop" new enable=yes
    
     netsh advfirewall firewall set rule group="远程桌面" new enable=yes
    
     netsh advfirewall firewall set rule group="远程管理" new enable=yes
    
     netsh advfirewall firewall set rule group="Windows 远程管理" new enable=yes
    
     netsh advfirewall firewall set rule group="文件和打印机共享" new enable=yes
    
     ::2 Enable RDP/RDP Firewall
    
     REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 00000000 /f



     

  6. 回到management.windowsazure.cn管理网站,重新启动VM01
  7. 等待5~10分钟,使用RDP vm01.chinacloudapp.cn:xxxx

检查一下故障是否解决

后续工作及说明

  1. 第3步中加入注册表的明文密码,如果担心将来管理不安全,可以去掉,使用Control userpasswords2 来设置自动logon可以不在注册表内写明文的密码
  2. 如果第3步(注册表修改),第4步(文件添加)无法执行,(可能情况,防火墙关闭了所有的端口)。我们可以这样操作。把虚拟机在管理网站中删除(保留磁盘方式)用Recover

    VM加载数据盘方式对 VM01的系统盘进行离线修改。
  3. 使用上述步骤后,将来再次关错防火墙,只要重启一下机器, 虚拟机就可以解决这个问题。

本文转载自:http://blogs.msdn.com/b/cciccat/archive/2014/06/03/windows-azure-rdp.aspx

最新文章

  1. 【转】mysql对large page的支持
  2. 安装初始化mysql后,默认几个库介绍
  3. Web Service中的几个重要术语
  4. 2015 AlBaath Collegiate Programming Contest B
  5. 基于tcpdump实例讲解TCP/IP协议
  6. EditText 监听回车事件 避免2次触发
  7. OpenJudge/Poj 1517 u Calculate e
  8. Nginx对于图片,js等静态文件的缓存设置
  9. 部分无线终端不响应键盘事件(keydown,keypress,keyup)的解决办法
  10. java字符串替换的问题
  11. Exception sending context initialized event to listener instance of class
  12. zookeeper入门系列:paxos协议
  13. java中的链表编写
  14. LEDAPS1.3.0版本移植到windows平台----HuSr大气校正模块
  15. Python实现多线程调用GDAL执行正射校正
  16. C++学习基础十五--sizeof的常见使用
  17. [Java]MyBatis框架
  18. TP3.2中filed和find()使用
  19. 应输入 #endregion 指令报错的排查技巧
  20. [转] 在Jenkins Pipeline DSL中 遍历 groovy list

热门文章

  1. CSS 的选择符
  2. Linux的IO调度
  3. bootstrap Tooltip换行问题
  4. Dom操作--跑马灯效果
  5. 跨域、sql注入、xss攻击
  6. 【转】【Top 100 Best Blogs for iOS Developers】
  7. [简历] PHP 技能关键字列表
  8. 在虚拟机的linux中利用VMware Tools实现与windows共享文件
  9. JVM 找出最耗 cpu的线程 并打印线程栈
  10. APNs-远程推送