部署RustDesk服务器

部署RustDesk服务器

两个可执行程序:

  • hbbs - RustDesk ID注册服务器,是管各个客户端 ID 的,每个客户端都有一个唯一的 ID 。
  • hbbr - RustDesk中继服务器,是负责检测、中转各个客户端连接和数据传输。

端口占用情况:

  • TCP(21115, 21116, 21117, 21118, 21119)
  • UDP(21116)

进程占用端口情况:

  • hbbs - 21115(tcp), 21116(tcp/udp), 21118(tcp)
  • hbbr - 21117(tcp), 21119(tcp)

端口的作用:

  • 21115(TCP) - 用作 NAT 类型测试
  • 21116(UDP) - 用作 ID 注册 与 心跳服务
  • 21116(TCP) - 用作 TCP打洞 与 连接服务
  • 21117(TCP) - 用作中继服务
  • 21118/21119(TCP) - 为了支持网页客户端

如果启动的时候不加-k _参数,则不使用key也可以连接服务器。

pm2 常用命令

  • 启动进程 pm2 start bin/wwwpm2 start app.js
  • 重命名进程 pm2 start app.js --name wb123
  • 添加进程 pm2 start bin/www --watch
  • 结束进程 pm2 stop www
  • 结束所有进程 pm2 stop all
  • 删除进程 pm2 delete www
  • 删除所有进程 pm2 delete all
  • 列出所有进程 pm2 list
  • 查看某个进程具体情况 pm2 describe www
  • 进程监视器 pm2 monit
  • 查看pm2的日志 pm2 logs
  • 查看某个进程的日志 pm2 logs www
  • 重新启动进程 pm2 restart www
  • 重新启动所有进程 pm2 restart all

CentOS

# 设置时区为东八区的上海
sudo timedatectl set-timezone Asia/Shanghai
date +%Z

# 更新软件库
sudo yum update; sudo yum upgrade
sudo yum install htop wget unzip

# 安装nodejs和npm
sudo yum install node npm -y

node -v
npm -v

# 安装pm2
npm install -g pm2
# 查看pm2的版本
pm2 --version
# tab补全
pm2 completion install
# 创建pm2开机启动脚本
pm2 startup
# 设置pm2的开机启动
sudo systemctl enable pm2-${USER}

# 查询RustDesk-Server的最新版本
REPO="rustdesk/rustdesk-server"
latest_tag=$(curl -s https://api.github.com/repos/$REPO/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
echo "Using rustdesk-server version $latest_tag"

# 使用wget进行下载最新版RustDesk-Server
wget https://github.com/$REPO/releases/download/$latest_tag/rustdesk-server-linux-amd64.zip

# 解压缩RustDesk-Server
unzip rustdesk-server-linux-amd64.zip

# 文件夹改名
mv amd64 RustDesk

# 移除掉压缩文件
rm -f rustdesk-server-linux-amd64.zip

# pm2启动RustDesk-Server服务
cd ~/RustDesk
pm2 start hbbs -- -k _
pm2 start hbbr -- -k _
pm2 save

Ubuntu

# 设置时区为东八区的上海
sudo timedatectl set-timezone Asia/Shanghai
date +%Z

# 更新软件库
sudo apt update; sudo apt upgrade
sudo apt install htop wget unzip

# 安装nodejs和npm
sudo apt install nodejs npm -y

node -v
npm -v

# 安装pm2
sudo npm install -g pm2
# 查看pm2的版本
pm2 --version
# tab补全
pm2 completion install
# 创建pm2开机启动脚本,会有提示信息,循着提示信息去做就好。
pm2 startup
# 设置pm2的开机启动
sudo env PATH=$PATH:/usr/bin /usr/local/lib/node_modules/pm2/bin/pm2 startup systemd -u ${USER} --hp ${HOME}
sudo systemctl enable pm2-${USER}

# 查询RustDesk-Server的最新版本
REPO="rustdesk/rustdesk-server"
latest_tag=$(curl -s https://api.github.com/repos/$REPO/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
echo "Using rustdesk-server version $latest_tag"

# 使用wget进行下载最新版RustDesk-Server
wget https://github.com/$REPO/releases/download/$latest_tag/rustdesk-server-linux-amd64.zip

# 解压缩RustDesk-Server
unzip rustdesk-server-linux-amd64.zip

# 文件夹改名
mv amd64 RustDesk

# 移除掉压缩文件
rm -f rustdesk-server-linux-amd64.zip

# pm2启动RustDesk-Server服务
cd ~/RustDesk
pm2 start hbbs -- -k _
pm2 start hbbr -- -k _
pm2 save

MacOS

Windows

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 <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

参考资料

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容