RustDesk,工具如其名,基於高效的 Rust 語言構建的開源遠程桌面工具。
優勢:
- 輕量:不論服務端還是客戶端、不論哪個平台,軟體小巧、功能完備。
- 全平台支持:支持 Android、Linux、Windows 任意雙向控制,iOS 單向控制。
- 安全可控:軟體開源,服務端自建,通信加密。
- 帶寬高效:僅需 2-3M 即可流暢 1080P,支持 TCP 打洞端對端 P2P 連接。
RustDesk 官網:https://rustdesk.com/zh/
GitHub:https://github.com/rustdesk/rustdesk
搭建教程#
首先我們需要準備一台擁有公網 IP 的伺服器,伺服器這裡我推薦伍六七雲:https://www.vps567.com 香港 2H2G5M 伺服器 20 / 月,還有高防 CDN 加速只需 18 / 月起。
然後安裝好 Docker 環境:Docker 一鍵安裝腳本
並且放行端口:21115-21119
如果你不想使用默認端口,可以在安裝過程中修改映射的端口。
Docker 拉取#
sudo docker image pull rustdesk/rustdesk-server
sudo docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbs
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbr
Docker Compose 拉取#
networks:
rustdesk-net:
external: false
services:
hbbs:
container_name: hbbs
ports:
- 21115:21115
- <hbbs_port>:21116 # 自定義 hbbs 映射端口
- <hbbs_port>:21116/udp # 自定義 hbbs 映射端口
image: rustdesk/rustdesk-server
command: hbbs
volumes:
- <mount_path>:/root # 自定義掛載目錄
networks:
- rustdesk-net
depends_on:
- hbbr
restart: unless-stopped
deploy:
resources:
limits:
memory: 64M
hbbr:
container_name: hbbr
ports:
- <hbbr_port>:21117 # 自定義 hbbr 映射端口
image: rustdesk/rustdesk-server
command: hbbr
volumes:
- <mount_path>:/root # 自定義掛載目錄
networks:
- rustdesk-net
restart: unless-stopped
deploy:
resources:
limits:
memory: 64M
注意:–net=host
僅適用於 Linux,它讓 hbbs/hbbr
可以看到對方真實的 ip, 而不是固定的容器ip (172.17.0.1)
。 如果–net=host
運行正常,-p 選項就不起作用了,可以去掉。
如果您在非 Linux 系統上遇到無法連接的問題,請去掉 –net=host。
然後我們需要在主控端和被控端的設置中,在 ID / 中繼伺服器輸入我們的伺服器 IP
這裡還有一個 Key 用於加密連接,hbbs 在第一次運行時,會自動產生一對加密私鑰和公鑰(分別位於運行目錄下的 id_ed25519 和 id_ed25519.pub 文件中),其主要用途是為了通訊加密。
cat ./id_ed25519.pub
如果要更改 key,請刪除 id_ed25519 和 id_ed25519.pub 文件並重新啟動 hbbs/hbbr,hbbs 將會產生新的密鑰對。