新聞中心
VNC可以對數(shù)據(jù)進行壓縮,使得傳輸?shù)臄?shù)據(jù)量比直接用SSH加密的小,但是缺點有一到兩次機會讓同一網(wǎng)段的計算機用sniffer竊聽到用戶名和密碼。認證之后的數(shù)據(jù)可以進行加密傳輸,所以使用過程中如果經(jīng)過配置,則是安全的,否則傳輸內(nèi)容不能保證完全保密。必要時可以通過SSH進行加密端口映射來保證傳輸用戶名和密碼的時候也是加密的,這一操作占用的額外帶寬是極少的。

至于SSH保護VNC的安全,需要使用SSH的端口轉(zhuǎn)發(fā)功能。一般在客戶端使用的是Linux的時候,可以先用SSH建立鏈接,語法上應(yīng)當(dāng)添加“-L 本地端口:本地地址:遠程端口 遠程地址”這一附加參數(shù),比如說本地是X.Y.Z.W,服務(wù)器是A.B.C.D,要轉(zhuǎn)發(fā)的端口本地的是5901,遠程的也是5901,那么命令應(yīng)當(dāng)是:ssh -L 5901:X.Y.Z.W:5901 A.B.C.D
其他的參數(shù)多數(shù)可以同時使用。執(zhí)行完畢后就已經(jīng)創(chuàng)建了服務(wù)器5901端口和本地5901端口的加密隧道。假設(shè)要鏈接的服務(wù)器上運行的VNC桌面號是2,則繼續(xù)執(zhí)行如下命令:vncviewer A.B.C.D:2
這樣打開的VNC窗口所有數(shù)據(jù)都經(jīng)過了SSH的加密。
由于一般管理情況下多采用SSH的Windows客戶端,也就是SSH Secure Shell,所以下面介紹如何配置Windows下的SSH Secure Shell來配合VNC實現(xiàn)安全的Linux遠程桌面管理。
首先,在SSH Secure Shell的主界面上選擇Settings下的Tunneling,如圖所示。
然后,選擇添加一個配置,如圖所示,其中Listen是本機端口,Destination是遠程地址和端口,Display可以設(shè)定自己的描述。
為SSH Secure Shell設(shè)定Tunneling
Tunneling設(shè)定的具體選項
最后,再運行vncviewer來鏈接即可。特別值得注意的是:此處Server的地址不是需要連接的VNC Server的地址,而是前面設(shè)定的本機的SSH偵聽端口的地址,因為所有通往VNC Server的流量都需要先經(jīng)過本機的SSH進行轉(zhuǎn)發(fā),如圖所示,一般設(shè)定為localhost加端口即可,該端口就是在圖中設(shè)定的SSH的偵聽端口。
使用Windows中的VNC Viewer連接Linux端的VNC Server
下圖清晰地給出了使用Wireshark對上述通信的流量進行抓包的結(jié)果,可以看到,從客戶端去往服務(wù)器端的VNC流量,均采用SSH協(xié)議進行了加密傳輸,因此針對傳統(tǒng)的未經(jīng)過SSH加密處理的VNC通信來說要安全很多,能夠有效地避免竊聽和中間人攻擊:
針對上述通信流程的抓包結(jié)果顯示
當(dāng)前標題:使用SSH+VNC實現(xiàn)安全的Linux遠程桌面管理
文章URL:http://m.fisionsoft.com.cn/article/cooegcg.html


咨詢
建站咨詢
