前言:海外远程在宅办公的遗憾

对于身在海外(或者经常需要中日跨国办公)的朋友来说,远程控制国内或公司的电脑,往往是一场折磨。我们通常面临三大痛点:

  1. macOS 自带 VNC 的“幻灯片”体验:

    苹果用户都知道,macOS 自带的“屏幕共享”在局域网内是神器,但只要一跨公网(哪怕挂了 VPN),体验瞬间崩塌。画面撕裂、延迟极高,鼠标移动一下要等半秒,简直是在看 PPT。

  2. 国产软件的“海外限速”与“收费墙”:

    向日葵、ToDesk 等国产软件在海外虽然能连,但速度被严重阉割。它们会把海外连接识别为“跨境业务”,强行限速,逼你去购买昂贵的“全球会员”或“跨境流量包”。这种“不加钱就卡死你”的体验,让人感觉非常不爽。

  3. 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.yml

2. 编辑配置文件

使用 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-stopped
  • hbbs: ID 服务器,负责分配设备 ID。

  • hbbr: 中继服务器,核心组件。当无法点对点直连时,通过它转发流量(速度快慢全看它)。

3. 启动服务

Bash

docker-compose up -d

关键步骤:防火墙端口放行

这一步做不对,绝对连不上!

请务必在你的云服务器控制台(安全组)或服务器防火墙中放行以下端口:

端口

协议

用途

21115

TCP

HBBS 接口

21116

TCP & UDP

核心端口! UDP 用于打洞,TCP 用于注册

21117

TCP

HBBR 中继服务

21118 - 21119

TCP

Web 服务支持

特别提醒: 21116 必须同时开启 UDPTCP。很多朋友连不上就是因为忘了开 UDP。


客户端配置指南

1. 获取服务器 Key (公钥)

为了防止别人盗用你的服务器带宽,需要获取加密 Key。在终端输入:

Bash

cat ./data/id_ed25519.pub

复制输出的那串以 = 结尾的字符。

2. 配置客户端 (macOS / Windows / Linux)

下载 RustDesk 客户端后:

  1. 点击【设置】(Settings)。

  2. 找到【网络】(Network) -> 【ID / 中继服务器】。

  3. ID 服务器:填入你的服务器 IP 或域名。

  4. Key:填入刚才复制的那串字符。

  5. 点击【应用】。

3. 极客小技巧:免配置绿色版 (Windows限定)

如果你要远程协助同事或客户,不想教他们怎么填配置,可以用这个骚操作:

把下载好的 rustdesk.exe 重命名为:

rustdesk-host=你的IP,key=你的Key字符串.exe

直接发给对方,双击打开自动连接,连软件都不用装,专业度拉满。