內(nèi)容轉(zhuǎn)載自我的博客
1. ubuntu共享桌面
在ubuntu桌面發(fā)行版打開屏幕共享功能,步驟如下:
設(shè)置-->共享-->屏幕共享
打開總開關(guān)
允許連接控制屏幕
需要密碼(自己設(shè)置密碼,最多8位)
網(wǎng)絡(luò)打開
設(shè)置-->共享-->遠(yuǎn)程登錄
打開總開關(guān)
查看當(dāng)前用戶占用的共享桌面端口lsof -i:5900
zfb@my-Server:~/build$ lsof -i:5900
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
vino-serv 4308 zfb 11u IPv6 12350285 0t0 TCP *:5900 (LISTEN)
vino-serv 4308 zfb 12u IPv4 12350286 0t0 TCP *:5900 (LISTEN)
本用戶只能看到自己占用的端口,一般從5900開始,一個(gè)用戶占用一個(gè),只有開啟共享的用戶才占用。例如,用戶root1和用戶zfb都開啟了共享,則用戶zfb執(zhí)行命令lsof -i:5900、lsof -i:5901和lsof -i:5902,只有一個(gè)命令有返回結(jié)果,即自己占用的那個(gè)端口。但是,使用命令ss -lnt可以看到5900-5902端口都在被占用,只是無法看到具體進(jìn)程和用戶
2. 局域網(wǎng)登錄遠(yuǎn)程桌面
2.1 ubuntu使用remmina登錄遠(yuǎn)程桌面
打開軟件remmina,選擇VNC協(xié)議,輸入要連接的機(jī)器的地址192.168.10.11:5900(附帶端口),然后會提示輸入密碼,這里要輸入5900端口對應(yīng)的那個(gè)用戶的密碼(共享桌面密碼,不是用戶密碼),即可成功看到桌面。
2.2 在windows登錄遠(yuǎn)程桌面
下載vnc viewer并安裝,打開軟件,根據(jù)提示輸入ip地址192.168.10.11:5900,如果提示加密策略不一致。那么需要回到開啟桌面共享的ubuntu機(jī)器上,輸入以下命令關(guān)閉加密即可
gsettings set org.gnome.Vino require-encryption false
或者安裝dconf-editor工具進(jìn)行配置,輸入以下命令即可安裝:
sudo apt-get install dconf-editor
然后桌面搜索dconf-editor打開,依次展開org->gnome->desktop->remote-access,然后取消requlre-encryption的勾選即可
2.3 Android使用RD Client登錄遠(yuǎn)程桌面
下載安裝Microsoft Remote Desktop軟件,打開軟件添加Desktop,設(shè)置PC name為192.168.10.11:5900,Additional Options根據(jù)需要設(shè)置,然后保存,單擊即可連接
3. 外網(wǎng)登錄遠(yuǎn)程桌面
3.1 方法一
前提:
- 可以在外網(wǎng)使用ssh訪問內(nèi)網(wǎng)的ubuntu機(jī)器(比如使用frp進(jìn)行內(nèi)網(wǎng)穿透,公網(wǎng)云主機(jī)的ip為
56.78.12.34,這臺內(nèi)網(wǎng)服務(wù)器的frpc.ini文件中配置的遠(yuǎn)程ssh端口為7001) - 內(nèi)網(wǎng)ubuntu服務(wù)器已經(jīng)開啟桌面共享
使用如下代碼通過公網(wǎng)云主機(jī)ssh遠(yuǎn)程連接到內(nèi)網(wǎng)的ubuntu服務(wù)器,并且把服務(wù)器的5901端口映射到用戶本地的8080端口
ssh -p 7001 -NL localhost:8080:localhost:5900 zfb@56.78.12.34
此命令無回顯輸出,用戶直接使用支持vnc的軟件在本地打開即可,遠(yuǎn)程地址填寫為127.0.0.1:8080,根據(jù)提示輸入密碼(內(nèi)網(wǎng)ubuntu機(jī)器開啟桌面共享時(shí)設(shè)置的密碼)
特點(diǎn): 此方法可以使用zfb的用戶名和密碼查看其他用戶(例如root)的遠(yuǎn)程桌面,命令如下
ssh -p 7001 -NL localhost:8080:localhost:5901 zfb@56.78.12.34
相比上一條命令,只是修改為5901端口(root用戶的監(jiān)聽端口)
3.2 方法二
使用frp轉(zhuǎn)發(fā)此端口(遠(yuǎn)程桌面監(jiān)聽的端口,一般從5900開始),具體方法為:
- 若已配置過frp轉(zhuǎn)發(fā)ssh內(nèi)網(wǎng)穿透,則云主機(jī)的
frps.ini不需要任何變化 - 此方法的所有修改僅限于內(nèi)網(wǎng)機(jī)器的
frpc.ini文件,在文件中添加以下內(nèi)容:
[rdp]
type = tcp
local_ip = 127.0.0.1
# 假如只需要轉(zhuǎn)發(fā)占用5901端口的用戶的桌面
local_port = 5900
# 可以任意設(shè)置公網(wǎng)云主機(jī)的端口,不要與其他服務(wù)沖突即可
remote_port = 9901
- 公網(wǎng)云主機(jī)安全策略要放通9901端口
用戶直接使用支持vnc的軟件在本地打開即可,遠(yuǎn)程地址填寫為56.78.12.34:9901,根據(jù)提示輸入密碼(內(nèi)網(wǎng)ubuntu機(jī)器開啟桌面共享時(shí)設(shè)置的密碼)
注意: 2、3和4都只能在用戶登錄之后(顯示屏上的桌面為該用戶時(shí))才能顯示畫面,否則不行
4. 安裝xrdp實(shí)現(xiàn)多用戶登錄遠(yuǎn)程桌面
根據(jù)教程,下載壓縮包解壓得到腳本,(最好在root用戶)執(zhí)行即可。然后登出桌面環(huán)境,此時(shí)即可通過3389端口利用rdp協(xié)議登錄xorg桌面,多個(gè)用戶都可以登錄,且可以同時(shí)登錄,但是物理機(jī)器要保留在登錄界面
注意: 同一個(gè)用戶,本地和遠(yuǎn)程同時(shí)只能登錄一個(gè)
此步驟與前面不沖突,是一種新的方法(也許依賴第一步),VNC仍然需要登錄才可用
使用frp對本地3389端口進(jìn)行內(nèi)網(wǎng)穿透,只需要修改frp客戶端配置
[rdp]
type = tcp
local_ip = 127.0.0.1
# 假如只需要轉(zhuǎn)發(fā)占用3389端口的用戶的桌面
local_port = 3389
# 可以任意設(shè)置公網(wǎng)云主機(jī)的端口,不要與其他服務(wù)沖突即可
remote_port = 6689
在遠(yuǎn)程桌面遇到終端報(bào)錯(cuò)Transport endpoint is not connected,且看到桌面有thinclient_drives驅(qū)動器時(shí)的解決辦法
可以使用代碼sudo umount -f thinclient_drives來解決,但是此時(shí)共享剪切板和跨設(shè)備復(fù)制粘貼文件就不能用了
最好可以重新登陸一次,也許就正常了