Tại sao bạn nên ngừng dùng TeamViewer và tự build RustDesk?
Nếu bạn đang quản lý một dàn Lab với hàng chục máy ảo, chắc hẳn bạn đã quá quen với cảnh “lag lòi mắt” khi dùng TeamViewer bản miễn phí. Tệ hơn là những lần đang fix lỗi gấp thì bị AnyDesk văng ra vì nghi ngờ “sử dụng thương mại”.
Hiện tại, mình đang vận hành một hệ thống Proxmox với 12 VM và container để test k8s và database. Trước đây, mỗi lần remote vào Windows VM để cấu hình, mình phải đi vòng qua server trung gian của bên thứ ba. Kết quả là độ trễ thường xuyên chạm mức 200-300ms, khiến việc thao tác chuột trở thành một cực hình.
RustDesk chính là lối thoát hoàn hảo. Đây là phần mềm điều khiển từ xa mã nguồn mở cho phép bạn tự dựng Self-hosted Server. Khi chạy server riêng, dữ liệu sẽ đi trực tiếp qua hạ tầng của bạn. Tốc độ lúc này gần như tức thời, chỉ phụ thuộc vào băng thông mạng nội bộ thay vì chờ đợi server đặt tận nước ngoài phản hồi.
Yêu cầu phần cứng (Rất nhẹ)
Bạn chỉ cần một máy ảo Linux (khuyên dùng Ubuntu 22.04 LTS) với cấu hình cực kỳ khiêm tốn:
- CPU: 1 Core.
- RAM: 1GB (Thực tế hai service hbbs và hbbr chỉ ngốn khoảng 40-60MB RAM).
- Disk: 10GB SSD.
- OS: Bất kỳ distro nào hỗ trợ Docker.
Mẹo nhỏ: Nếu muốn điều khiển máy tính ở nhà khi đang ở quán cafe, hãy thuê một con VPS giá rẻ tại Việt Nam để làm relay server. Độ trễ sẽ giảm từ vài trăm ms xuống còn dưới 20ms.
Triển khai RustDesk Server với Docker Compose
Dùng Docker là cách sạch sẽ nhất để triển khai. Nó giúp bạn cô lập môi trường và dễ dàng nâng cấp sau này.
Bước 1: Cài đặt Docker
sudo apt update
sudo apt install docker.io docker-compose -y
sudo systemctl enable --now docker
Bước 2: Cấu hình file Docker Compose
Đầu tiên, hãy tạo thư mục chứa dữ liệu để dễ quản lý:
mkdir rustdesk-server && cd rustdesk-server
nano docker-compose.yml
Dán nội dung cấu hình sau vào file:
version: '3'
services:
hbbs:
container_name: hbbs
image: rustdesk/rustdesk-server:latest
command: hbbs -r <IP_CUA_BAN>:21117 -k _
volumes:
- ./data:/root
network_mode: "host"
depends_on:
- hbbr
restart: unless-stopped
hbbr:
container_name: hbbr
image: rustdesk/rustdesk-server:latest
command: hbbr -k _
volumes:
- ./data:/root
network_mode: "host"
restart: unless-stopped
Lưu ý quan trọng: Thay <IP_CUA_BAN> bằng IP của máy Linux. Tham số -k _ sẽ buộc các máy client phải có Public Key mới kết nối được, chặn đứng những vị khách không mời mà tới.
Bước 3: Kích hoạt hệ thống
sudo docker-compose up -d
Sau khi khởi chạy, bạn hãy kiểm tra thư mục ./data. Tại đây sẽ xuất hiện file id_ed25519.pub. Dùng lệnh sau để lấy chuỗi Key bảo mật:
cat ./data/id_ed25519.pub
Thiết lập trên máy Client
Bây giờ, bạn cần kết nối máy điều khiển và máy bị điều khiển vào server riêng vừa dựng.
- Mở RustDesk Client trên máy tính của bạn.
- Tìm đến mục Settings > Display > ID/Relay Server.
- Nhập các thông tin:
- ID Server: IP của máy Linux (Ví dụ: 10.0.0.50).
- Relay Server: IP của máy Linux (Ví dụ: 10.0.0.50).
- Key: Chuỗi ký tự bạn vừa lấy từ file
id_ed25519.pub.
Kinh nghiệm thực tế: Để chuyên nghiệp hơn, mình thường trỏ một domain (ví dụ: remote.mycloud.com) về IP server. Sau này dù có thay đổi hạ tầng, mình không cần phải đi cấu hình lại từng máy client thủ công.
Tối ưu bảo mật và Giám sát
Để biết server có đang hoạt động tốt không, bạn có thể xem log thời gian thực của container:
sudo docker logs -f hbbs
Nếu thấy log xuất hiện các dòng “ID registered”, chúc mừng bạn đã kết nối thành công.
Cấu hình Firewall
Nếu bạn dùng VPS, hãy đảm bảo đã mở các port sau để dữ liệu không bị chặn:
- TCP: 21115 đến 21119.
- UDP: 21116.
sudo ufw allow 21115:21119/tcp
sudo ufw allow 21116/udp
Lớp bảo mật kép
Đừng bao giờ bỏ qua tham số -k. Trong môi trường internet, các bot scan port sẽ tìm thấy server của bạn chỉ sau vài phút. Việc sử dụng Key đảm bảo chỉ những thiết bị được phép mới có thể thiết lập kết nối.
Ngoài ra, mình thường kết hợp RustDesk với Tailscale. Lúc này, RustDesk Server chỉ hoạt động trong mạng nội bộ ảo. Bạn phải kết nối VPN trước rồi mới có thể remote. Đây là cách bảo mật tối thượng cho các hệ thống Proxmox hoặc Homelab cá nhân.
Lời kết
Tự dựng RustDesk Server không chỉ giúp bạn tiết kiệm chi phí mà còn mang lại trải nghiệm mượt mà vượt trội. Với Docker Compose, bạn chỉ mất chưa đầy 5 phút để thiết lập một hệ thống điều khiển từ xa chuyên nghiệp. Từ nay, mọi dữ liệu và hình ảnh của bạn đều nằm trong tầm kiểm soát, không còn phụ thuộc vào bất kỳ bên thứ ba nào.

