在Windows上面,我們都用過系統自帶的遠程桌面連接或者TeamViewer這樣的工具,可以方便的讓我們用圖形化方式遠程操作其他計算機。但是在Linux上,我們一般都是使用SSH來操作終端。那么在Linux上有沒有一些工具可以讓我們像Windows那樣用圖形化的方式來訪問桌面呢?答案當然是有的,這就是這篇文章要介紹的。
遠程桌面連接主要使用兩種協議,第一種就是微軟在Windows上的RDP(Remote Desktop Protocol)協議,第二種就是VNC(Virtual Network Console)協議。從使用效果上來說,VNC協議更加優秀,所以如果有條件的話我還是推薦大家使用使用VNC協議的工具。下面將會逐一介紹。
RDP協議
rdesktop
首先要介紹的一個工具是Rdesktop,它實現了RDP協議,允許我們在Linux系統上遠程登錄Windows系統。以深度系統為例,安裝Rdesktop使用下面的命令。
sudo apt install rdesktop
安裝完成之后,使用類似下面的命令來訪問遠程Windows系統。
rdesktop -g 1440x900 -P -z -x l -r sound:off -u windowsuser 192.168.31.100:3389
登錄之后界面類似下面這樣。當然對應的Windows系統別忘了開啟允許遠程連接到本計算機,否則用什么客戶端也是無法連接的。如果連接有問題,在Windows上取消“僅允許運行使用網絡級別身份驗證的遠程桌面的計算機連接”選項。
下面簡單解釋一下這些參數意義。
參數 | 意義 |
---|---|
-g | 后面代表要使用的分辨率 |
-P | 啟用位圖緩存 |
-z | 啟用RDP數據流壓縮 |
-x l | 使用局域網級別的圖像質量 |
-r sound:off | 關閉聲音 |
-u windowuser | 指定要使用的用戶 |
IP地址 | 要連接的計算機的IP地址和端口號 |
特別提一下,如果希望使用全屏方式來遠程登錄,可以在-g參數那里使用100%
。如果需要更詳細的使用說明,請用man rdekstop
查詢自帶的幫助頁面。
這里還是推薦ArchWiki這個網站,雖然它是ArchLinux的百科網站,但是很多知識是完全可以通用到其他Linux系統上的。我這里也參考了ArchWiki的相關內容wiki.archlinux.org/index.php/Rdesktop。
grdesktop
當然,命令行方式使用有些時候還是比較麻煩的。對于Rdesktop來說自然也有對應的圖形化前端工具,grdesktop就是一個不錯的工具,它是Gnome桌面的遠程登錄前端。我們可以使用下面的命令來安裝。
sudo apt install grdesktop
打開是一個類似這樣的界面,輸入相關信息然后連接即可。
連接之后類似下圖。
krdc
krdc是KDE桌面的rdp和vnc連接工具。我們使用下面的命令安裝krdc.
sudo apt install krdc
打開之后如圖所示。使用時需要先輸入要連接的計算機地址,然后按回車在彈出的對話框中進行進一步設置。
連接成功之后主窗口右半部分應該會顯示遠程桌面的內容,但是不知道什么情況我的krdc始終沒辦法連接成功,所以沒辦法截圖了。
xrdp
前面的rdesktop工具可以讓我們在Linux系統上遠程桌面登錄Windows系統,如果反過來,希望在Windows上用RDP協議遠程登錄到Linux系統,就比較麻煩了。這就需要xrdp來幫助我們了。它是一個RDP服務端,可以讓我們用遠程桌面方式登錄到Linux系統。
首先要安裝xrdp。
sudo apt install xrdp
然后啟動xrdp服務。
sudo systemctl enable xrdp
sudo systemctl start xrdp
現在你應該可以使用Windows自帶的遠程桌面工具來連接到Linux系統了。
輸入用戶名和密碼之后稍等片刻,應該就會顯示出Linux的桌面了。
好了,以上就是關于使用RDP協議的一些工具的介紹。從截圖上,我們可以看到,RDP協議的一個缺點,就是如果平臺不同的話,顯示效果其實是很差的。我這還是局域網的兩臺電腦,假如間隔距離更長,效果會更差。RDP協議還是在Windows間使用比較適合。跨平臺的話,還是下面介紹的VNC協議更加強大。
VNC
tigervnc和x11vnc
先來說說Linux上的VNC服務端,比較常用的就是tigervnc和x11vnc。x11vnc可以讓遠程訪問者控制本地的實際顯示器,而tigervnc既可以遠程控制實際顯示器,還可以控制平行獨立于當前物理顯示器的虛擬顯示器。不過由于在我的筆記本上測試tigervnc沒有成功,所以這里我只介紹一下x11vnc。如果想要了解tigervnc的詳細信息,可以參考一下ArchWiki TigerVNC。
首先用下面的命令安裝x11vnc。
sudo apt install x11vnc
安裝好之后就可以啟動了,啟動也很簡單,-passwd參數指定密碼,-forever參數指定這個會話始終開啟。
x11vnc -passwd PASSWORD -display :0 -forever
開啟之后就可以使用客戶端進行連接了,默認端口號是5900,會在終端中顯示出來。
Linux上的VNC客戶端
Linux上的VNC客戶端軟件選擇就比較豐富了,各大Linux桌面系統都推出了自己的VNC客戶端。我們可以根據自己需要來使用。
首先介紹一下Vinagre,這是Gnome桌面環境的遠程桌面客戶端,同時支持SSH、RDP和VNC協議。使用下面的命令安裝Vinagre。
sudo apt install vinagre
軟件打開的界面如圖所示。
這是連接效果圖,這是用VNC協議連接到我的Windows系統。
然后是KRDC,這是前面介紹的KDE桌面的遠程連接軟件,它同時支持RDP和VNC協議。這是它使用VNC的連接效果圖。
最后是Remmina,它也同時支持RDP和VNC協議。我們可以用下面的命令安裝它。
sudo apt install remmina
下面是它的連接效果圖。
Windows上的VNC軟件
前面介紹了Linux上一些支持VNC協議的軟件。在Windows上同樣有一些支持VNC協議的軟件,常用的有RealVNC(收費)、UltraVNC(免費)和TightVNC(免費),它們同時既是服務端又是客戶端。這三個軟件我都試了一下,感覺免費的TightVNC效果不錯。收費的RealVNC和TeamViewer差不多,主要功能都在云端協作這方面,如果只是單純的遠程連接,TightVNC完全夠用了,這是TightVNC的下載鏈接。
下面是幾張RealVNC的截圖,有興趣的同學可以注冊個賬戶試用30天。
然后來介紹一下TightVNC。安裝好之后開始菜單會多出幾個菜單項。首先點擊Start TightVNC Service啟動服務,然后系統托盤會多出一個圖標,這就是TightVNC的圖標。然后雙擊它打開設置。最主要的就是端口號和密碼了,其實端口號也不需要設置,主要就是密碼。設置完成后點擊OK即可。
如果需要遠程登錄其他系統,使用TightVNC Viewer。打開之后如圖所示,按照IP地址::端口號
的格式輸入地址,然后輸入密碼即可。主要這里是雙冒號,不是單冒號。
連接成功之后如圖所示。
好了,以上就是Linux和Windows上RDP和VNC的一些軟件的介紹和使用,希望對大家有所幫助。