远程桌面rustdesk部署
使用 Docker 安装 RustDesk
RustDesk 提供了官方的 Docker 镜像,可以直接使用。
1. 拉取 RustDesk 镜像
运行以下命令拉取 RustDesk 的 Docker 镜像:
1 |
|
2. 运行 RustDesk 服务
RustDesk 包含两个主要组件:
hbbs:RustDesk 的 ID 服务器和中继服务器。
hbbr:RustDesk 的中继服务器。
运行 hbbs
1 |
|
-v /path/to/data:/root rustdesk/rustdesk-server hbbs
-d:后台运行容器。
–name hbbs:容器名称。
-p:端口映射(21115 用于 TCP,21116 用于 TCP/UDP,21118 用于 Web 客户端)。
-v /path/to/data:/root:将容器内的 /root 目录挂载到本地的 /path/to/data,用于持久化数据。
运行 hbbr
1 |
|
-p 21117:21117:TCP 端口。
-p 21119:21119:Web 客户端端口。
3. 配置 RustDesk 客户端
下载并安装 RustDesk 客户端:
访问 RustDesk 官网 下载适合你操作系统的客户端。
打开 RustDesk 客户端,进入设置。
在 ID 服务器 和 中继服务器 中填写你的服务器地址(例如 your-server-ip)。
保存设置并重启客户端。
4. 验证安装
在客户端中输入对方的 RustDesk ID 和密码,尝试连接。
如果连接成功,说明 RustDesk 服务已正常运行。
5. 停止和删除容器
如果需要停止或删除容器,可以使用以下命令:
停止容器:
1 |
|
删除容器:
1 |
|
1 |
|
密钥文件
RustDesk 服务器(hbbs)在首次运行时会在其工作目录中生成两个密钥文件:
id_ed25519:私钥文件。
id_ed25519.pub:公钥文件。
如果你挂载了本地目录到容器(例如 -v /path/to/data:/root),这些文件会保存在本地的 /path/to/data 目录中。检查密钥文件是否存在
进入挂载的本地目录:
1 |
|
检查是否存在以下文件:
1 |
|
如果文件不存在,说明 hbbs 没有正确生成密钥文件。
如果文件存在,继续下一步。
- 确保客户端使用正确的公钥
RustDesk 客户端需要配置服务器的公钥(id_ed25519.pub 文件内容)。
打开 id_ed25519.pub 文件,查看公钥内容:
1 |
|
输出示例:
abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890
在 RustDesk 客户端中配置公钥:
打开 RustDesk 客户端。
进入 设置 -> 网络。
在 Key 字段中填入 id_ed25519.pub 文件的内容。
保存设置并重启客户端。
- 重新启动 RustDesk 服务
如果密钥文件已正确配置,但仍然遇到问题,可以尝试重新启动 RustDesk 服务。
停止并删除现有的 hbbs 和 hbbr 容器:
1 |
|
重新运行 hbbs 和 hbbr 容器:
1 |
|
1 |
|
- 验证连接
自定义端口号
21116同时要开启TCP和UDP。
其中21115是hbbs用作NAT类型测试,
21116/UDP是hbbs用作ID注册与心跳服务,
21116/TCP是hbbs用作TCP打洞与连接服务,
21117是hbbr用作中继服务,
21118和21119是为了支持网页客户端。
如果您不需要网页客户端(21118,21119)支持,对应端口可以不开。
1 |
|
如果不能生成秘钥公钥
使用openssl 和ssh-keygen生成的密钥是不好使的