云计算百科
云计算领域专业知识百科平台

RustDesk中继服务器安装脚本

RustDesk中继服务器脚本,,通过部署自已的远程桌面中继服务器可以有效提高安全性。

一、介绍

RustDesk的中继服务器(Relay Server)在远程桌面连接中起着至关重要的作用,特别是在设备无法建立直接P2P连接的情况下。以下是它的主要作用、价值以及安全性分析:

作用

  • 数据中转:当客户端之间无法直接建立连接时,中继服务器充当桥梁,转发数据包,使远程控制得以实现。

  • 穿透网络限制:在某些网络环境(如NAT或防火墙限制)下,设备可能无法直接通信,中继服务器帮助绕过这些限制。

  • 稳定连接:即使P2P连接失败,中继服务器仍能确保远程桌面连接的稳定性。

  • 价值

  • 提升连接质量:相比直接P2P连接,中继服务器可以优化数据传输路径,减少延迟,提高远程控制的流畅度。

  • 增强可用性:对于企业或个人用户来说,自建中继服务器可以确保远程连接的可控性,不依赖官方服务器。

  • 灵活部署:RustDesk支持用户自建中继服务器,允许在本地或云端部署,以满足不同的使用需求。

  • 安全性

  • 端到端加密:RustDesk采用端到端加密技术,确保数据在传输过程中不会被第三方窃取。

  • 自建服务器可控性:用户可以自行搭建中继服务器,避免数据经过官方服务器,提高隐私保护。

  • 防止数据存储:RustDesk的中继服务器仅用于数据转发,不会存储用户的远程控制数据,减少信息泄露的风险。

  • 二、脚本

    需要将本文上方文件和下面的脚本拷贝到同一个目录中,然后执行脚本安装

    #!/bin/bash
    set -e

    echo "🚀 开始部署 RustDesk 中继服务器…"

    # 1. 自动获取公网 IP
    PUBLIC_IP=$(curl -s https://api.ipify.org)
    echo "🌐 获取公网 IP:$PUBLIC_IP"

    # 2. 安装 Docker(如果未安装)
    if ! command -v docker &> /dev/null; then
    echo "🔧 安装 Docker…"
    apt update
    apt install -y \\
    ca-certificates \\
    curl \\
    gnupg \\
    lsb-release \\
    apt-transport-https \\
    software-properties-common

    mkdir -p /etc/apt/keyrings
    curl -fsSL https://download.docker.com/linux/debian/gpg | gpg –dearmor -o /etc/apt/keyrings/docker.gpg

    echo \\
    "deb [arch=$(dpkg –print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \\
    https://download.docker.com/linux/debian \\
    $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null

    apt update
    apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    fi

    # 3. 配置 Docker 镜像加速器(阿里云)
    echo "🐳 配置 Docker 加速器…"
    mkdir -p /etc/docker
    cat >/etc/docker/daemon.json <<EOF
    {
    "registry-mirrors": ["https://hub-mirror.c.163.com", "https://mirror.baidubce.com"]
    }
    EOF
    systemctl restart docker || service docker restart

    # 4. 导入 RustDesk 离线镜像
    if [ -f "./rustdesk.tar" ]; then
    echo "📦 加载本地离线镜像 rustdesk.tar…"
    docker load -i rustdesk.tar
    else
    echo "❌ 未找到 rustdesk.tar 离线镜像文件,请将其放置在当前目录。"
    exit 1
    fi

    # 5. 自动生成防盗用密钥
    KEY=$(openssl rand -hex 16)
    echo "🔑 生成防盗用密钥:$KEY"

    # 6. 启动 hbbs 服务
    docker rm -f hbbs >/dev/null 2>&1 || true
    docker run -d –name hbbs \\
    –restart=always \\
    -p 21115:21115 \\
    -p 21116:21116 \\
    -p 21116:21116/udp \\
    -p 21118:21118 \\
    rustdesk/rustdesk-server:latest hbbs -k $KEY

    # 7. 启动 hbbr 服务
    docker rm -f hbbr >/dev/null 2>&1 || true
    docker run -d –name hbbr \\
    –restart=always \\
    -p 21117:21117 \\
    -p 21119:21119 \\
    rustdesk/rustdesk-server:latest hbbr -k $KEY

    # 8. 输出信息
    echo ""
    echo "✅ RustDesk 中继服务部署完成!"
    echo "📌 公网 IP:$PUBLIC_IP"
    echo "📌 防盗用 KEY:$KEY"
    echo "📎 开放端口:"
    echo " – 21115(hbbs)"
    echo " – 21116(UDP+TCP,hbbs)"
    echo " – 21117(hbbr)"
    echo " – 21118(心跳)"
    echo " – 21119(额外端口,可自定义)"

    请开放脚本中用到的端口,公网地址为服务器的真实地址。

    三、脚本说明

    这个 Bash 脚本用于自动部署 RustDesk 中继服务器,实现远程桌面连接中的数据中转功能。它的主要步骤如下:

    1. 自动获取公网 IP

    • 通过 curl -s https://api.ipify.org 获取当前服务器的 公网 IP,用于后续配置和远程连接。

    • 通过 echo 输出 公网 IP,方便用户查看和使用。

    2. 安装 Docker(如果未安装)

    • 检测 Docker 是否已安装:command -v docker &> /dev/null

    • 如果未安装,则执行以下步骤:

      • 更新 apt 软件包索引。

      • 安装必要的 SSL 证书、包管理工具、curl、gnupg 等。

      • 下载并配置 Docker 官方 GPG 密钥。

      • 添加 Docker 官方源 并安装 Docker 相关组件。

    3. 配置 Docker 镜像加速

    • 创建 Docker 配置目录:mkdir -p /etc/docker

    • 设置国内加速镜像:

      • 网易 (https://hub-mirror.c.163.com)

      • 百度 (https://mirror.baidubce.com)

    • 重启 Docker 以应用新配置。

    4. 导入 RustDesk 离线镜像

    • 检查是否存在 rustdesk.tar 文件:

      • 如果存在,使用 docker load -i rustdesk.tar 导入离线镜像,避免因网络问题拉取失败。

      • 如果文件缺失,则提示用户手动提供。

    5. 自动生成防盗用密钥

    • 通过 openssl rand -hex 16 生成 16字节 HEX 随机密钥,用于 RustDesk 服务的验证,增强安全性。

    6. 启动 hbbs(主服务器)

    • 移除已有容器:避免端口冲突。

    • 运行 hbbs 服务器:

      • -p 21115:21115 开放 主服务器端口。

      • -p 21116:21116 -p 21116:21116/udp 允许 UDP 穿透 NAT。

      • -p 21118:21118 处理 心跳包通信。

      • 使用 -k $KEY 传递生成的密钥。

    7. 启动 hbbr(中继服务器)

    • 移除已有容器,避免冲突。

    • 运行 hbbr 服务器:

      • -p 21117:21117 开放 中继服务器的主要端口。

      • -p 21119:21119 允许额外数据传输。

    8. 输出部署信息

    • 显示公用 IP,方便用户配置客户端。

    • 显示防盗用密钥,用于 RustDesk 远程连接身份验证。

    • 列出开放的端口,确保服务可以正常运行。

    这个脚本是自动化 Docker 服务器的安装、加速设置,以及快速部署 RustDesk 远程控制的核心组件。如果有进一步的优化需求,或者想额外增强安全性,可以考虑 使用防火墙规则 限制访问,或者启用 HTTPS 代理 来保护传输数据。

    使用时,连接时最好强制使用中继服务器,具体连接速度效果可自行测试。如下图:

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » RustDesk中继服务器安装脚本
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!