rustdesk
约 3 分钟阅读
为什么选择 RustDesk?
- 免费
- 无任何限制,链接数量,用户等
- 功能完善 - 远程桌面、文件传输、端口转发、摄像头、可选的用户管理
- 支持所有的平台 - Windows、macOS、移动端
- 可以自己部署的中继服务器
- rustdesk/rustdeskGitHubrustdesk/rustdesk为什么选择 RustDesk? · 免费 · 无任何限制,链接数量,用户等 · 功能完善 - 远程桌面、文件传输、端口转发、摄像头、可选的用户管理 · 支持所有的平台 - Windows、macOS、移动端 · 可以自己部署的中继服务器 · rustdesk/rustdesk笔记:rustdesk
- AGPLv3, Rust
- rustdesk/rustdesk#3565GitHub Issuerustdesk/rustdesk#3565
- sciter -> flutter_desktop
- 21115: TCP
- Relay, Session
- hbbs
- 21116: TCP
- hbbr
- 文件、流量中继
- rendezvous server
| port | protocol | service |
|---|---|---|
| 21114 | TCP | Web Console(RustDesk Server Pro) |
| 21115 | TCP | NAT 类型检测(hbbs) |
| 21116 | TCP/UDP | ID 注册、心跳、打洞与连接协调(hbbs) |
| 21117 | TCP | 中继服务(hbbr) |
| 21118 | TCP | WebSocket ID/信令服务(hbbs) |
| 21119 | TCP | WebSocket 中继服务(hbbr) |
Awesome
- kingmo888/rustdesk-api-serverGitHubkingmo888/rustdesk-api-server
- Python
- 基于Django的RustDesk Api&Web Server,除了支持api所有功能,还支持web注册、管理、展示等。
- v5star/rustdesk-apiGitHubv5star/rustdesk-api
- PHP
- lejianwen/rustdesk-apiGitHublejianwen/rustdesk-api
- MIT, Go
- Api Server, web admin ,web client, web client v2
- API Server
- xiaoyi510/rustdesk-api-serverGitHubxiaoyi510/rustdesk-api-server
- Go 语言实现,可以参考 API
- lantongxue/rustdesk-api-server-proGitHublantongxue/rustdesk-api-server-pro
- AGPLv3, TS, Vue, Go
- lantongxue/rustdesk-api-serverGitHublantongxue/rustdesk-api-server
- PHP
- xiaoyi510/rustdesk-api-serverGitHubxiaoyi510/rustdesk-api-server
- danbai225/go-rustdesk-serverGitHubdanbai225/go-rustdesk-server
- Golang 实现的 Rustdesk Server
Client
- ID Server
- Relay Server
- API Server
- Key
- hbbs - 中继
- hbbr - 反向
- ~/Library/Preferences/com.carriez.RustDesk
- RustDesk.toml
- RustDesk2.toml
- RustDesk_lan_peers.toml
- RustDesk_local.toml
- peers.toml
peers/*.toml
rendezvous_server = 'hbbs.example.com:21116'
nat_type = 1
serial = 0
[options]
local-ip-addr = '192.168.1.2'
custom-rendezvous-server = 'hbbs.example.com'
key = 'HBBS-KEY'
relay-server = 'hbbs.example.com'
audio-input = 'MacBook Pro Microphone'Conf
- ~/Library/Preferences/com.carriez.RustDesk/RustDesk.toml
- ~/Library/Preferences/com.carriez.RustDesk/RustDesk2.toml
- %AppData%\RustDesk\config\RustDesk.toml
- ~/.config/rustdesk/RustDesk.toml
# macOS key
ioreg -rd1 -c IOPlatformExpertDevice | grep IOPlatformUUID- crypto_secretbox_open_easy
CLI
- /Applications/RustDesk.app/Contents/MacOS/RustDesk
| 用法 | 作用 | 备注 |
|---|---|---|
--connect <ID> | 普通远程桌面控制 | |
--file-transfer <ID> | 直接进入文件传输 | 不打开普通桌面控制界面 |
--view-camera <ID> | 查看远端摄像头 | 当前源码已加入 |
--port-forward <ID> | 打开 TCP Port Forward / Tunnel 模式 | CLI parser 本身只直接读取 ID,具体端口通常再由 UI/session 配置 |
--terminal <ID> | 打开远程 Terminal 会话 | 当前新版源码已有 |
--rdp <ID> | 以 RDP 模式连接 | RustDesk 的 RDP 本质基于 TCP tunnel/port forwarding,并不是自己实现一套 RDP 协议 |
--play <arg> | play 类型的内部/deep-link 会话入口 | 官方文档没有把它作为稳定公开 CLI 完整说明,不建议依赖其参数细节 |
# macOS
alias rustdesk='/Applications/RustDesk.app/Contents/MacOS/RustDesk'
rustdesk --connect 123456789
rustdesk --connect '[email protected]:21116?key=YOUR_KEY'
# macOS Open URL
open 'rustdesk://connect/123?password=xxx&relay=true'rustdesk://connect/123?password=xxx&relay=true
# /r force relay
123456789/r@public
rustdesk://terminal/<ID>- rendezvous Server 21116
- 附加参数可以作为 ID query
- --password PASS
- --relay
- --switch_uuid UUID - 内部会话切换参数
- 如果只有 --password,那么是修改本地的 Password
管理
- --get-id
- --set-id
- --password PASS - 设置密码
- --set-unlock-pin PIN
- --config CONFIG
- --import-config RustDesk.toml
- --option KEY VALUE
- --server
- --tray
- --cm - Connection Manager
- --whiteboard
- --update DMG
Service
--service
--install-service
--uninstall-service
--check-hwcodec-config
--terminal-helper
--removeTerminal
- rust portable_pty
- Windows pwsh.exe, Windows PowerShell, cmd.exe
- 持久化 terminal-persistent=Y
# Guest
rustdesk --option enable-terminal Y
# Host
rustdesk --terminal 123456789Web
- 官方
- rustdesk.com/web
Web Client V1- Web Client V2
- marcpope/cortendeskGitHubmarcpope/cortendesk
- AGPL-3.0-only, PHP, TypeScript, Laravel, Livewire
- RustDesk OSS 的自托管管理控制台,提供设备、用户、地址簿管理及浏览器远程桌面客户端。
- RustDesk 客户端的 API Server 指向控制台 URL;项目独立于 RustDesk 官方。
- 内置管理主题单独授权,不在 AGPL 范围内,见仓库 NOTICE。
- UNITRONIX/BetterDeskGitHubUNITRONIX/BetterDesk
- JS Web Client + Go
- Server
- Console
- Web Client
- API
- Agent
- MonsieurBiche/rustdesk-web-clientGitHubMonsieurBiche/rustdesk-web-client
- Web v1 Fork
- docker-rustdesk-web-client
rd.example.com:443
/ws/id -> hbbs:21118
/ws/relay -> hbbr:21119FAQ
Unsupported Display server, X11 or Wayland expected
- 使用 flatpak 时出现
- rustdesk/rustdesk#670GitHub Issuerustdesk/rustdesk#670
- 新版本支持了 Wayland
- 不支持情况
/etc/gdm3/custom.conf- WaylandEnable=false
- 不支持 xwayland
- rustdesk/rustdesk#5949GitHub Issuerustdesk/rustdesk#5949
# systemd?
apk add elogind
loginctlNo Display
- 当前没有显示器
- Windows 使用 MSI 安装
- 使用管理员,允许无用户的情况下运行
- 其他解决方案
- Headless Ghost HDMI 转接头
- 虚拟显示驱动
关联信息
反向链接、本文链接的其他页面和外部资料。
反向链接
- Software Awesome笔记 · rustdesk
Remote Desktop · rustdesk · AGPLv3, Rust · Client & Server · 支持 Windows, Linux, macOS, iOS, Android, Web · TeamViewer 替代品
参考资料
GitHub15 条
- danbai225/go-rustdesk-servergithub.com/danbai225/go-rustdesk-server
- flatpak/xdg-desktop-portalgithub.com/flatpak/xdg-desktop-portal
- kingmo888/rustdesk-api-servergithub.com/kingmo888/rustdesk-api-server
- lantongxue/rustdesk-api-servergithub.com/lantongxue/rustdesk-api-server
- lantongxue/rustdesk-api-server-progithub.com/lantongxue/rustdesk-api-server-pro
- lejianwen/rustdesk-apigithub.com/lejianwen/rustdesk-api
- marcpope/cortendeskgithub.com/marcpope/cortendesk
- MonsieurBiche/rustdesk-web-clientgithub.com/MonsieurBiche/rustdesk-web-client
- rustdesk/rustdeskgithub.com/rustdesk/rustdesk
- rustdesk/rustdesk#3565github.com/rustdesk/rustdesk/issues/3565
- rustdesk/rustdesk#5949github.com/rustdesk/rustdesk/issues/5949
- rustdesk/rustdesk#670github.com/rustdesk/rustdesk/issues/670
- UNITRONIX/BetterDeskgithub.com/UNITRONIX/BetterDesk
- v5star/rustdesk-apigithub.com/v5star/rustdesk-api
- xiaoyi510/rustdesk-api-servergithub.com/xiaoyi510/rustdesk-api-server
其他外链3 条
- flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.RemoteDesktop.htmlflatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.RemoteDesktop.html
- rustdesk.com/docs/en/self-host/rustdesk-server-pro/faqrustdesk.com/docs/en/self-host/rustdesk-server-pro/faq
- rustdesk.com/webrustdesk.com/web