問題如下:
筆記本(IP:10.100.172.194)上裝了VNC Viewer,臺機(IP:10.100.100.103)上裝了VNC Server,原本筆記本連接無線網,可以通過VNC遠程連接到辦公網的臺機的桌面,自從臺機重裝了系統后,重新安裝了VNC Server,就連不上了,連過去的時候報錯 The was refused by the ,見下圖:
排查問題的過程:
一般VNC連接有問題,最有可能的是服務器端的5900端口沒有開放,VNC Server的消息中心里也會提示端口被阻斷,可以自行在服務器端防火墻上添加一條入方向的規則,允許訪問5900端口,或者對Windows防火墻不太熟悉的話,粗暴一點直接重裝VNC Server,安裝時自動將服務端口添加例外即可,但這次問題有點不一樣,具體排查過程如下:
1、首先一看提示連接被拒絕,網絡應該是通了,只是數據包被拒絕了,感覺應該是被防火墻什么的安全策略阻擋了,首先檢查了自己主機的防火墻,從來不會在Windows自帶的防火墻上配置阻斷規則的,只檢查了有沒有開放VNC Server使用的5900端口,果然已經添加了,因為VNC Server也沒報錯,而且安裝的時候已經添加了例外;然后猜想是不是安全管理員新增了安全策略,阻斷了通過無線網絡訪問辦公網的VNC Server的權限,然后發現同事通過無線使用VNC遠程桌面是正常的,排除了這個可能。
2、網絡沒問題,但在筆記本上telnet臺機的5900端口,確實不通,在臺機上抓訪問5900端口的包也沒收到,但是netstat查看臺機上的5900端口是開啟的,于是懷疑可能是軟件問題,檢查了VNC Server的授權正常,設置也沒什么問題,服務器的信息中心也沒報錯,不管了,果斷使用重裝大法,重裝了筆記本的VNC Viewer和臺機的VNC Server,發現還是沒什么卵用。
3、接著是一波關鍵測試,排除一下軟件的問題,用我筆記本的VNC viewer連接同事臺機上的VNC Server,發現可以連接,說明筆記本的VNC Viewer沒問題;用同事筆記本的VNC Viewer連接我主機上的VNC Server,發現也可以連接,說明我主機上VNC Server也么有問題。
WTF?是時候冷靜下來思考一波了。。。
那么問題就回到這個關鍵的節點:重裝臺機系統,這個前后發生了什么?
終于找到了忽略的關鍵:VNC客戶端首次與VNC服務器建立連接時會保存服務器發來的公鑰指紋,之后與同一臺服務器(這個同一臺是用IP地址來標識的)建立連接時,就不會重新接收同一個服務器的公鑰指紋了,默認使用已保存的指紋進行驗證。
重裝之前,筆記本使用VNC Viewer連接過臺機,就保存了那個時候臺機VNC Server發來的指紋。
然后臺機重裝系統后,也重裝了VNC Server,其公鑰指紋也發生了變化。
但是客戶端還是默認使用舊的指紋去與跟服務器握手,然額服務器已經不認識它了,就說你是誰啊,反手就是一瓜子。
另一方面客戶端保存的服務器公鑰指紋是寫在注冊表里的,所以后來即便重裝了客戶端的VNC Viewer,其舊的指紋還是在,所以它還是屢教不改,用舊的信物去握手,又被踢回來了。
所以解決方法就來了:
1、打開筆記本上的注冊表,Win+R打開運行框,輸入regedit打開注冊表編輯器,找到VNC Viewer保存服務器指紋的表項:
計算機\\\RealVNC\\。(這個是網上搜的)
2、然后將已保存的VNC Server服務器(這里即臺機10.100.100.103)的兩個舊的指紋數據右鍵刪除即可。
3、刪除之后需要重啟筆記本,修改的注冊表才會生效。
4、重啟之后,世界和平~
接收保存新的公鑰指紋,輸入VNC Server的驗證密碼,成功連接遠程桌面。
這個問題已經有好幾周了,開始搞了一下沒搞好,后來沒怎么用,也沒去解決,今天下決心排查了一下,總算解決了,感覺神清氣爽,還是要冷靜下來,慢慢分析才行~
解決win10系統 L2TP連接嘗試失敗:ERROR因為安全層在初始化與遠程計算機的協商時遇到了一個處理錯誤
錯誤描述:當連接VPN是回傳錯誤為“ L2TP連接嘗試失敗,因為安全層在初始化與遠程計算機的協商時遇到了一個處理錯誤”
操作系統:win10家庭版
VPN設置:
常規選項:配置了需要連接目標server的IP地址。
安全選項:VPN類型如下圖所示
網絡選項:在ipv4屬性中配置如下:
高級選項IP設置中取消了“在遠程網絡上使用默認網關”然后鏈接時報錯。因為不了解VPN服務器的配置而且其他win7的系統能鏈接VPN,所以只能盡可能排查win10自己系統的問題。注意win10家庭版是沒有本地安全組策略的,所以要么加域推送組策略否則沒有太好的辦法做策略。
在這里我們想查看服務是否啟動,在這里查看到服務是沒有開啟的,這樣我們手動觸發一下。
但是發現還是不行。這個時候為什么不問問神奇的MSDN呢?(博主還是推薦遇windows的問題多去MSDN查詢結果)。
這里我在MSDN中找到了一個答案,在下面附上鏈接:
文中說明如果發生了這種情況大多數的原因發生在Windows客戶端計算機使用的加密級別與VPN服務器所使用的加密級別不匹配。例如,客戶端計算機使用40位或56位RC4加密算法,并且VPN服務器僅支持128位RC4加密算法,將出現此問題。
針對客戶端給出的解決辦法就是添加了一條注冊表記錄。
添加客戶端計算機上使用的 注冊表項來更改加密設置路由和遠程訪問服務。
1. 創建 注冊表項,并將其設置為 1 的值。
1. 單擊開始,單擊運行,鍵入regedit,然后單擊確定
2. 在注冊表編輯器中,找到并單擊以下注冊表子項︰
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters
3. 在編輯菜單上,指向新建,然后單擊DWORD 值。

4. 鍵入AllowL2TPWeakCrypto,然后按 enter 鍵。
5. 在編輯菜單上,單擊修改。
6. 在數值數據框中,鍵入1,然后單擊確定。
7. 在文件菜單上,單擊退出以退出注冊表編輯器。
2. 重新啟動"路由和遠程訪問"服務和遠程訪問連接管理器服務。若要執行此操作,請按照下列步驟操作:
1. 單擊開始,右鍵單擊我的電腦,然后單擊管理。
2. 展開服務和應用程序,然后單擊服務。
3. 路由和遠程訪問,請用鼠標右鍵單擊,然后單擊停止。
4. 遠程訪問連接管理器中,用鼠標右鍵單擊,然后單擊停止。
5. 遠程訪問連接管理器中,用鼠標右鍵單擊,然后單擊開始。
6. 路由和遠程訪問,請用鼠標右鍵單擊,然后單擊開始。
請注意出于安全角度考慮,請在做修改注冊表的1操作是將注冊表先導出備份一個。以下是我未作修改注冊表的原值:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\Parameters]
"AllowL2TPWeakCrypto"=dword:00000000
"AllowPPTPWeakCrypto"=dword:00000000
"KeepRasConnections"=dword:00000000
"Medias"=hex(7):72,00,61,00,73,00,74,00,61,00,70,00,69,00,00,00,00,00
"ServiceDll"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,\

00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,\
72,00,61,00,73,00,6d,00,61,00,6e,00,73,00,2e,00,64,00,6c,00,6c,00,00,00
"ServiceDllUnloadOnStop"=dword:00000001
"MiniportsInstalled"=dword:0000ffff
(ps: AllowL2TPWeakCrypto )
或者更改參照給的另外一個方法:
方法 2︰ 更改在 VPN 客戶端計算機上的加密設置
更改加密在客戶端計算機的 VPN 連接中要使用的設置最大強度加密。執行此操作后,三重數據加密標準 (3DES) 加密用于建立 VPN 連接。若要更改客戶端計算機的 VPN 連接的加密設置,請執行以下步驟︰
1. 單擊開始,單擊運行,請在打開框中,鍵入ncpa.cpl ,然后單擊確定。
2. VPN 連接中,用鼠標右鍵單擊,然后單擊屬性。
3. 單擊安全選項卡,單擊高級 (自定義設置),然后單擊設置。
4. 在數據加密框中,單擊最大強度的加密 (如果服務器拒絕將斷開連接),然后單擊確定兩次。
重啟之后可以再次嘗試撥入VPN。一般情況下因該能夠解決了,但是博主臉黑還是不行,那沒辦了,繼續改注冊表。
1.定位注冊表\System\\\Rasman\
2. 在“編輯”菜單上,單擊“新建”->“DWORD值”
3. 在“名稱”框中,鍵入“”
4. 在“數值數據”框中,鍵入“1”,然后單擊“確定”
(ps: “”=dword: ;使用RAS的L2TP功能[1=關閉])
這里附帶貼上兩個微軟msdn使用netdiag和工具排L2TP/IPSec的排錯方法
*請認真填寫需求信息,我們會在24小時內與您取得聯系。