# RustDesk远程桌面

# 配置文件

`docke-compose.yaml`

```yaml
networks:
    1panel-network:
        external: true
services:
    rustdesk:
        container_name: rustdesk
        deploy:
            resources:
                limits:
                    cpus: 0
                    memory: 0
        environment:
            - RELAY=example.domain.com:21117
            - ENCRYPTED_ONLY=1
        image: rustdesk/rustdesk-server-s6:latest
        labels:
            createdBy: Apps
        networks:
            - 1panel-network
        ports:
            - 21115:21115
            - 21116:21116
            - 21116:21116/udp
            - 21117:21117
            - 21118:21118
            - 21119:21119
        restart: always
        volumes:
            - ./data/hbbs:/data
```

# 配置解析

## 环境变量

* RELAY 
  * 中继服务器访问地址


:::tip
我感觉没啥影响，可以使用IP代替，实际测试若使用其他域名只要地址指向正确并无功能影响

:::

* ENCRYPTED_ONLY 
  * 中继服务是否开启加密，1加密，0不加密


:::tip
应该开启，密钥在日志中，如 `Key: c5S***Gdc=`

:::

## 端口

个人正常使用的话只需要开启以下端口

tcp: 21115, 21116, 21117 

udp: 21116

> 21115/TCP：让 hbbs 充当一个“探测点”，帮客户端确认NAT 类型，决定直连还是中继；
>
> 21116/UDP：用于 ID 注册和心跳服务；
>
> 21116/TCP：用于 TCP 打洞和连接服务；
>
> 21117/TCP：中继服务（Relay）；
>
> 21118/TCP & 21119/TCP：支持网页客户端；

# 客户端

<https://github.com/rustdesk/rustdesk/releases/latest>