一、系统环境
windows server 2019 Standard
带桌面管理版
二、安装node.js
2.1、node.js
基本信息
软件:node-v16.14.2-x86
node.js
官网:Node.js (nodejs.org)
下载
v16+
LTS
版本
2.2、node.js
安装
- 这里一定不要勾选,巨坑,安装一堆东西,还不成功。node.js安装完成后,手动安装VC++。
- VC++ 下载地址:Visual C++
2.3、安装完成检查
Microsoft Windows [版本 10.0.17763.1339]
(c) 2018 Microsoft Corporation。保留所有权利。
C:\Users\Administrator>node -v
v16.14.2
C:\Users\Administrator>
三、安装pm2
打开CMD
依次输入以下三行命令
npm install -g pm2
npm install pm2-windows-startup -g
pm2-startup install
安装过程记录
C:\Users\Administrator>npm install -g pm2
npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
added 182 packages, and audited 183 packages in 57s
12 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
npm notice
npm notice New minor version of npm available! 8.5.0 -> 8.13.2
npm notice Changelog: https://github.com/npm/cli/releases/tag/v8.13.2
npm notice Run npm install -g npm@8.13.2 to update!
npm notice
C:\Users\Administrator>npm install pm2-windows-startup -g
added 19 packages, and audited 20 packages in 8s
found 0 vulnerabilities
C:\Users\Administrator>pm2-startup install
Successfully added PM2 startup registry entry.
四、安装VC++
下载地址:https://docs.microsoft.com/zh-CN/cpp/windows/latest-supported-vc-redist?view=msvc-170
傻瓜式安装
五、运行hbbr
和hbbs
5.1、解压rustdesk-server-windows-x64.zip
到C盘
5.2、运行hbbr
和hbbs
依次运行以下命令
cd c:\rustdesk-server-windows-x64
pm2 start hbbs.exe -- -r hbbr运行所在主机的地址,在公司局域网内用内网地址,再做端口映射就是,若是买了云服务器,写云厂商提供的公网IP,并且开放对应的端口。
pm2 start hbbr.exe
pm2 save
cd c:\rustdesk-server-windows-x64 表示进入
rustdesk-server-windows-x64.zip
解压后目录
安装过程记录
C:\Users\Administrator>cd C:\rustdesk-server-windows-x64
C:\rustdesk-server-windows-x64>pm2 start hbbs.exe -- -r 192.168.0.176
-------------
__/\\\\\\\\\\\\\____/\\\\____________/\\\\____/\\\\\\\\\_____
_\/\\\/\\\_\/\\\\\\________/\\\\\\__/\\\///\\\___
_\/\\\_______\/\\\_\/\\\//\\\____/\\\//\\\_\///______\//\\\__
_\/\\\\\\\\\\\\\/__\/\\\\///\\\/\\\/_\/\\\___________/\\\/___
_\/\\\/____\/\\\__\///\\\/___\/\\\________/\\\//_____
_\/\\\_____________\/\\\____\///_____\/\\\_____/\\\//________
_\/\\\_____________\/\\\_____________\/\\\___/\\\/___________
_\/\\\_____________\/\\\_____________\/\\\__/\\\\\\\\\\\\\\\_
_\///______________\///______________\///__\///__
Runtime Edition
PM2 is a Production Process Manager for Node.js applications
with a built-in Load Balancer.
Start and Daemonize any application:
$ pm2 start app.js
Load Balance 4 instances of api.js:
$ pm2 start api.js -i 4
Monitor in production:
$ pm2 monitor
Make pm2 auto-boot at server restart:
$ pm2 startup
To go further checkout:
http://pm2.io/
-------------
[PM2] Spawning PM2 daemon with pm2_home=C:\Users\Administrator\.pm2
[PM2] PM2 Successfully daemonized
[PM2] Starting C:\rustdesk-server-windows-x64\hbbs.exe in fork_mode (1 instance)
[PM2] Done.
┌─────┬─────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
├─────┼─────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 0 │ hbbs │ default │ N/A │ fork │ 1976 │ 0s │ 0 │ online │ 0% │ 9.6mb │ Adm… │ disabled │
└─────┴─────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
C:\rustdesk-server-windows-x64>pm2 start hbbr.exe
[PM2] Starting C:\rustdesk-server-windows-x64\hbbr.exe in fork_mode (1 instance)
[PM2] Done.
┌─────┬─────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
├─────┼─────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 1 │ hbbr │ default │ N/A │ fork │ 5872 │ 0s │ 0 │ online │ 0% │ 4.6mb │ Adm… │ disabled │
│ 0 │ hbbs │ default │ N/A │ fork │ 1976 │ 15s │ 0 │ online │ 0% │ 9.6mb │ Adm… │ disabled │
└─────┴─────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
C:\rustdesk-server-windows-x64>pm2 save
[PM2] Saving current process list...
[PM2] Successfully saved in C:\Users\Administrator\.pm2\dump.pm2
检查服务是否运行成功
PM2 list
# 若两个服务的状态都是 online 代表成功
六、服务器上配置防火墙入栈规则
6.1、所需端口
官方文档:默认情况下,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
6.2、配置入栈规则
配置步骤
控制面板 → Windows Defender 防火墙 → 高级设置 → 入栈规则 → 新建入栈规则→ 端口 → 下一步 → TCP→ 特定本地端口(21115) → 允许连接 → 域/专用/公用(都勾上) → 下一步 → 名称(RustDeskServerTCP21115) → 完成
配置结果
六、端口映射到公网
这一块我不熟,就不写了(在防火墙上映射过,没成功。网络课代表可以试一下,成功了记得分享经验哦~)
简单办法:买个带固定IP的云服务器
若是仅仅内网使用,这一步不做,已经可以了
七、用到的资源
资源 | 地址 |
---|---|
客户端 | https://wwut.lanzoul.com/iQiXv088fqxg |
服务端 | https://wwut.lanzoul.com/iCRFD085bz0f |
VC | https://wwut.lanzoul.com/i9xuC085bz7c |
Node | https://wwut.lanzoul.com/ieFrx085c1re |