RustDesk自建中转服务器 开源的远程控制软件

RustDesk，工具如其名，基于高效的 Rust 语言构建的开源远程桌面工具。

优势：

轻量：不论服务端还是客户端、不论哪个平台，软件小巧、功能完备。

全平台支持：支持 Android、Linux、Windows 任意双向控制，iOS 单向控制。

安全可控：软件开源，服务端自建，通信加密。

带宽高效：仅需 2-3M 即可流畅 1080P，支持 TCP 打洞端对端 P2P 连接。

RustDesk 官网：https://rustdesk.com/zh/

GitHub：https://github.com/rustdesk/rustdesk

搭建教程

首先我们需要准备一台拥有公网 IP 的服务器，服务器这里我推荐伍六七云：https://www.vps567.com 香港 2H2G5M 服务器 20 / 月，还有高防 CDN 加速只需 18 / 月起。

然后安装好 Docker 环境：Docker 一键安装脚本

并且放行端口：21115-21119 如果你不想使用默认端口，可以在安装过程中修改映射的端口。

Docker 拉取

Copy
sudo docker image pull rustdesk/rustdesk-server
sudo docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbs
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbr

Docker Compose 拉取

Copy
networks:
rustdesk-net:
external: false

services:
hbbs:
container_name: hbbs
ports:
- 21115:21115
- <hbbs_port>:21116 # 自定义 hbbs 映射端口
- <hbbs_port>:21116/udp # 自定义 hbbs 映射端口
image: rustdesk/rustdesk-server
command: hbbs
volumes:
- <mount_path>:/root # 自定义挂载目录
networks:
- rustdesk-net
depends_on:
- hbbr
restart: unless-stopped
deploy:
resources:
limits:
memory: 64M

hbbr:
container_name: hbbr
ports:
- <hbbr_port>:21117 # 自定义 hbbr 映射端口
image: rustdesk/rustdesk-server
command: hbbr
volumes:
- <mount_path>:/root # 自定义挂载目录
networks:
- rustdesk-net
restart: unless-stopped
deploy:
resources:
limits:
memory: 64M

注意：–net=host 仅适用于 Linux，它让 hbbs/hbbr 可以看到对方真实的 ip, 而不是固定的容器ip (172.17.0.1)。 如果–net=host运行正常，-p 选项就不起作用了，可以去掉。

如果您在非 Linux 系统上遇到无法连接的问题，请去掉 –net=host。

然后我们需要在主控端和被控端的设置中，在 ID / 中继服务器 输入我们的服务器 IP

这里还有一个 Key 用于加密连接，hbbs 在第一次运行时，会自动产生一对加密私钥和公钥（分别位于运行目录下的 id_ed25519 和 id_ed25519.pub 文件中），其主要用途是为了通讯加密。

Copy
cat ./id_ed25519.pub

如果要更改 key，请删除 id_ed25519 和 id_ed25519.pub 文件并重新启动 hbbs/hbbr，hbbs 将会产生新的密钥对。