RustDesk自建远程桌面服务器
2025/7/4大约 4 分钟
在日常工作中,我们经常需要远程控制电脑,比如远程家中电脑进行下载、远程办公,或者帮助朋友解决技术问题。除了向日葵、QQ远程、ToDesk等商业软件,RustDesk提供了一个开源、安全、高效的替代方案。
RustDesk自建远程桌面服务器
为什么选择RustDesk?
在日常工作中,我们经常需要远程控制电脑,比如远程家中电脑进行下载、远程办公,或者帮助朋友解决技术问题。除了向日葵、QQ远程、ToDesk等商业软件,RustDesk提供了一个开源、安全、高效的替代方案。
RustDesk的主要优势
- 安全性:使用安全的加密通信协议,确保数据传输安全
- 跨平台:支持Windows、macOS、Linux、Android等多个平台
- 高性能:使用Rust编写,具有高效和并发的特点
- 低成本:一台1C1G的服务器就能满足个人或小团队使用
服务器准备
服务器配置要求
- Linux服务器:推荐1C1G配置(如AWS EC2或Lightsail)
- Windows服务器:建议至少2C4G配置
- 网络要求:需要开放特定端口
需要开放的端口
- TCP端口:21115, 21116, 21117, 21118, 21119
- UDP端口:21116
服务器初始化
1. 连接服务器
使用SSH连接服务器:
ssh admin@<服务器IP> -i <RSA密钥文件>2. 更新系统
# 更新软件包
sudo apt update -y
# 设置时区(可选)
sudo timedatectl set-timezone Asia/Shanghai3. 创建用户(可选)
# 创建新用户
sudo useradd -m rustdesk
# 设置密码
sudo passwd rustdesk
# 切换用户
sudo su - rustdeskRustDesk服务端部署
1. 下载服务端程序
# 创建目录
mkdir ~/rustdesk && cd ~/rustdesk
# 下载最新版本(请到GitHub查看最新版本号)
wget https://github.com/rustdesk/rustdesk-server/releases/download/1.1.8-2/rustdesk-server-linux-amd64.zip
# 解压
unzip rustdesk-server-linux-amd64.zip
mv amd64 server
cd server2. 测试运行
安装screen用于管理进程:
sudo apt install screen启动hbbs(ID服务):
screen -S hbbs
./hbbs
# 按Ctrl+A然后按D退出screen启动hbbr(中继服务):
screen -S hbbr
./hbbr
# 按Ctrl+A然后按D退出screen3. 获取公钥
运行后会生成公钥文件,查看并复制公钥内容:
cat id_ed25519.pub保存这个公钥,客户端配置时需要使用。
注册为系统服务
创建hbbs服务
创建服务文件:
sudo nano /etc/systemd/system/rustdesk-hbbs.service写入以下内容:
[Unit]
Description=RustDesk Hbbs
After=network.target
[Service]
User=rustdesk
Type=simple
WorkingDirectory=/home/rustdesk/rustdesk/server
ExecStart=/home/rustdesk/rustdesk/server/hbbs
ExecStop=/bin/kill -TERM $MAINPID
Restart=always
[Install]
WantedBy=multi-user.target创建hbbr服务
sudo nano /etc/systemd/system/rustdesk-hbbr.service写入以下内容:
[Unit]
Description=RustDesk Hbbr
After=network.target
[Service]
User=rustdesk
Type=simple
WorkingDirectory=/home/rustdesk/rustdesk/server
ExecStart=/home/rustdesk/rustdesk/server/hbbr
ExecStop=/bin/kill -TERM $MAINPID
Restart=always
[Install]
WantedBy=multi-user.target启动服务
# 重载systemd配置
sudo systemctl daemon-reload
# 启动服务
sudo systemctl start rustdesk-hbbs
sudo systemctl start rustdesk-hbbr
# 设置开机自启
sudo systemctl enable rustdesk-hbbs
sudo systemctl enable rustdesk-hbbr
# 查看服务状态
sudo systemctl status rustdesk-hbbs
sudo systemctl status rustdesk-hbbr客户端配置
1. 下载客户端
访问RustDesk官方发布页面下载对应系统的客户端。
2. 配置客户端
- 打开RustDesk客户端
- 点击右上角的三个点,进入设置
- 选择"网络"选项
- 解锁网络配置
- 填入配置信息:
- ID服务器:你的服务器IP地址
- 中继服务器:你的服务器IP地址
- 公钥:之前复制的公钥内容
3. 测试连接
配置完成后,客户端会显示一个ID号码。在另一台设备上安装并配置好RustDesk客户端,输入这个ID即可建立连接。
进阶配置
启用强制加密
如果希望强制使用密钥验证,可以在启动服务时添加参数:
修改服务文件中的ExecStart行:
ExecStart=/home/rustdesk/rustdesk/server/hbbs -k _
ExecStart=/home/rustdesk/rustdesk/server/hbbr -k _这样客户端必须配置正确的公钥才能连接。
使用域名
如果你有域名,可以在客户端配置中使用域名替代IP地址,但请注意:
- 域名必须直接解析到服务器IP
- 不支持CDN加速的域名
常见问题解决
1. 连接失败
检查以下几点:
- 服务器防火墙是否开放了必要端口
- 服务是否正常运行:
sudo systemctl status rustdesk-hbbs rustdesk-hbbr - 客户端配置是否正确
2. 性能问题
- 确保服务器网络带宽充足
- 可以考虑升级服务器配置
- 检查是否有其他程序占用资源
3. 安全考虑
- 建议启用强制加密
- 定期更新RustDesk版本
- 使用防火墙限制访问来源
总结
通过本教程,你已经成功搭建了自己的RustDesk远程桌面服务器。这个方案具有以下优势:
- 完全掌控:数据不经过第三方服务器
- 成本低廉:最低1C1G服务器即可满足需求
- 安全可靠:开源代码,支持端到端加密
- 性能优秀:基于Rust的高效实现
现在你可以享受安全、高效的远程桌面服务了!如果遇到问题,建议查看官方文档或者在GitHub上寻求帮助。
