市面上的各大主流远程工具Teamviewer、Todesk、向日葵、连连控等等都是从免费到开始割韭菜,慢慢的各种功能开始收费,基础远程限流导致清晰度不高,今天给大家介绍一款自建远程工具rustdesk,并且教大家如何使用宝塔面板安装的全过程,好处是根本不限流全程高清画质,只要你的带宽够用,那么这完全是一款私人定制工具。
一、首先你需要一台国内云服务器。如阿里云、腾讯云等都可以,配置不用太高,宽带可以大点(因为需要画面共享)。如果没有云服务器的话,这里可以去申请一个云服务器(百度云:www.baiduvps.com )文章源自玩技e族-https://www.playezu.com/826162.html
二、因为我们是使用Docker来安装Rustdesk的中继服务器,所以需要先在服务器上安装docker。至于如何安装docker的话,大家可以自行百度(有非常多的教程)。安装好成功后,执行docker version命令会出现如下画面文章源自玩技e族-https://www.playezu.com/826162.html
三、本次教程使用宝塔自带Docker,首先需要保证宝塔的Docker是启用状态。文章源自玩技e族-https://www.playezu.com/826162.html
文章源自玩技e族-https://www.playezu.com/826162.html
环境搭建
官方说明
如果你运行 docker 版本时候,要求注册码,说明你下载的是老版本,国内的 docker 镜像缓存没有更新文章源自玩技e族-https://www.playezu.com/826162.html
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 -r <relay-server-ip[:port]> sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbr
Docker Compose
version: '3' 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 -r <your_domain>:<hbbr_port> # 填入个人域名或 IP + hbbr 暴露端口 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选项就不起作用了, 可以去掉。请去掉 –net=host,如果您在非Linux系统上遇到无法连接的问题文章源自玩技e族-https://www.playezu.com/826162.html
文章源自玩技e族-https://www.playezu.com/826162.html
文章源自玩技e族-https://www.playezu.com/826162.html
方式一:推荐
方式二:不推荐
放行端口
默认情况下,hbbs 监听21115(tcp), 21116(tcp/udp), 21118(tcp),hbbr 监听21117(tcp), 21119(tcp)。务必在防火墙开启这几个端口, 请注意21116同时要开启TCP和UDP。其中:
21115是hbbs用作NAT类型测试
21116/UDP是hbbs用作ID注册与心跳服务
21116/TCP是hbbs用作TCP打洞与连接服务
21117是hbbr用作中继服务。
21118和21119是为了支持网页客户端。如果您不需要网页客户端(21118,21119)支持,对应端口可以不开。
宝塔放行
TCP(21115, 21116, 21117, 21118, 21119)
UDP(21116)
配置终端
第一步:首次打开是这样的,点击安装
第二步:安装后,点击设置
第三步:控制端设置
ID服务器:云外网IP
Key:你刚才在配置文件或者启动命令配置的 -k 后面的内容。
远程链接
1、在控制端输入被控制端的ID,点击连接
2、输入被控端显示的密码,也可以让被控端点击接受
账户登录
场景说明:部署好了之后会发现rustdesk有个登录功能,但是没有看到账号和密码。官方的说明是为了以后商业化准备的,但是有大神已经搞定了,那就是rustdesk_server_api。
项目地址:https://github.com/kingmo888/rustdesk-api-server
功能特点:
- 1、支持前台网页自主注册和登录。
支持前台展示设备信息,分为管理员版、用户版。
支持自定义别名(备注)。
支持后台管理。
支持彩色标签。
支持设备在线统计。
支持设备密码保存。
利用心跳接口自动管理token并保活。
支持分享设备给其他用户。
- 支持web控制端(目前仅支持非SSL模式,见下面使用问题说明)
搭建教程
方法1:开箱即用(windows方便)
仅支持Windows,请前往 release 下载,无需安装环境,直接运行启动.bat
即可。 截图:
方法2:代码运行(不推荐×)
# 将代码克隆到本地 git clone https://github.com/kingmo888/rustdesk-api-server.git # 进入目录 cd rustdesk-api-server # 安装依赖 pip install -r requirements.txt # 确保依赖安装正确后,执行: # 端口号请自行修改,建议保留21114为Rustdesk API默认端口 python manage.py runserver 0.0.0.0:21114
此时即可使用 http://本机IP:端口
的形式来访问。
注意:如果 CentOS 配置时,Django4 会因为系统的 sqlite3 版本过低而出问题,请修改依赖库中的文件。路径:xxxx/Lib/site-packages/django/db/backends/sqlite3/base.py
(根据情况自行查找包所在地址),修改内容:
# from sqlite3 import dbapi2 as Database #(注释掉这行) from pysqlite3 import dbapi2 as Database # 启用pysqlite3
方法3:Docker 运行
Docker方法1:自行构建(不推荐不方便×)
git clone https://github.com/kingmo888/rustdesk-api-server.git cd rustdesk-api-server docker compose --compatibility up --build -d
变量名 | 参考值 | 备注 |
---|---|---|
HOST | 默认 0.0.0.0 | 绑定服务的IP |
TZ | 默认 Asia/Shanghai ,可选 | 时区 |
SECRET_KEY | 可选,自定义一串随机字符 | 程序加密秘钥 |
CSRF_TRUSTED_ORIGINS | 可选,默认关闭验证; 如需开启填写你的访问地址 http://yourdomain.com:21114 如需关闭验证请删除此变量,而不是留空 | 防跨域信任来源 |
ID_SERVER | 可选,默认为和API服务器同主机。 可自定义如 yourdomain.com | Web控制端使用的ID服务器 |
DEBUG | 可选,默认 False | 调试模式 |
ALLOW_REGISTRATION | 可选,默认 True | 是否允许新用户注册 |
数据库配置 | -- 开始 -- | 若不使用MYSQL则以下皆无需配置 |
DATABASE_TYPE | 可选,默认 SQLITE3 | 数据库类型(SQLITE/MYSQL) |
MYSQL_DBNAME | 可选,默认 - | MYSQL数据库名 |
MYSQL_HOST | 可选,默认 127.0.0.1 | MYSQL数据库的服务器IP |
MYSQL_USER | 可选,默认 - | MYSQL数据库的用户名 |
MYSQL_PASSWORD | 可选,默认 - | MYSQL数据库的密码 |
MYSQL_PORT | 可选,默认 3306 | MYSQL数据库端口 |
数据库配置 | -- 结束 -- | 查看【sqlite3迁移mysql教程】 |
LANGUAGE_CODE | 可选,默认 zh-hans | 语言,支持中文(zh-hans )、英语(en ) |
使用问题
管理员设置
当数据库中不存在账户时,第一个注册的账户直接获取超级管理员权限,之后注册账户为普通账户。
设备信息
经测试,客户端会在非绿色版模式下,安装为服务的模式中,定时发送设备信息到api接口,所以如果想要设备信息,需要安装rustdesk客户端并启动服务。
连接速度慢
新版本Key模式链接速度慢,可以在服务端启动服务时,不要带参数的-k,此时,客户端也不能配置key。
Web控制端配置
- 设置ID_SERVER环境变量,或修改rustdesk_server_api/settings.py文件中ID_SERVER配置项,将ID服务器/中继服务器IP或域名填上。
Web控制端一直转圈
检查ID服务器填写是否正确
Web控制端目前仅支持非SSL模式,若webui为https访问,请将s去掉,否则ws连不上一直转圈。如:https://domain.com/webui,改为http://domain.com/webui
后台操作登录或登出时:CSRF验证失败. 请求被中断.
这种操作大概率是docker配置+nginx反代+SSL的组合,要注意修改CSRF_TRUSTED_ORIGINS,如果是ssl那就是https开头,否则就是http。
宝塔整合:(进阶配置)
将上述的hbbr和hbb和web端整合直接运行一个compose up即可
四川省成都市 10F
看看
广东省深圳市 9F
感谢分享
印度 B1
@ 2221 感谢支持,有任何疑问欢迎继续留言。
马来西亚 8F
测试测试
湖南省长沙市 7F
给力,宝塔面板都来了~
北京市 B1
@ 看透一切的男孩 感谢支持。
日本 6F
想看
湖北省潜江市 5F
谢谢分享
广西 4F
学习了
浙江省杭州市 3F
看看
北京市 2F
谢谢分享
中国 1F
学习