用rustdesk+云服务器实现远程控制

1 用rustdesk+云服务器实现远程控制

1.1 第一步 安装 Docker

在 root 用户下执行以下命令,安装 Docker 并设置开机自启:

bash 复制代码
# 更新软件包列表
apt update

# 安装 Docker(使用官方脚本,已配置阿里云镜像加速)
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

# 启动 Docker 并设置开机自启
systemctl start docker
systemctl enable docker

# 验证 Docker 是否安装成功
docker --version

1.2 第二步 运行 RustDesk 服务端容器

运行两个核心服务:hbbs(ID注册服务器)和 hbbr(中继服务器)。

请将 <你的服务器公网IP> 替换为你的云服务器公网 IP(例如 123.56.78.90)。

bash 复制代码
# 创建数据存放目录
mkdir -p /data/rustdesk

# 运行 hbbs(ID注册服务器),设置密钥为 Passw0rd
docker run --name hbbs -v /data/rustdesk:/root -td \
  --net=host \
  docker.m.daocloud.io/rustdesk/rustdesk-server \
  hbbs -r <你的服务器公网IP>:21117 -k Passw0rd

# 运行 hbbr(中继服务器)
docker run --name hbbr -v /data/rustdesk:/root -td \
  --net=host \
  docker.m.daocloud.io/rustdesk/rustdesk-server \
  hbbr

# 查看容器是否正常运行(应看到 hbbs 和 hbbr 状态为 Up)
docker ps

参数说明:

  • --net=host:容器直接使用主机网络,无需端口映射。
  • -v /data/rustdesk:/root:将容器内的 /root 目录挂载到主机的 /data/rustdesk,用于持久化数据。
  • -k Passw0rd:指定客户端连接密钥,所有客户端必须使用此 Key。

1.3 第三步 配置云服务器安全组规则(放行端口)

依次添加以下 入方向 规则(授权对象填 0.0.0.0/0):

1.4 第五步 配置 RustDesk 客户端

在所有需要远程控制的设备上安装 RustDesk 客户端。

  1. 下载客户端:访问 RustDesk 官网 下载对应系统的版本并安装。

  2. 打开客户端:点击左上角菜单 → "网络" → "ID/中继服务器"。

  3. 填写服务器信息:

    • ID 服务器:你的阿里云服务器公网 IP
    • 中继服务器:你的阿里云服务器公网 IP(同上)
    • API 服务器:留空
    • Key:输入 Passw0rd
  4. 点击 "确定" 保存。

配置成功后,客户端左上角会显示 "就绪" 和一个以字母开头的 ID。

1.5 第六步:测试连接

在设备 A 上打开 RustDesk,记下自己的 ID。

在设备 B 上输入设备 A 的 ID,点击连接,输入设备 A 显示的临时密码(或被控端设置的永久密码),即可开始远程控制。

1.6 设置永久密码(可选但推荐)

为了方便随时连接,可以设置一个固定密码:

点击右上角菜单 → "设置" → "安全"。

在 "永久密码" 处输入你想设置的密码,并勾选 "仅允许以下密码连接"。

这样以后连接时就不需要每次都看临时密码了。

1.7 维护命令

  1. 查看容器日志:

    bash 复制代码
    docker logs hbbs
    docker logs hbbr
  2. 重启容器:

    bash 复制代码
    docker restart hbbs hbbr
  3. 设置容器开机自启:

    bash 复制代码
    docker update --restart=always hbbs hbbr

2 卸载

  1. 停止并删除 Docker 容器

    bash 复制代码
    # 停止正在运行的容器
    docker stop hbbs hbbr
    # 3 删除容器
    docker rm hbbs hbbr
  2. 删除 Docker 镜像(可选,用于释放磁盘空间)

    bash 复制代码
     # 查看已拉取的 RustDesk 镜像 ID
     docker images | grep rustdesk
    
     # 3 删除镜像(假设镜像名为 docker.m.daocloud.io/rustdesk/rustdesk-server)
     docker rmi docker.m.daocloud.io/rustdesk/rustdesk-server
  3. 删除持久化数据目录

    bash 复制代码
     # 删除之前挂载的数据目录(里面可能包含密钥、数据库等)
     rm -rf /data/rustdesk
  4. (可选)卸载 Docker

    bash 复制代码
     # 卸载 Docker 及相关依赖
     apt remove --purge docker.io docker-ce docker-ce-cli containerd.io -y
     rm -rf /var/lib/docker
  5. (可选)删除云服务器安全组规则
    登录阿里云控制台,进入你的实例安全组,手动删除之前为 RustDesk 添加的端口规则(21115-21119 TCP 和 21116 UDP)。

  6. 验证清理是否成功

    • 执行 docker ps -a 应看不到 hbbs/hbbr 容器。
    • 执行 docker images 应看不到 rustdesk-server 镜像。
    • 目录 /data/rustdesk 应不存在(如果没其他用途)。

这样就完成了全部卸载。以后如果想重新搭建,只需要按照之前的步骤重新拉取镜像并运行容器即可。

相关推荐
wanhengidc6 小时前
云手机 高振畅玩不踩坑
运维·服务器·安全·web安全·智能手机
有谁看见我的剑了?7 小时前
linux 添加硬盘后系统识别不到硬盘处理
linux·运维·服务器
JoyCong19987 小时前
ToDesk远程屏幕墙技术白皮书:如何重塑全局运维视界
运维·电脑·远程工作
偶尔上线经常挺尸7 小时前
《100个“反常识”经验15:Nginx 502排查:从应用到内核》
运维·nginx·性能调优·反向代理·502错误·http排错
思茂信息8 小时前
CST软件如何进行参数化扫描?
运维·开发语言·javascript·windows·ecmascript·软件工程·软件需求
计算机安禾8 小时前
【Linux从入门到精通】第31篇:防火墙漫谈——iptables与firewalld防护指南
linux·运维·php
下一页盛夏花开9 小时前
ubuntu 20中安装QT以后出现红色空心断点
linux·运维·ubuntu
金色光环9 小时前
FreeModbus释放底层的 TCP 监听端口
服务器·网络·tcp/ip
sxgzzn11 小时前
光伏数智化综合平台:让光伏电站运维更智能、更高效
运维