> For AI agents: the complete documentation index is available at https://www.tteam.icu/llms.txt, the full documentation bundle is available at https://www.tteam.icu/llms-full.txt.

# rustdesk

RustDesk 是一款可以平替 TeamViewer 的开源软件，旨在提供安全便捷的自建方案

[客户端开源地址](https://github.com/rustdesk/rustdesk)

[服务端开源地址](https://github.com/rustdesk/rustdesk-server)

[官网](https://rustdesk.com/index.html)

## 第三方破解

[开源地址](https://github.com/lejianwen/rustdesk-server)

第三方方案通常会封装更多管理能力，部署前需要确认项目维护状态和兼容的 RustDesk 客户端版本。

```yaml file="./rustdesk/docker-compose.yml" title="docker-compose.yml"
networks:
  rustdesk-net:
    external: false
services:
  rustdesk:
    ports:
      - 21114:21114
      - 21115:21115
      - 21116:21116
      - 21116:21116/udp
      - 21117:21117
      - 21118:21118
      - 21119:21119
    image: lejianwen/rustdesk-server-s6:latest
    environment:
      - RELAY=127.0.0.1:21117
      - ENCRYPTED_ONLY=1
      - MUST_LOGIN=N
      - TZ=Asia/Shanghai
      - RUSTDESK_API_RUSTDESK_ID_SERVER=127.0.0.1:21116
      - RUSTDESK_API_RUSTDESK_RELAY_SERVER=127.0.0.1:21117
      - RUSTDESK_API_RUSTDESK_API_SERVER=http://127.0.0.1:21114
      - RUSTDESK_API_KEY_FILE=/data/id_ed25519.pub
      - RUSTDESK_API_JWT_KEY=xxx
    volumes:
      - ./server:/data
      - ./api:/app/data
    networks:
      - rustdesk-net
    restart: unless-stopped
       
```

## 官方

官方服务端由 `hbbs` 和 `hbbr` 两部分组成：`hbbs` 负责认证和打洞协调，`hbbr` 负责中继流量。

### 认证端

```sh file="./rustdesk/hbbs.sh" title="hbbs.sh"
#!/bin/bash

docker rm -f hbbs
docker run -id \
--net=host \
--name=hbbs \
--restart=always \
-v ./data:/root \
rustdesk/rustdesk-server \
hbbs
```

### 中继端

:::tip
如果要搭建中继端，需要在认证端启动时传入 `-r <relay-server-ip[:port]>`，即 `hbbs -r <relay-server-ip[:port]>`，端口可以省略。
:::

```sh file="./rustdesk/hbbr.sh" title="hbbr.sh"
#!/bin/bash

docker rm -f hbbr
docker run -id \
--net=host \
--name=hbbr \
--restart=always \
-v ./data:/root \
rustdesk/rustdesk-server \
hbbr
```
