一提到远程桌面控制大家就在熟悉不过,随便说两个向日葵,teamviewer,todesk,anydesk,要在以前来说那肯定是teamviewer是最好用的,不过都是用的“白嫖”版,后面就越来越难了,哪怕是个人用途也会时不时阻断,慢慢的就淡出了个人的视野了,后面陆陆续续朋友需要远程帮忙看下电脑问题都是下向日葵了。

由于自己有公网,所以远程都是用自带的mstsc远程,但是DDNS动态解析存在强制重拨号的时候解析有延迟等等问题,为了保证稳定备用所以还是打算选用一款远程桌面软件作为备用通道,所以找到了今天要介绍的github开源66k star可以自建的rustdesk,其他平台,主要是支持全平台,可以直接纳管自己的所有设备,包括安卓、linux、mac、windows。

介绍

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

为了隐私安全官方建议自建服务端和中继服务器,随时随地访问任何设备。

特性:

  • 支持 Windows、macOS、Linux、iOS、Android、Web 等多个平台。
  • 支持 VP8 / VP9 / AV1 软件编解码器和 H264 / H265 硬件编解码器。
  • 完全掌控数据,轻松自建。
  • P2P 连接,端到端加密。
  • 在 Windows 上可以非管理员不安装运行,根据需要在本地或远程提升权限。
  • 我们崇尚简单,尽一切可能让它简单。

搭建步骤

前置条件

一台5M带宽以上的含公网IP的服务器,推荐阿里云轻量云服务器8M 以及 腾讯云轻量应用服务器8M带宽

提前放通端口:TCP: 21114-21119 、UDP :21116

搭建服务端

看过我文章的都知道,现在我搭建服务为了方便维护基本上都是docker部署,如果你还没有用上,赶紧参考我以前的《一小时入门Docker教程及常用命令》用起来。

下面是快捷安装docker以及docker-compose命令,无脑粘贴即可:

# 安装 Docker 使用阿里云源
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
systemctl enable --now docker
# 安装 docker-compose
curl -L https://github.com/docker/compose/releases/download/v2.27.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
# 验证安装
docker -v
docker-compose -v
# 如失效,自行百度~

官方docker镜像地址:https://hub.docker.com/u/rustdesk

官方开源地址:https://github.com/rustdesk/rustdesk-server

网上参考的很多文章都是使用物理安装pm2保持后台运行,更或者是使用常规版本需要使用两个容器运行hbbs和 hbbr,其实官方有二合一的版本,直接运行即可。

下面是二合一版本的docker-compose.yml,然后执行: docker-compose up -d 即可启动。

version: '3'

services:
  rustdesk-server:
    container_name: rustdesk-server
    ports:
      - 21115:21115
      - 21116:21116
      - 21116:21116/udp
      - 21117:21117
      - 21118:21118
      - 21119:21119
    image: rustdesk/rustdesk-server-s6:latest
    environment:
      - "RELAY=【这里修改为你的公网IP地址】"
      - "ENCRYPTED_ONLY=1"
    volumes:
      - ./data:/data
    restart: unless-stopped

所有可设置的环境变量如下:

variablebinarydescription
ALWAYS_USE_RELAYhbbsif set to "Y" disallows direct peer connection
DB_URLhbbspath for database file
DOWNGRADE_START_CHECKhbbrdelay (in seconds) before downgrade check
DOWNGRADE_THRESHOLDhbbrthreshold of downgrade check (bit/ms)
KEYhbbs/hbbrif set force the use of a specific key, if set to "_" force the use of any key
LIMIT_SPEEDhbbrspeed limit (in Mb/s)
PORThbbs/hbbrlistening port (21116 for hbbs - 21117 for hbbr)
RELAYhbbsIP address/DNS name of the machines running hbbr (separated by comma)
RUST_LOGallset debug level (error、warn、info、debug、trace)
SINGLE_BANDWIDTHhbbrmax bandwidth for a single connection (in Mb/s)
TOTAL_BANDWIDTHhbbrmax total bandwidth (in Mb/s)

其中ID Server(ID服务器)对应的服务hbbs默认端口是21116Relay Server(中继服务器)对应的服务hbbr默认端口是21117

然后执行下面命令查看服务端的密钥key,这个值客户端链接的时候需要,请勿泄漏。

查看密钥key:cat ./data/id_ed25519.pub,会输出一串随机字符串,保存下来,这个只在初次安装会生成,后续都重启都不会改变的。

客户端使用

搭建完服务器之后,就可以下载客户端进行链接,默认下载安装好都是使用官方的服务端,所以还要稍微做一些配置才能使用上自己的服务端加速。

开源项目地址下载rustdesk客户端地址:https://github.com/rustdesk/rustdesk/releases

下载之后都找到软件都设置,然后填写服务器ID,中继服务器和key,如下图:

自建开源全平台RustDesk远程桌面控制服务端

自建开源全平台RustDesk远程桌面控制服务端

然后就可以正常使用了,连接之后服务端日志也会打印出使用的主机的服务端:

自建开源全平台RustDesk远程桌面控制服务端

效果还不错,这个连接速度主要取决你的服务端的带宽,所以带宽越大越好哈哈哈。

自建开源全平台RustDesk远程桌面控制服务端

远程连接之后也支持传送文件和发起语音文字聊天等等,自行研究吧。

WEB端使用

如果你要在web端使用官方提供beta版本的,同样可以使用自建的服务器使用。

官方提供的beta访问地址:http://45.76.181.120:8080/#/

若是需要自建web端连接使用下面 docker-compose.yml

version: '3'
services:
  flutter_web_desk:
    ports:
      - '5000:5000'
    image: 'keyurbhole/flutter_web_desk:v1.0.0'

使用 docker compose up -d ,启动成功访问 http://公网IP:5000 即可

自建开源全平台RustDesk远程桌面控制服务端

总结

通过本文你可以自建你的远程桌面远程,不受设备数量的限制,只要你的服务端带宽5M以上就可以流畅使用,快去试试吧,平替teamviewer的产品。由于这款软件开源,导致很多灰产黑产使用用来诈骗,所以国内商店已经停止下载,所以要下载请直接到开源项目地址下载安装,当然如果是陌生人要求你下载此软件共享屏幕,谨防上当受骗,除非你知道此软件是干嘛的!!!

希望本文对你有所帮助,更多好玩的请关注本博客。

参考链接

rustdesk官方自建手册

自建远程桌面连接服务,RustDesk搭建教程_

远程控制软件RustDesk自建服务器全平台部署及使用教程

Star 50.3k!超棒的国产远程桌面开源应用火了!

rustdesk官网

RustDesk 自建服务器部署和使用教程

文章目录