問題描述
使用MSTSC方式登錄Windows Server 2008操作系統的云主機,系統報錯:檢測到一個協議錯誤(代碼?0x1104)。
圖 協議錯誤(代碼 0x1104)

可能原因
-
服務端安全組3389端口未開啟。
-
服務端防火墻關閉。
-
服務端3389端口被其他進程占用。
-
遠程桌面會話主機配置不正確。
處理方法
步驟 1 檢查安全組設置。
檢查3389端口入方向是否開啟,若已開啟,執行步驟2。
步驟 2 檢查防火墻是否關閉。
1.登錄Windows云主機。
2.單擊桌面左下角的Windows圖標,選擇“控制面板?> Windows防火墻”。

3.單擊“啟用或關閉Windows防火墻”。
查看并設置防火墻的具體狀態:開啟或關閉。

如果正常,請執行步驟3。
步驟 3 使用VNC方式登錄云主機,查看端口信息。
1.進入cmd命令窗,并執行以下命令。
netstat -ano |findstr?:3389
圖 檢查3389端口

如上圖所示,3389端口被占用,進程PID為4。
2.打開任務管理器,查看PID為4的進程為System系統進程。
3.通常IIS服務和SQL Server會以System進程運行,執行以下HTTP命令進一步查看。
netsh http show servicestate
圖 查看系統進程

4.如果可以看到3389端口被HTTP協議使用,可以確定是被IIS服務占用。
5.在瀏覽器輸入“//127.0.0.1:3389”進行驗證,網站打開正常。
6.修改IIS使用其他端口,重啟IIS服務。
步驟 4 如果以上檢查均沒有問題,請執行步驟5,檢查是否由于遠程桌面會話主機配置導致。
步驟 5 檢查遠程桌面會話主機配置。
1.通過VNC登錄云主機。
2.打開cmd運行窗口,并輸入“gpedit.msc”。
3.單擊“確定”,打開“本地組策略編輯器”。
4.選擇“計算機配置?>?管理模板?> Windows組件”,查找并雙擊“遠程桌面服務”。
圖 遠程桌面服務

5.選擇“遠程桌面會話主機?>?安全?>?遠程(RDP)連接要求使用指定的安全層”。
圖 遠程(RDP)連接要求使用指定的安全層

6.選擇“已啟用”,并將“安全層”設置為“RDP”。
圖 設置安全層

7.單擊“確定”。
8.配置完成后,打開“cmd”命令窗。
9.執行以下命令,刷新組策略。
gpupdate
圖 刷新組策略
