RustDesk API本項目使用 Go 實現了 RustDesk 的 API,并包含了 Web Admin 和 Web 客戶端。RustDesk是一個遠程桌面軟件,提供了自托管的解決方案,官方API是收費的,這次咱們用到的是Github開源的第三方API源碼。
?特性
-
PC端API
-
支持
github
,google
和OIDC
登錄, -
支持
web后臺
授權登錄 -
支持
LDAP
(AD和OpenLDAP已測試), 如果API Server配置了LDAP -
個人版API
-
登錄
-
地址簿
-
群組
-
授權登錄
-
i18n
-
-
Web Admin
-
用戶管理
-
設備管理
-
地址簿管理
-
標簽管理
-
群組管理
-
Oauth 管理
-
配置LDAP, 配置文件或者環境變量
-
登錄日志
-
鏈接日志
-
文件傳輸日志
-
快速使用web client
-
i18n
-
通過 web client 分享給游客
-
server控制
-
-
Web Client
-
自動獲取API server
-
自動獲取ID服務器和KEY
-
自動獲取地址簿
-
游客通過臨時分享鏈接直接遠程到設備
-
v2 Preview
-
-
CLI
- 重置管理員密碼
Docker部署
飛牛 Compose方式部署代碼
1??我們需要先創建一個路徑,這個路徑儲存我們的docker-Compose.yml的文件和配置文件
2??打開Docker,Compose新增項目->輸入項目名稱->設置路徑->上傳或者創建docker-
compose.yml把下面代碼復制進去,點擊完成直至構建完成
🐳Docker compose
networks:rustdesk-net:external: falseservices:rustdesk:ports:- 21114:21114- 21115:21115- 21116:21116- 21116:21116/udp- 21117:21117- 21118:21118- 21119:21119image: lejianwen/rustdesk-server-s6:latestenvironment:- RELAY=反代21117的域名:端口- ENCRYPTED_ONLY=1- MUST_LOGIN=N # 是否必須登錄才能遠程- TZ=Asia/Shanghai- RUSTDESK_API_RUSTDESK_ID_SERVER=反代21116的域名:端口- RUSTDESK_API_RUSTDESK_RELAY_SERVER=反代21117的域名:端口- RUSTDESK_API_RUSTDESK_API_SERVER=反代21114的域名:端口- RUSTDESK_API_RUSTDESK_WS_HOST=反代21114的域名:端口- RUSTDESK_API_KEY_FILE=/data/id_ed25519.pub- RUSTDESK_API_JWT_KEY= # jwt 為空不啟用- RUSTDESK_API_JWT_EXPIRE_DURATION= # jwt 為空不啟用volumes:- ./data/rustdesk/server:/data- ./data/rustdesk/api:/app/data #將數據庫掛載networks:- rustdesk-netrestart: unless-stopped
注意: 一定要仔細看注釋,看注釋,修改對應的域名,先跳到文章后面( 外網訪問
)看看怎么使用lucky反代再回來部署,不然無法使用web網頁端遠程。
給大家看看我配置好的截圖
API后臺使用
http://IP:21114
后臺管理
以上地址訪問API后臺, 可以進行添加用戶,設備管理等操作!
-
默認管理員用戶名為:admin
-
通過容器日志獲取管理員密碼,自己查看日志往下翻,找到如下圖的內容就是密碼
登錄后可以修改一下用戶名和密碼
2. 客戶端使用
配置21114端口的API后,客戶端登錄即可同步登錄賬號的信息。
外網訪問
外網訪問需要有公網,我家是ipv6,所以需要配合域名使用,通過lucky進行DDNS然后再反向代理,通過域名配置客戶端,并且進行訪問。
如果不使用網頁端遠程只反代21114、21116、21117端口就行
如果需要web網頁端遠程就需要反代21118端口和21119端口,注意,21118和21119端口反代的前端域名要與21114使用的一樣,并且反代的前端地址一定要帶詳細地址,必須要按照我說的來,不然網頁遠程不了,會報錯,具體設置如下
21118端口:(前端:21114地址/ws/id) ?
21119端口 : (前端:21114地址/ws/relay )
看圖已經很明了了,如果還不懂,就私信問我吧,這里弄好了再返回到上面配置compose部署代碼,部署就行了。
配置客戶端
配置客戶端之前先去容器查看日志獲取key
下載安裝客戶端
去官網下載對應設備的客戶端,我以Windows為例
無法訪問github的朋友公眾號回復: 遠程 獲取Windows版網盤下載地址,我會持續更新
# 下載地址 https://github.com/rustdesk/rustdesk/releases
控制端和受控端都需要安裝RustDesk,雙擊下載的exe文件打開就是這個界面,需要點擊左邊的安裝才能完全安裝完成
配置ID/中繼服務器
1??點擊右上角設置
2??選擇網絡,點擊解鎖網絡設置
3??控制端和受控端都需要設置ID/中繼服務器
-
ID服務器: 填入21116端口反代的域名不加端口
-
中繼服務器 : 填入21117端口 反代的域名 不加端口
-
API服務器 : 填入21114端口 反代的域名:端口
-
key : 前面日志里面獲取的key
? 前面兩個開頭不要加https或http也不要加端口,切記千萬不要加端口,否則連接不上,API需要加https或http
💥再次重申ipv6通過lucky反向代理的朋友,ID、中繼服務器域名前面不要加https/http,域名后面也不要加端口,API服務器需要加https/http和端口
,參考 如下圖
使用方法
使用方法和向日葵、ToDesk一樣,知道ID和密碼就能遠程連接,也可以通過登錄賬號后同步自己的設備,設置自定義密碼直接連接
登錄成功
底部出現“就緒”才算成功,如果提示(提示未就緒,請檢查網絡連接)請檢查前面第三步重申的內容
如果登錄賬號后看不到設備,點擊設置->常規,停止服務,再開啟服務就行了
網頁端
網頁端遠程訪問,最直接的就是訪問下面的地址,點擊 右上角三個點點,網絡配置一下中繼服務器,和pc端方法一樣,然后登錄賬號或者直接輸入對方的ID遠程
21114端口反向代理域名/webclient2/
或者直接訪問21114端口反向代理的域名,登錄到后臺,點擊我的設備-> Web Clien 快速訪問
APP客戶端
APP配置如下
總結
這篇文章部署教程算是詳細的了,沒有缺斤少兩,教程其實很簡單,只要你認真看完,百分百能實現web管理、web遠程,不會有任何問題,我已經這樣使用很久了,使用op軟路由撥號的,總是會有問題通訊不上特別是有V4公網的,直接使用DDNS吧,別反代,我是小米路由器,開啟了DMZ,通不上的可以試試看。