一、准备操作
1. 买服务器
– 配置:2 核 2G 就够用,系统选 Ubuntu 22.04 或 24.04。
– 带宽是关键:远程桌面在点对点打洞失败时,画面要经过服务器中转。
– 1~2 Mbps:画面会很卡。
– 建议固定带宽 5 Mbps 以上,或者选按流量计费(峰值可以设到 100 Mbps,用多少付多少,偶尔用的话更划算)。
2. 配置安全组(阿里云控制台 → 安全组 → 入方向)
┌──────────────┬───────────┬───────────────────────────────┐│ 端口 │ 协议 │
├──────────────┼───────────┼───────────────────────────────┤
│ 21115 │ TCP │ NAT 类型检测 │
├──────────────┼───────────┼───────────────────────────────┤
│ 21116 │ TCP + UDP │ ID 注册、打洞(UDP 一定要开) │
├──────────────┼───────────┼───────────────────────────────┤│ 21117 │ TCP │
├──────────────┼───────────┼───────────────────────────────┤
│ 21118、21119 │ TCP │ 网页客户端用,不用的话不要开 │└──────────────┴──────────────┘
3. 安装服务端(用 Docker)
apt update && apt install -y docker.io docker-compose-v2
mkdir -p /opt/rustdesk && cd /opt/rustdesk
cat > compose.yml <<‘EOF’
services:
hbbs:
image: rustdesk/rustdesk-server:latest
command: hbbs
volumes: [“./data:/root”] network_mode: host
depends_on: [hbbr]
restart: unless-stopped hbbr:
image: rustdesk/rustdesk-server:latest
command: hbbr
volumes: [“./data:/root”]
network_mode: host
restart: unless-stopped EOF
docker compose up -d
docker compose ps # 两个服务都应该是 running
cat /opt/rustdesk/data/id_ed25519.pub # # 复制这串公钥
这是公钥,客户端要阿里云内地服务器拉取 Docke镜像可能很慢,可以在阿里云控制台的”容器镜像服务”里找到镜像加
4. 客户端设置(每台电脑和手机都要做)
在 RustDesk 里打开 设置 → 网络 → ID/中继服务器:
– ID 服务器:你的公网IP
– 中继服务器:你的公网IP:21117 – Key:填上一步得到的公钥
三、安全加固(重要)
1. 一定要填 Key。新版服务端默认只允许带正确 Key 的客户端连接,这样别人就不能白用你的服务器。
2. 被控电脑在 RustDesk 里设置强密码作为固定密码,并打开双重认3. 服务端和客户端都及时更
4. 阿里云控制台开启登录保护,服务器的 SSH 只允许用密钥登录。
三、确认走的是”直连”还是”中继”(这一步最关键)
保持手机连着电脑,在电脑上用 PowerShell 执行:
Get-Process rustdesk | ForEach-Object { Get-NetTCPConnection -OwningProcess $_.Id -State Established -ErrorAction SilentlyContinue } | Select-Object RemoteAddress, RemotePort
┌──────────────────────┬──────────────────────────────────────────────────────┐
│ 看到的远程地址 │ 说明 │
├──────────────────────┼──────────────────────────────────────────────────────┤
│ VPS 公网 IP,端口 │ 中继:画面经过 VPS 转发,和 WireGuard 方式路线一样 │
│ 21117 │ │
├──────────────────────┼──────────────────────────────────────────────────────┤
│ 手机的公网 IP(不是 │ 直连成功:打洞成功,不经过 VPS │
│ VPS) │ │
├──────────────────────┼──────────────────────────────────────────────────────┤
│ 只有 VPS IP 的 21116 │ 这只是和 ID 服务器之间的信令连接,画面数据可能走的是 │
│ 端口 │ UDP 直连 │
└──────────────────────┴──────────────────────────────────────────────────────┘
这个命令只能看 TCP 连接,看不全 UDP。最直观的办法是同时在 VPS 上看流量:
apt install -y nload && nload # 按左右键切换网卡,看公网网卡的流量
在手机上拖动窗口、播放视频的时候:
– 如果 VPS 的流量明显上涨:走的是中继。
– 如果 VPS 的流量几乎没有变化:是直连。
四、更安全的做法:和 WireGuard 结合
你上一个问题里打算搭 WireGuard,这里也可以用上:
– 在同一台阿里云服务器上装 WireGuard,电脑和手机都连进这个内网(比如 10.66.0.x)。
– 在 RustDesk 设置里开启 “允许 IP 直接访问”,然后直接输入对方的内网 IP 连接。
– 这样连 RustDesk 服务端都可以不装,安全组也只需要开放 WireG 端口。远程桌面端口不暴露 很多。
注意: 在国内用 WireGuard 的组网用途。但如果用它连接境外服务器来翻墙,就涉及违规了,这一点要分清楚。
—
需要的话,我可以写一份 “阿里云 + WireGuard + RustDesk 直连” 的完整配置,包括服务器、电
1. 在电脑上用浏览器打开 github.com/rustdesk/rustdesk-server/releases,下载最新版本里的这两个文件:
– rustdesk-server-hbbr_版本号_amd64.deb
– rustdesk-server-hbbs_版本号_amd64.deb
2. 通过 WireGuard 内网上传到 VPS(在电脑的 PowerShell 里执行):
scp .\rustdesk-server-hb*.deb root@10.10.1.1:/tmp/
3. 回到 VPS 上安装:
cd /tmp && apt install -y ./rustdesk-server-hbbr_*.deb ./rustdesk-server-hbbs_*.deb
如果 GitHub 上的文件名和我写的不一样,以 Releases 页面上实际显示的为准。
这一步就是把下载的安装吧移到vps上去
3. 确认服务启动,拿到 Key
systemctl status rustdesk-hbbs rustdesk-hbbr –no-pager # 两个都应该是 active (running)
ss -tulnp | grep -E ‘2111[5-7]’ # 能看到 21115、21116(TCP 和 UDP)、21117 在监听
cat /var/lib/rustdesk-server/id_ed25519.pub # 这就是客户端要填的 Key
服务会自动开机启动,不需要额外设置。
4. 清理之前用不上的 Docker 配置
rm -rf /opt/rustdesk
还要检查一项:阿里云安全组
你在 ufw 里放行了端口,但阿里云还有一层安全组,也要放行,否则外面照样连不进来:
– 打开 阿里云控制台 → ECS → 安全组 → 入方向,添加三条规则:
– TCP 21115~21117
– UDP 21116
3. 确认服务启动,拿到 Key
systemctl status rustdesk-hbbs rustdesk-hbbr –no-pager # 两个都应该是 active (running)
ss -tulnp | grep -E ‘2111[5-7]’ # 能看到 21115、21116(TCP 和 UDP)、21117 在监听
cat /var/lib/rustdesk-server/id_ed25519.pub # 这就是客户端要填的 Key
服务会自动开机启动,不需要额外设置。
4. 清理之前用不上的 Docker 配置
rm -rf /opt/rustdesk
还要检查一项:阿里云安全组
你在 ufw 里放行了端口,但阿里云还有一层安全组,也要放行,否则外面照样连不进来:
– 打开 阿里云控制台 → ECS → 安全组 → 入方向,添加三条规则:
– TCP 21115~21117
– UDP 21116
对于手机不旋转的问题处理:把该应用关闭掉重新打开即可
评论(0)
暂无评论