Files
blog-press/docs/Others/RustDesk.md
2026-03-24 22:05:08 +08:00

108 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: RustDesk简介和安装
date: 2026-03-24
---
# 一、简介
  RustDesk是一款开源的远程桌面控制软件它允许用户通过网络从一台计算机远程控制另一台计算机。
  特点:
1. 跨平台:支持 Windows、macOS、Linux、Android、iOS 等主流操作系统。
2. 自托管:你可以搭建自己的中继服务器,将数据完全掌握在自己手中,保障安全和隐私。
3. 高性能:使用 Rust 语言编写,并采用了先进的视频编解码技术(如 H.264),力求在低带宽下也能实现流畅的远程控制体验。
4. 功能全面:支持文件传输、远程终端、语音通话、多显示器切换、远程重启等常用功能。
# 二、安装
## 2.1 自建服务器安装
  [RustDesk文档-Docker](https://rustdesk.com/docs/zh-cn/self-host/rustdesk-server-oss/docker/)
```yml
services:
hbbs:
container_name: hbbs
image: rustdesk/rustdesk-server:latest
command: hbbs
volumes:
- ./data:/root
network_mode: "host"
depends_on:
- hbbr
restart: unless-stopped
hbbr:
container_name: hbbr
image: rustdesk/rustdesk-server:latest
command: hbbr
volumes:
- ./data:/root
network_mode: "host"
restart: unless-stopped
```
::: tip
需要开放以下端口:
hbbs:
  21114 (TCP): 用于网页控制台,仅在 Pro 版本中可用。
  21115 (TCP): 用于 NAT 类型测试。
  21116 (TCP/UDP): 请注意 21116 应该同时为 TCP 和 UDP 启用。 21116/UDP 用于 ID 注册和心跳服务。21116/TCP 用于 TCP 打洞和连接服务。
  21118 (TCP): 用于支持网页客户端。
hbbr:
  21117 (TCP): 用于中继服务。
  21119 (TCP): 用于支持网页客户端。
:::
## 2.2 客户端安装
  进入[RustDesk官网](https://rustdesk.com/zh-cn/),根据系统类型选择相应的安装包下载并安装。
## 2.3 客户端配置
  例如在Windows系统中打开exe文件可以直接免安装打开也可以安装到本地点击右上角设置选择网络->ID/中继服务器配置ID服务器、中继服务器和Key值。
  其中ID服务器和中继服务器为自建服务器的IP地址Key值可以通过docker日志查看。
# 三、RustDeskApi
  官方RustDesk自建服务的Web Api和管理后台是需要收费的可以使用免费的[RustDeskApi](https://github.com/lejianwen/rustdesk-api)项目。
## 3.1 自建服务器安装
```yml
networks:
rustdesk-net:
driver: bridge
volumes:
rustdesk_server_data:
rustdesk_api_data:
services:
rustdesk-full:
container_name: rustdesk-full
image: lejianwen/rustdesk-api:full-s6
ports:
- "21114:21114" # API 服务端口
- "21115:21115" # hbbs 端口
- "21116:21116" # hbbs 端口
- "21116:21116/udp" # hbbs UDP 端口
- "21117:21117" # hbbr 中继端口
- "21118:21118" # WebSocket 端口Web客户端
- "21119:21119" # 额外中继端口
environment:
- RELAY=<ip>:21117
- ENCRYPTED_ONLY=1
- MUST_LOGIN=N
- TZ=Asia/Shanghai
- RUSTDESK_API_RUSTDESK_ID_SERVER=<ip>:21116
- RUSTDESK_API_RUSTDESK_RELAY_SERVER=<ip>:21117
- RUSTDESK_API_RUSTDESK_API_SERVER=http://<ip>:21114
- RUSTDESK_API_KEY_FILE=/app/conf/data/id_ed25519.pub
volumes:
- ./data/server:/data
- ./data/server:/app/conf/data
- ./data/api:/app/data
networks:
- rustdesk-net
restart: unless-stopped
```
::: tip
这里采用官方S6镜像[Wiki](https://github.com/lejianwen/rustdesk-api/wiki)其中ip为自建服务器ip。
:::
&emsp;&emsp;输入`http://ip:21114/_admin/`进入管理员后台。
&emsp;&emsp;或者输入`http://ip:21114/webclient/`直接进入RustDesk Web客户端。