企业网站定制开发rust 02 rustdesk基于rust的开源远程控制软件

01 基本信息


rustdesk 是 企业网站定制开发开源虚拟与远程桌面基础
企业网站定制开发远程桌面软件,开箱即用,企业网站定制开发无需任何配置。您完全掌控数据,不用担心安全问题。

开源代码

rustdesk 基于 开发,对跨平台支持比较好。

02 编译、运行及打包

02.01 编译依赖

根据开源官网说明
win10 上面,c++编译器使用的是vs2022,

:: current pathcd e:\git:: vcpkg:: 下载代码git clone git@github.com:microsoft/vcpkg.git:: 更新依赖库.\vcpkg\bootstrap-vcpkg.batset VCPKG_ROOT=e:\git\vcpkg:: llvm:: https://github.com/llvm/llvm-project:: 下载 llvm 的windows 安装包wget --no-check-certificate https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.6/LLVM-14.0.6-win64.exe:: 安装后,在命令行设置环境变量set LIBCLANG_PATH=E:\install\LLVM\lib:: sciter.dllwget --no-check-certificate https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.win/x64/sciter.dll:: 下载后,放入 rustdesk\target\release\sciter.dll , rustdesk\target\debug\sciter.dll,可以放入系统目录后注册
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

02.02 编译

:: on e:\git,下载代码git clone git@github.com:rustdesk/rustdesk.gitcd rustdesk:: 切换到稳定版本git checkout 1.1.9 -b b1.1.9git branch -vv* b1.1.9 d716e2b Merge pull request #474 from ripp2003/patch-1:: 安装必要依赖vcpkg install libvpx:x64-windows-static libyuv:x64-windows-static opus:x64-windows-static:: 安装rust并更新到最新版本rustup update:: 编译运行:: debugcargo run:: releasecargo run --release
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

02.03 打包

代码中提供了打包工具 setup.nsi,目前 nsis工具包是3.08版本。下载最新的msis工具。
安装后,稍微修改小 setup.nsi 脚本,

根据tag信息修改下版本号。!define VERSION "1.1.9"
在修改下具体打包内容,这里直接使用 target\release下内容和 src\ui下内容。如下:

  #File "${PRODUCT_NAME}.exe"  File "target\release\${PRODUCT_NAME}.exe"  File "target\release\sciter.dll"  SetOutPath $INSTDIR\src  File /r "src\ui"  SetOutPath $INSTDIR
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

然后直接 nsis运行 setup.nsi 脚本,即可在当前目录下生产安装包 rustdesk-1.1.9-setup.exe

注意:打包的时候,不要忘记 sciter.dll。还有 src\ui 的路径关系。

02.04 测试验证

在两台win10 pc上安装rustdesk-1.1.9-setup.exe后,授权后,即可远程控制。服务端默认使用开源提供测试服务器。

03 服务端配置

rustdesk 开源者提供了编译好的服务端程序。

自建服务器官方文档:

03.01 本机配置

默认不指定参数,直接启动两个服务,可以用于调试。
windows上:

E:\git\rustdesk-server>hbbr[2022-07-05 23:48:34.889057 +08:00] INFO [src\relay_server.rs:60] #blacklist(blacklist.txt): 0[2022-07-05 23:48:34.889107 +08:00] INFO [src\relay_server.rs:75] #blocklist(blocklist.txt): 0[2022-07-05 23:48:34.889110 +08:00] INFO [src\relay_server.rs:81] Listening on tcp 0.0.0.0:21117[2022-07-05 23:48:34.889118 +08:00] INFO [src\relay_server.rs:83] Listening on websocket 0.0.0.0:21119[2022-07-05 23:48:34.889119 +08:00] INFO [src\relay_server.rs:85] Start[2022-07-05 23:48:34.890821 +08:00] INFO [src\relay_server.rs:104] DOWNGRADE_THRESHOLD: 0.66[2022-07-05 23:48:34.890854 +08:00] INFO [src\relay_server.rs:113] DOWNGRADE_START_CHECK: 1800s[2022-07-05 23:48:34.890880 +08:00] INFO [src\relay_server.rs:122] LIMIT_SPEED: 4Mb/s[2022-07-05 23:48:34.890890 +08:00] INFO [src\relay_server.rs:132] TOTAL_BANDWIDTH: 1024Mb/s[2022-07-05 23:48:34.890900 +08:00] INFO [src\relay_server.rs:146] SINGLE_BANDWIDTH: 16Mb/s
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
E:\git\rustdesk-server>hbbs.exe[2022-07-05 23:48:44.931934 +08:00] INFO [src\peer.rs:82] DB_URL=C:\Users\soft\AppData\Roaming\RustDesk\config\db_v2.sqlite3[2022-07-05 23:48:44.938885 +08:00] INFO [src\rendezvous_server.rs:94] serial=0[2022-07-05 23:48:44.938914 +08:00] INFO [src\common.rs:41] rendezvous-servers=[][2022-07-05 23:48:44.938921 +08:00] INFO [src\rendezvous_server.rs:96] Listening on tcp/udp 0.0.0.0:21116[2022-07-05 23:48:44.938924 +08:00] INFO [src\rendezvous_server.rs:97] Listening on tcp 0.0.0.0:21115, extra port for NAT test[2022-07-05 23:48:44.938926 +08:00] INFO [src\rendezvous_server.rs:98] Listening on websocket 0.0.0.0:21118[2022-07-05 23:48:44.940878 +08:00] INFO [libs\hbb_common\src\udp.rs:33] Receive buf size of udp 0.0.0.0:21116: Ok(65536)[2022-07-05 23:48:44.941707 +08:00] INFO [src\common.rs:120] Private/public key written to id_ed25519/id_ed25519.pub[2022-07-05 23:48:44.941967 +08:00] INFO [src\common.rs:41] relay-servers=[][2022-07-05 23:48:44.942228 +08:00] INFO [src\rendezvous_server.rs:135] ALWAYS_USE_RELAY=N[2022-07-05 23:48:44.942301 +08:00] INFO [src\rendezvous_server.rs:155] Start
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

启动两个服务后,检查本机ipv4地址,客户端直接修改即可连接到上面两个服务器上。

03.02 公网ip上面配置

如果有公网ip,也可以在公网服务器上面按照官网说明配置个服务器,不过记得开启服务器访问端口。
下面是在ubuntu 上面的验证搭建命令。

nohup ./hbbs > hbbs.log 2>&1 nohup ./hbbr > hbbr.log 2>&1 &
  • 1
  • 2
网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发