开源远程桌面软件 rustdesk-全讯平台

玩技站长
管理员, keymaster
7002
文章
2
粉丝
运维笔记17649字数 2804阅读9分20秒阅读模式

市面上的各大主流远程工具teamviewer、todesk、向日葵、连连控等等都是从免费到开始割韭菜,慢慢的各种功能开始收费,基础远程限流导致清晰度不高,今天给大家介绍一款自建远程工具rustdesk,并且教大家如何使用宝塔面板安装的全过程,好处是根本不限流全程高清画质,只要你的带宽够用,那么这完全是一款私人定制工具。

一、首先你需要一台国内云服务器。如阿里云、腾讯云等都可以,配置不用太高,宽带可以大点(因为需要画面共享)。如果没有云服务器的话,这里可以去申请一个云服务器(百度云:www.baiduvps.com )

二、因为我们是使用docker来安装rustdesk的中继服务器,所以需要先在服务器上安装docker。至于如何安装docker的话,大家可以自行百度(有非常多的教程)。安装好成功后,执行docker version命令会出现如下画面

三、本次教程使用宝塔自带docker,首先需要保证宝塔的docker是启用状态。

环境搭建

官方教程

官方说明

如果你运行 docker 版本时候,要求注册码,说明你下载的是老版本,国内的 docker 镜像缓存没有更新

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 
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
      - :21116 # 自定义 hbbs 映射端口
      - :21116/udp # 自定义 hbbs 映射端口
    image: rustdesk/rustdesk-server
    command: hbbs -r : # 填入个人域名或 ip   hbbr 暴露端口
    volumes:
      - :/root # 自定义挂载目录
    networks:
      - rustdesk-net
    depends_on:
      - hbbr
    restart: unless-stopped
    deploy:
      resources:
        limits:
          memory: 64m
  hbbr:
    container_name: hbbr
    ports:
      - :21117 # 自定义 hbbr 映射端口
    image: rustdesk/rustdesk-server
    command: hbbr
    volumes:
      - :/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系统上遇到无法连接的问题

 

方式一:推荐

评论后刷新
由于本站被大量采集,顾添加评论验证防止因采集造成的网络崩溃
发表评论

方式二:不推荐

评论后刷新
由于本站被大量采集,顾添加评论验证防止因采集造成的网络崩溃
发表评论

放行端口

默认情况下,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用作中继服务。
2111821119是为了支持网页客户端。如果您不需要网页客户端(21118,21119)支持,对应端口可以不开。

宝塔放行

tcp(21115, 21116, 21117, 21118, 21119)
udp(21116)

配置终端

下载地址:https://rustdesk.com/zh/

第一步:首次打开是这样的,点击安装

第二步:安装后,点击设置

第三步:控制端设置

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
docker方法2:预构建运行
评论后刷新
由于本站被大量采集,顾添加评论验证防止因采集造成的网络崩溃
发表评论

环境变量

 

变量名参考值备注
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.1mysql数据库的服务器ip
mysql_user可选,默认 -mysql数据库的用户名
mysql_password可选,默认 -mysql数据库的密码
mysql_port可选,默认 3306mysql数据库端口
数据库配置-- 结束 --查看【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即可

评论后刷新
由于本站被大量采集,顾添加评论验证防止因采集造成的网络崩溃
发表评论

原创声明:本文章为原创内容,所有文章均由博主亲自撰写,严格遵循原创原则。我们承诺不使用任何人工智能生成的内容,所发布的每一篇文章都经过深思熟虑,旨在为读者提供真实、有价值的观点和信息。我们坚信原创才是知识分享的根本,致力于为广大读者呈现最具真实性和独特性的文章。感谢您的支持与关注,欢迎持续关注全讯足球网的原创内容。

    • 全讯足球网的版权提示:非本站文章仅供存储任何法律责任由作者承担
      免责声明:部分内容来自用户上传发布或新闻客户端自媒体如有侵权请反馈站长处理
    • 原创转载:阅读转载说明>>> https://www.playezu.com/826162.html
    评论  17  访客  14  作者  3
    1. fang

      试试看

    2. jxgrn

      是不是api server ?

    3. 111

      的伟大伟大

    4. 111

      时代的

    发表评论

    匿名网友
    确定

    拖动滑块以完成验证