遠程桌面排錯(已解決)

最近遇到了一個比較棘手的問題,用戶遠程桌面無法連接,我的博文中之前也寫到了一篇遠程桌面排錯,但是這次的和之前的大不相同


= = 原因排查步驟

1)首先當然是查看報錯,這個是我自己機器上截圖的,報錯信息都一樣

wKiom1fGNHCjp4WeAAAvGIECvdQ042.png


2)首先查看服務器是否開啓了遠程訪問

wKiom1fGNQLgGrUMAABmpK7Zq0k868.png


3)查看目標是否可以ping通

wKiom1fGNUmwbCFIAAAokyt468o457.png


4)查看服務是否正常啓動

wKioL1fGNbDhuoerAADQa9f_ibY363.png


5)如果要正常遠程到目標必須可以telnet到目標的遠程端口,默認爲3389,這個端口不通,我們之前已經將防火牆關閉了

wKiom1fGNkDTIJklAAANGqlXiC4071.png


6)本機上telnet 127.0.0.1 3389,這麼做的話可以排除外界因素的干擾,當然還是不通


7)然後我在本機使用netstat -ano 命令查看監聽的端口是否有3389,並沒有找到3389端口,5800和5900端口是VNC服務器的端口,也是一款遠程軟件,還好有它不然都沒法排錯

 Proto  Local Address          Foreign Address        State           PID

 TCP    0.0.0.0:80             0.0.0.0:0              LISTENING       4

  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       924

  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING       4

  TCP    0.0.0.0:1311           0.0.0.0:0              LISTENING       2260

  TCP    0.0.0.0:5800           0.0.0.0:0              LISTENING       2344

  TCP    0.0.0.0:5900           0.0.0.0:0              LISTENING       2344

  TCP    0.0.0.0:9083           0.0.0.0:0              LISTENING       1488

  TCP    0.0.0.0:9527           0.0.0.0:0              LISTENING       1740

  TCP    0.0.0.0:49152          0.0.0.0:0              LISTENING       636

  TCP    0.0.0.0:49153          0.0.0.0:0              LISTENING       248

  TCP    0.0.0.0:49154          0.0.0.0:0              LISTENING       532

  TCP    0.0.0.0:49183          0.0.0.0:0              LISTENING       744

  TCP    0.0.0.0:49214          0.0.0.0:0              LISTENING       736

  TCP    0.0.0.0:49219          0.0.0.0:0              LISTENING       4200

  TCP    10.124.84.165:3181     0.0.0.0:0              LISTENING       2036

  TCP    10.124.84.165:5900     10.124.84.17:61778     ESTABLISHED     2344

  TCP    10.124.84.165:49155    10.124.84.62:135       TIME_WAIT       0

  TCP    10.124.84.165:49156    10.124.84.62:49159     TIME_WAIT       0

  TCP    10.124.84.165:49162    10.124.84.61:135       TIME_WAIT       0

  TCP    10.124.84.165:49163    10.124.84.61:49155     TIME_WAIT       0

  TCP    10.124.84.165:49184    10.124.84.62:49155     TIME_WAIT       0

  TCP    10.124.84.165:49188    9.9.200.232:80         CLOSE_WAIT      2028

  TCP    10.124.84.165:49190    9.9.200.232:37527      ESTABLISHED     1836

  TCP    10.124.84.165:49192    10.124.84.62:135       TIME_WAIT       0

  TCP    10.124.84.165:49193    10.124.84.62:49155     TIME_WAIT       0

  TCP    10.124.84.165:49220    10.124.84.62:135       ESTABLISHED     532

  TCP    10.124.84.165:49221    10.124.84.62:49155     ESTABLISHED     532

  TCP    10.124.84.165:49237    10.124.84.87:8014      ESTABLISHED     4040

  TCP    10.124.84.165:49238    10.124.84.16:3183      ESTABLISHED     2036

  TCP    10.124.84.165:49246    10.124.84.62:135       TIME_WAIT       0

  TCP    10.124.84.165:49247    10.124.84.62:49155     ESTABLISHED     744

  TCP    10.124.84.165:49265    9.9.200.232:80         CLOSE_WAIT      5260

  TCP    10.124.84.165:49270    9.9.200.232:80         TIME_WAIT       0

  TCP    10.124.84.165:49271    10.124.84.16:2059      TIME_WAIT       0

  TCP    10.124.84.165:49273    9.9.200.232:80         TIME_WAIT       0

  TCP    10.124.84.165:49278    10.124.84.102:445      ESTABLISHED     4

  TCP    10.124.84.165:49282    111.108.54.16:80       SYN_SENT        12

  TCP    127.0.0.1:36600        0.0.0.0:0              LISTENING       1836

  TCP    [::]:80                [::]:0                 LISTENING       4

  TCP    [::]:135               [::]:0                 LISTENING       924

  TCP    [::]:445               [::]:0                 LISTENING       4

  TCP    [::]:1311              [::]:0                 LISTENING       2260

  TCP    [::]:9527              [::]:0                 LISTENING       1740

  TCP    [::]:49152             [::]:0                 LISTENING       636

  TCP    [::]:49153             [::]:0                 LISTENING       248

  TCP    [::]:49154             [::]:0                 LISTENING       532

  TCP    [::]:49183             [::]:0                 LISTENING       744

  TCP    [::]:49214             [::]:0                 LISTENING       736

  TCP    [::]:49219             [::]:0                 LISTENING       4200

  UDP    0.0.0.0:123            *:*                                    540

  UDP    0.0.0.0:500            *:*                                    532

  UDP    0.0.0.0:4500           *:*                                    532

  UDP    0.0.0.0:5355           *:*                                    12

  UDP    0.0.0.0:9528           *:*                                    1740

  UDP    0.0.0.0:36599          *:*                                    2028

  UDP    0.0.0.0:58868          *:*                                    2028

  UDP    0.0.0.0:58869          *:*                                    2028

  UDP    0.0.0.0:58870          *:*                                    2028

  UDP    10.124.84.165:3001     *:*                                    1740

  UDP    127.0.0.1:51709        *:*                                    4040

  UDP    127.0.0.1:52623        *:*                                    1488

  UDP    127.0.0.1:52685        *:*                                    280

  UDP    127.0.0.1:58867        *:*                                    1836

  UDP    127.0.0.1:59657        *:*                                    744

  UDP    127.0.0.1:59660        *:*                                    12

  UDP    [::]:123               *:*                                    540

  UDP    [::]:500               *:*                                    532

  UDP    [::]:4500              *:*                                    532

  UDP    [::]:5355              *:*                                    12

  UDP    [::]:9528              *:*                                    1740


8)端口都找不到,是不是有人修改了默認的3389端口,在註冊表如下路徑

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\PortNumber查看值是否爲3389,我這裏並沒有修改,但是我考慮可能是端口被佔用?


9)我就修改端口試試看吧,修改端口的話需要修改兩個值,修改完之後重啓RDS服務即可

wKioL1fGON7ggZ2iAADyQkwoGUs164.png


基數調整爲十進制然後填入3390

wKioL1fGOR_QW-k_AAEpX_oLctU591.png


重新啓動服務後就會生效

wKioL1fGOc_TsD1jAACvMHNgeJo358.png


= = 考慮第三方因素

1)之前同事處理過一個問題,就是因爲其他服務佔用了3389端口後,修改端口就可以訪問了,但是我處理的這臺服務器有一個不同點就是他本地都監聽不到端口


2)修改端口後依舊是之前的問題,之後聽客戶說他們有一塊心跳網卡,之前遠程還是正常的,可能是心跳網卡有關係,將心跳網卡禁用後,我重啓了服務器,好像和它沒什麼關係


3)考慮第三方服務造成了服務故障?cmd中輸入msconfig,這個操作需要重啓,我還關閉了殺毒軟件

wKiom1fGOuDQE9IHAACYbWUEKRA649.png


4)可能是RDS組件無法使用3389端口?,我就下載了一些RDS組件的更新,系統是08R2企業版,前三個正常安裝,後面的不適用,沒有什麼影響,安裝完成後重啓

     升級RDS相關的組件:

Package: Winscard.dll

----------------------------------------------------------- 

KB Article Number (s) : 2531912  

Language: All (Global)  

Platform: x64  

Location: ( http://hotfixv4.microsoft.com/Windows%207/Windows%20Server2008%20R2%20SP1/sp2/Fix371487/7600/free/433940_intl_x64_zip.exe)

 

Package: Mstsc.exe

----------------------------------------------------------- 

KB Article Number (s) : 2870165  

Language: All (Global)  

Platform: x64  

Location: ( http://hotfixv4.microsoft.com/Windows%207/Windows%20Server2008%20R2%20SP1/sp2/Fix451420/7600/free/465746_intl_x64_zip.exe )

 

Package: mstscax.dll

----------------------------------------------------------- 

KB Article Number (s) : 2925429  

Language: All (Global)  

Platform: x64  

Location: ( http://hotfixv4.microsoft.com/Windows%207/Windows%20Server2008%20R2%20SP1/sp2/Fix495746/7600/free/474212_intl_x64_zip.exe )

 

Package:Win32k.sys

----------------------------------------------------------- 

KB ArticleNumber (s) : 2866519  

Language:All (Global)  

Platform:x64  

Location:( http://hotfixv4.microsoft.com/Windows%207/Windows%20Server2008%20R2%20SP1/sp2/Fix462371/7600/free/465697_intl_x64_zip.exe )

 

Package:termsrv.dll

----------------------------------------------------------- 

KBArticle Number (s) : 2878424  

Language:All (Global)  

Platform:x64  

Location:( http://hotfixv4.microsoft.com/Windows%207/Windows%20Server2008%20R2%20SP1/sp2/Fix472988/7600/free/467239_intl_x64_zip.exe )

 

Package:Winscard.dll

----------------------------------------------------------- 

KBArticle Number (s) : 2833914  

Language:All (Global)  

Platform:x64  

Location:( http://hotfixv4.microsoft.com/Windows%207/Windows%20Server2008%20R2%20SP1/sp2/Fix427222/7600/free/461319_intl_x64_zip.exe


5)到事件查看器的以下路徑:Application and services log\Microsoft\Windows\Remote desktop service或者terminal service,然後我就發現了這條日誌,提示RDS服務啓動失敗

wKioL1fM1mzTCUUKAADhh7JFAh0951.png


6)和上條日誌奇怪的是這裏看到的RDS服務狀態已經是運行中

wKiom1fM1l3iX-q-AAEawlPuB6E583.png


7)將RDS服務啓動類型設置爲自動,然後檢查服務器是否安裝了KB2621440 和 KB2667402,這兩個更新也是和RDS服務有關的,我檢查到服務器是將所有更新都安裝了的,如果想檢查是否安裝了哪個更新可以在cmd中中輸入 systeminfo > c:\xx.txt 然後點擊文本文檔查找KB號即可

補丁下載地址https://technet.microsoft.com/zh-cn/library/security/ms12-020.aspx

這個補丁是Windows 7 和 Server2008 可用的,在下方按照系統版本進行下載


8)基本尋常的方法都試過了,對比有問題和沒有問題的服務器,然後將沒有問題的服務器RDS文件替換到有問題的服務器,文件在Windows\System32目錄下,repcorekmts.dll \ rdpwsx.dll \ rdrmenmptylst.exe(然後重新啓動服務器,結果爲False)


= = 終極大招

1)一個問題不會無緣無故的出現,最後我只能懷疑是有人動了註冊表中的值,最快捷最方便的解決方法便是將沒問題的服務器註冊表值導入到有問題服務器的註冊表中

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server下的兩個值導出

注意,這項操作兩臺服務器都要進行,有問題的服務器最好將註冊表項進行備份

wKioL1fNE7GCZHFnAACh8TvH_K0012.png

2)然後把導出來的註冊表值在問題服務器上運行,就會進行導入操作,如果你是導出的Terminal Server這個項,是不可以進行導入的


3)在導入完成後,要想讓註冊表生效最好是重啓一下服務器


4)重啓完成後,我已經可以telnet到3389端口了,這是一個好消息,然而問題並沒有解決


5)客戶端在mstsc時出現了閃退的現象,和我之前的遠程桌面排錯服務有點相似


6)報錯圖如下,看下方,遠程許可服務器是可用的

wKioL1fNFK_wP9c2AADkMVhPX8Q922.png

7)造成此現象的原因,這臺服務器導入的註冊表值中沒有配置遠程桌面主機服務,我將此服務器上的遠程桌面服務刪除,然後添加,這樣註冊表中才會存在遠程桌面主機服務的值,此時就可以進行遠程桌面連接了


8)重新安裝遠程桌面服務

每個人的環境不同,如果你的環境沒有遠程桌面許可服務器的話不要安裝此角色

wKiom1fSLc_ABAQbAAB7haEVVFs744.png

wKioL1fSLdDAA6S6AABnHrReHp0902.png



問題處理完成,如果在導出註冊表項,準備導入後出現錯誤,可能是導出的值損壞了,重新導出導入即可


最後在鏈接一個別人的博文,其中也寫到了一篇遠程桌面排錯的

http://renzhiyuan.blog.51cto.com/10433137/1830685


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章