VNC可以對(duì)數(shù)據(jù)進(jìn)行緊縮,使得傳輸?shù)臄?shù)據(jù)量比直接用SSH加密的小,可是錯(cuò)誤謬誤有一到兩次機(jī)緣讓統(tǒng)一網(wǎng)段的計(jì)較機(jī)用sniffer***到用戶名和暗碼。認(rèn)證以后的數(shù)據(jù)可以進(jìn)行加密傳輸,所以利用過程中假定顛末建設(shè),則是安然的,不然傳輸內(nèi)容不克不及包管完全保密。需要時(shí)可以經(jīng)由過程SSH進(jìn)行加密端口映照來包管傳輸用戶名和暗碼的時(shí)辰也是加密的,這一把持占用的額外帶寬是極少的。
至于SSH呵護(hù)VNC的安然,需要利用SSH的端口轉(zhuǎn)發(fā)功能。一般在客戶端利用的是Linux的時(shí)辰,可以先用SSH成立鏈接,語法上該當(dāng)添加“-L 本地端口:本地地址:長(zhǎng)途端口 長(zhǎng)途地址”這一附加參數(shù),好比說本地是X.Y.Z.W,辦事器是A.B.C.D,要轉(zhuǎn)發(fā)的端口本地的是5901,長(zhǎng)途的也是5901,那么號(hào)令該當(dāng)是:ssh -L 5901:X.Y.Z.W:5901 A.B.C.D
其他的參數(shù)大都可以同時(shí)利用。履行終了后就已成立了辦事器5901端口和本地5901端口的加密地道。假定要鏈接的辦事器上運(yùn)行的VNC桌面號(hào)是2,則繼續(xù)履行以下號(hào)令:vncviewer A.B.C.D:2
如許打開的VNC窗口所稀有據(jù)都顛末端SSH的加密。
因?yàn)橐话阒卫憝h(huán)境下多采取SSH的Windows客戶端,也就是SSH Secure Shell,所以下面介紹若何建設(shè)Windows下的SSH Secure Shell來共同VNC實(shí)現(xiàn)安然的Linux長(zhǎng)途桌面治理。
起首,在SSH Secure Shell的主界面上選擇Settings下的Tunneling,如圖所示。
然后,選擇添加一個(gè)建設(shè),如圖所示,此中Listen是本機(jī)端口,Destination是長(zhǎng)途地址和端口,Display可以設(shè)定本身的描述。

為SSH Secure Shell設(shè)定Tunneling

Tunneling設(shè)定的具體選項(xiàng)
最后,再運(yùn)行vncviewer來鏈接便可。出格值得寄望的是:此處Server的地址不是需要連接的VNC Server的地址,而是前面設(shè)定的本機(jī)的SSH偵聽端口的地址,因?yàn)樗型ㄍ鵙NC Server的流量都需要先顛末本機(jī)的SSH進(jìn)行轉(zhuǎn)發(fā),如圖所示,一般設(shè)定為localhost加端口便可,該端口就是在圖中設(shè)定的SSH的偵聽端口。

利用Windows中的VNC Viewer連接Linux端的VNC Server
下圖清晰地給出了利用Wireshark對(duì)上述通信的流量進(jìn)行抓包的成果,可以看到,從客戶端常常辦事器端的VNC流量,均采取SSH和談進(jìn)行了加密傳輸,是以針對(duì)傳統(tǒng)的未顛末SSH加密措置的VNC通信來講要安然良多,可以或許有效地避免***和中間人報(bào)復(fù)打擊:

針對(duì)上述通信流程的抓包成果顯示