使用RustDesk将任意设备作为电脑扩展屏

前情提要:本人专业大部分时间在机房,想把机房电脑当做自己电脑的副屏使用,但是接HDMI/DP线太麻烦,希望有方便快速的方法能通过公网实现屏幕串流
使用JiYuTrainer解除机房电脑的控制

RustDesk自建部署

RustDesk官方服务端不带API服务器和Web Console(需要Pro)、不支持WebSocket连接,还有诡异的客户端连接超时问题,使用lejianwen/rustdesk-server作为替代,这是一个功能齐全的fork分支
使用docker compose文件部署在自己的vps上即可

2025.10.20 补充:
实测在我的环境里第三方服务端经常连不上,可能与lejianwen/rustdesk-api#92rustdesk/rustdesk#5817rustdesk/rustdesk-server#311有关,现已转回官方服务端,秒连,爽

Mac扩展屏设置

使用BetterDisplay创建虚拟显示器

并在系统设置中调整好排列

然后在其他设备连接你的电脑时就可以选择串流虚拟显示器的内容

在Windows上一键启动客户端

嗯,毕竟每节课的机房都不一样,而且有还原,不能在每台电脑上都安装rustdesk客户端并配置好,既不安全又麻烦
参考了一些RustDesk部署的笔记,先在自己的windows设备上配置好rustdesk,调整好设置,确认可以连接到电脑
然后在%appdata%\RustDesk\config目录下复制RustDesk_default.tomlRustDesk_local.tomlRustDesk2.toml这三个文件出来,按照需求删改一下
示例:
RustDesk_default.toml

toml
1[options]
2view_style = 'adaptive'
3show_remote_cursor = 'Y'
4show_quality_monitor = 'Y'
5show_monitors_toolbar = 'Y'
6zoom-cursor = 'Y'
7image_quality = 'low'

RustDesk_local.toml

toml
 1remote_id = '<remote_id>'
 2kb_layout_type = ''
 3size = [
 4    0,
 5    0,
 6    0,
 7    0,
 8]
 9fav = []
10
11[options]
12enable-check-update = 'N'
13remote-menubar-drag-right = '1.0'
14user_info = '{"name":"admin","status":1}'
15enable-udp-punch = 'Y'
16access_token = '<access_token>'
17remote-menubar-drag-left = '0.0'
18enable-ipv6-punch = 'Y'

RustDesk2.toml

toml
 1rendezvous_server = '<id/中继服务器rendezvous_server>'
 2nat_type = 2
 3serial = 0
 4unlock_pin = ''
 5trusted_devices = ''
 6
 7[options]
 8key = '<key>'
 9allow-websocket = 'Y'
10custom-rendezvous-server = '<id/中继服务器rendezvous_server>'
11allow-remote-config-modification = 'Y'

然后写个简单的脚本即可
目录结构:

text
1➜ ls --tree
2 ./                             224 B  7 hours ago
3├──  launch.cmd*                251 B  7 hours ago
4├──  RustDesk_default.toml*     154 B  7 hours ago
5├──  RustDesk2.toml*            276 B  7 hours ago
6├──  RustDesk_local.toml*       749 B  7 hours ago
7└──  rustdesk-1.4.2-x86_64.exe*  22 MB 9 hours ago

launch.cmd

sh
1mkdir "%APPDATA%\RustDesk\config"
2copy RustDesk_local.toml %appdata%\RustDesk\config
3copy RustDesk2.toml %appdata%\RustDesk\config
4copy RustDesk_default.toml %appdata%\RustDesk\config
5rustdesk-1.4.2-x86_64.exe "rustdesk://connection/new/123456789"

最终效果如下: