前言:海外远程在宅办公的遗憾
对于身在海外(或者经常需要中日跨国办公)的朋友来说,远程控制国内或公司的电脑,往往是一场折磨。我们通常面临三大痛点:
macOS 自带 VNC 的“幻灯片”体验:
苹果用户都知道,macOS 自带的“屏幕共享”在局域网内是神器,但只要一跨公网(哪怕挂了 VPN),体验瞬间崩塌。画面撕裂、延迟极高,鼠标移动一下要等半秒,简直是在看 PPT。
国产软件的“海外限速”与“收费墙”:
向日葵、ToDesk 等国产软件在海外虽然能连,但速度被严重阉割。它们会把海外连接识别为“跨境业务”,强行限速,逼你去购买昂贵的“全球会员”或“跨境流量包”。这种“不加钱就卡死你”的体验,让人感觉非常不爽。
TeamViewer 的“商业误判”:
老牌的 TeamViewer 动不动就弹窗检测到商业用途,直接断连。
为了彻底解决这些问题,实现“在宅办公”自由,可以利用手头的服务器通过 Docker 部署了 RustDesk。
RustDesk 能为“在宅办公”带来什么?
极致流畅的 Mac 体验: 相比 VNC,RustDesk 采用了现代视频编码,即使跨国连接,操作 Mac 或 Windows 也如丝般顺滑。
无缝调用公司资源: 在家里的 低配设备上,可以直接控制公司的高配电脑,像操作本地文件一样处理公司内网的文件、使用只能在内网运行的 ERP/财务软件,完全打破地理限制。
拒绝“过路费”: 数据走自己的服务器,跑满带宽,不需要给向日葵交任何“跨境流量费”。
部署过程
无论你是用 NAS(群晖、威联通)还是云服务器,只要有 Docker,就能一键搞定。
1. 创建目录与配置文件
在服务器终端执行以下命令:
Bash
mkdir -p /home/docker/rustdesk
cd /home/docker/rustdesk
touch docker-compose.yml2. 编辑配置文件
使用 vim 或 nano 编辑 docker-compose.yml,填入以下内容:
YAML
version: '3'
services:
hbbs:
container_name: rustdesk-hbbs
image: rustdesk/rustdesk-server:latest
# command: hbbs -r <你的域名或IP>:21117
# 注意:如果只用IP,上面这行command可以不写,它会自动识别;如果用域名,建议加上
command: hbbs
volumes:
- ./data:/root # 挂载数据目录,防丢失
network_mode: "host" # 推荐使用 host 模式,省去复杂的端口映射烦恼
restart: unless-stopped
hbbr:
container_name: rustdesk-hbbr
image: rustdesk/rustdesk-server:latest
command: hbbr
volumes:
- ./data:/root
network_mode: "host"
restart: unless-stoppedhbbs: ID 服务器,负责分配设备 ID。
hbbr: 中继服务器,核心组件。当无法点对点直连时,通过它转发流量(速度快慢全看它)。
3. 启动服务
Bash
docker-compose up -d关键步骤:防火墙端口放行
这一步做不对,绝对连不上!
请务必在你的云服务器控制台(安全组)或服务器防火墙中放行以下端口:
特别提醒: 21116 必须同时开启 UDP 和 TCP。很多朋友连不上就是因为忘了开 UDP。
客户端配置指南
1. 获取服务器 Key (公钥)
为了防止别人盗用你的服务器带宽,需要获取加密 Key。在终端输入:
Bash
cat ./data/id_ed25519.pub复制输出的那串以 = 结尾的字符。
2. 配置客户端 (macOS / Windows / Linux)
下载 RustDesk 客户端后:
点击【设置】(Settings)。
找到【网络】(Network) -> 【ID / 中继服务器】。
ID 服务器:填入你的服务器 IP 或域名。
Key:填入刚才复制的那串字符。
点击【应用】。
3. 极客小技巧:免配置绿色版 (Windows限定)
如果你要远程协助同事或客户,不想教他们怎么填配置,可以用这个骚操作:
把下载好的 rustdesk.exe 重命名为:
rustdesk-host=你的IP,key=你的Key字符串.exe
直接发给对方,双击打开自动连接,连软件都不用装,专业度拉满。