Triển khai Moltbot trên VPS là giải pháp lý tưởng cho người dùng muốn vận hành Moltbot (trước đây là OpenClaw), một trợ lý AI cá nhân thông minh có khả năng tự động hóa các công việc thực tế. Bài viết này sẽ hướng dẫn chi tiết cách cài đặt và cấu hình an toàn trên môi trường VPS, giúp bạn nhanh chóng triển khai một trợ lý AI tự hành hoạt động ổn định 24/7, khắc phục hoàn toàn hạn chế của việc chạy trên máy tính cá nhân.
Yêu cầu hệ thống và cấu hình khuyến nghị
Để đảm bảo Moltbot hoạt động ổn định và hiệu quả 24/7, khuyến nghị triển khai trên một máy chủ ảo (VPS) đáp ứng các thông số kỹ thuật sau:
- Hệ điều hành: Ubuntu 20.04 LTS hoặc mới hơn.
- CPU: Tối thiểu 4 vCPU.
- RAM: Tối thiểu 8 GB.
- Lưu trữ: 30 GB – 50 GB ổ cứng SSD hoặc NVMe.
Bạn có thể tham khảo các gói VPS đáp ứng cấu hình trên tại Vietnix.
Hướng dẫn cài đặt Moltbot trên VPS Ubuntu
Bước 1: Chuẩn bị VPS
Bước 2: Cài đặt Docker
Bước 3: Tạo user riêng cho Moltbot (khuyến nghị)
Bước 4: Tải mã nguồn và cài đặt bằng Docker
Bước 5. Cách chạy lệnh moltbot trên Docker
Bước 6: Setup systemd để tự động khởi động
Bước 1: Chuẩn bị VPS
Sau khi mua VPS, bạn sẽ nhận được địa chỉ IP và password root, bạn sử dụng Terminal để kết nối đến VPS bằng lệnh sau:
ssh root@your-vps-ipTiếp theo, bạn thực hiện cập nhật hệ thống với lệnh:
apt update && apt upgrade -yBước 2: Cài đặt Docker
Đầu tiên, bạn tải về và thực thi kịch bản cài đặt tự động của Docker bằng các lệnh sau:
curl -fsSL https://get.docker.com -o install-docker.sh
sh install-docker.shSau khi quá trình cài đặt hoàn tất, bạn kiểm tra phiên bản của Docker và Docker Compose để xác nhận cài đặt thành công:
docker --version
docker compose version
Bước 3: Tạo user riêng cho Moltbot (khuyến nghị)
Để tăng cường bảo mật, bạn nên tạo một người dùng riêng tên là moltbot thay vì sử dụng tài khoản root.
Đầu tiên, bạn tạo người dùng mới với lệnh:
adduser moltbot
usermod -aG docker moltbot
su - moltbot
Bước 4: Tải mã nguồn và cài đặt bằng Docker
Để đảm bảo việc nâng cấp và bảo trì dễ dàng, bạn nên cài đặt Moltbot bằng Docker. Đầu tiên, bạn tải mã nguồn và thực thi kịch bản cài đặt được cung cấp sẵn:
cd ~
git clone https://github.com/moltbot/moltbot.git
cd moltbot
./docker-setup.shKịch bản này sẽ tự động build Docker image và khởi chạy wizard. Bạn chỉ cần làm theo các bước để chọn nhà cung cấp mô hình, nhập API key và cấu hình các kênh giao tiếp.
Sau khi bạn hoàn tất trình hướng dẫn, script sẽ tự động khởi động Moltbot gateway bằng Docker Compose.
Bước 5. Cách chạy lệnh moltbot trên Docker
Sử dụng clawdbot qua Docker có thể có một số hạn chế, ví dụ như không thể dùng lệnh moltbot hoặc clawdbot như bình thường mà sẽ cần chạy thông qua một container trung gian được tích hợp sẵn khi cài theo hướng dẫn ở trên.
Ví dụ bạn cần chạy lệnh clawdbot onboard thì chạy lệnh như sau:
docker compose "${COMPOSE_ARGS[@]}" run --rm moltbot-cli onboard --no-install-daemonVì vậy để khắc phục, bạn cần thêm hàm alias vào tập tin ~/.ba`shrc, mở tập tin này và chèn vào cuối cùng:
moltbot() {
(
cd /home/moltbot/moltbot || {
echo "❌ Không tìm thấy thư mục /home/moltbot/moltbot"
return 1
}
docker compose "${COMPOSE_ARGS[@]}" run --rm moltbot-cli "$@"
)
}
clawdbot() {
moltbot "$@"
}Tiếp theo, bạn tải lại tệp cấu hình để áp dụng thay đổi:
source ~/.bashrcTừ giờ, bạn có thể chạy lệnh moltbot hoặc clawdbot trực tiếp từ terminal.
Bước 6: Setup systemd để tự động khởi động
Để đảm bảo Moltbot luôn hoạt động, kể cả sau khi VPS khởi động lại, bạn cần cấu hình dịch vụ Docker và thiết lập một cron job. Bạn chạy lệnh sau để dịch vụ Docker tự khởi động cùng hệ thống:
sudo systemctl enable dockerTiếp theo, bạn tạo một tác vụ định kỳ để đảm bảo container của Moltbot luôn chạy. Bạn mở trình chỉnh sửa crontab:
crontab -eSau đó, bạn thêm dòng sau vào tệp để hệ thống tự kiểm tra và khởi động lại container mỗi 5 phút:
*/5 * * * * cd /home/moltbot/moltbot && docker compose up -d moltbot-gatewayTruy cập Control UI an toàn qua SSH Tunnel
Cách 1: Tạo SSH Tunnel đơn giản
Cách 2: Sử dụng Tailscale VPN
Cách 3: Cấu hình Reverse Proxy với Xác thực (Nâng cao)
Giao diện Control UI hoạt động trên cổng 18789. Vì lý do bảo mật, bạn không nên mở cổng này ra ngoài internet. Thay vào đó, bạn nên sử dụng SSH tunnel để truy cập một cách an toàn.
Cách 1: Tạo SSH Tunnel đơn giản
Trên máy tính cá nhân, bạn thực thi lệnh sau:
ssh -L 8789:localhost:18789 moltbot@YOUR_VPS_IPLệnh này sẽ tạo một đường hầm (tunnel) an toàn, chuyển tiếp cổng 8789 trên máy của bạn tới cổng 18789 trên VPS.
Bạn giữ nguyên cửa sổ Terminal đang chạy lệnh và truy cập vào địa chỉ sau trên trình duyệt:
http://localhost:8789/Khi bạn đóng cửa sổ Terminal, kết nối sẽ tự động ngắt.
Cách 2: Sử dụng Tailscale VPN
Tailscale là một dịch vụ VPN giúp bạn tạo một mạng riêng ảo (mesh network) giữa các thiết bị của mình. Điều này cho phép bạn kết nối an toàn mà không cần cấu hình phức tạp.
Bạn cài đặt và khởi động Tailscale trên VPS bằng các lệnh sau:
curl -fsSL https://tailscale.com/install.sh | sh
tailscale upSau đó, bạn làm theo hướng dẫn trên màn hình để xác thực thiết bị.
Bạn tiếp tục cài đặt Tailscale trên các thiết bị khác như máy tính, điện thoại mà bạn muốn dùng để truy cập. Để lấy địa chỉ IP của VPS trong mạng Tailscale, bạn chạy lệnh:
tailscale ipCuối cùng, bạn truy cập Control UI qua địa chỉ IP đó (thường có dạng 100.x.x.x) trên trình duyệt:
http://100.x.x.x:18789/Kết nối này hoàn toàn riêng tư trong mạng VPN của bạn.
Cách 3: Cấu hình Reverse Proxy với Xác thực (Nâng cao)
Nếu bạn thực sự cần truy cập dịch vụ qua internet, bạn có thể cấu hình Nginx làm reverse proxy. Phương pháp này sẽ được bảo vệ bằng mật khẩu và mã hóa HTTPS.
Lưu ý
Đây là một kỹ thuật phức tạp và tiềm ẩn rủi ro bảo mật, bạn chỉ nên thực hiện khi đã có kinh nghiệm về quản trị máy chủ web.
Bước 1: Cài đặt Nginx và Certbot (Let’s Encrypt)
Đầu tiên, bạn cài đặt Nginx, Certbot và các công cụ hỗ trợ:
sudo apt update
sudo apt install -y nginx certbot python3-certbot-nginx
Bước 2: Tạo mật khẩu xác thực
Tiếp theo, bạn tạo một tệp chứa thông tin đăng nhập. Lệnh sau sẽ tạo người dùng admin:
sudo apt install -y apache2-utils # nếu chưa có htpasswd
sudo htpasswd -c /etc/nginx/.htpasswd adminHệ thống sẽ yêu cầu bạn nhập và xác nhận mật khẩu, file này chứa username:encrypted_password.
Bước 3: Cấu hình Nginx reverse proxy
Bạn tạo một tệp cấu hình Nginx mới:
sudo nano /etc/nginx/sites-available/openclawBạn dán nội dung sau vào tệp, thay your-domain.com bằng tên miền của bạn:
server {
listen 80;
server_name your-domain.com;
# Basic Auth – yêu cầu username/password khi truy cập
auth_basic "Restricted: OpenClaw Gateway";
auth_basic_user_file /etc/nginx/.htpasswd;
location / {
proxy_pass http://127.0.0.1:18789; # port gateway của OpenClaw
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade"; # Bắt buộc cho WebSocket (real-time chat/agent)
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}Sau đó, bạn kích hoạt cấu hình và tải lại Nginx:
sudo ln -s /etc/nginx/sites-available/openclaw /etc/nginx/sites-enabled/
sudo nginx -t # Kiểm tra syntax
sudo systemctl reload nginxBước 4: Lấy HTTPS cert miễn phí từ Let’s Encrypt
Bạn chạy Certbot để tự động lấy và cài đặt chứng chỉ SSL miễn phí:
sudo certbot --nginx -d your-domain.comBước 5: Cấu hình OpenClaw
Bạn cần cấu hình để OpenClaw nhận diện proxy là nguồn đáng tin cậy:
docker compose run --rm openclaw-cli config set gateway.trustedProxies '["127.0.0.1"]'
# Hoặc edit file ~/.openclaw/openclaw.json (trong volume):
gateway:
trustedProxies:
- "127.0.0.1"
auth:
mode: password # Nếu bạn enable password auth trong OpenClaw (khuyến khích thêm layer)
Restart gateway:
docker compose restart openclaw-gatewayBước 6: Kiểm tra
Cuối cùng, bạn truy cập https://your-domain.com. Trình duyệt sẽ yêu cầu bạn nhập tên người dùng (admin) và mật khẩu đã tạo.

Bạn có thể yên tâm rằng các tính năng chat qua Telegram và WhatsApp vẫn hoạt động bình thường, vì chúng sử dụng kết nối nội bộ và không bị ảnh hưởng bởi thiết lập này.
Ngoài ra, có một phương pháp khác đơn giản hơn là bạn sử dụng Cloudflare. Bạn có thể thiết lập một quy tắc bảo mật để chặn tất cả truy cập ngoại trừ địa chỉ IP của bạn. Tuy nhiên, bạn cần lưu ý rằng cách này sẽ tốn kém hơn vì nó đòi hỏi bạn phải có một VPN để duy trì địa chỉ IP cố định.
Hướng dẫn xử lý các lỗi thường gặp trên VPS
Port 18789 bị chặn
Lỗi hết bộ nhớ (Out of Memory)
Lỗi quyền truy cập Docker (Permission Denied)
Sự cố kết nối mạng
Port 18789 bị chặn
Một số nhà cung cấp VPS mặc định chặn các cổng kết nối. Để khắc phục, bạn cần mở cổng này trong firewall của VPS (ví dụ: ufw, iptables) và trong security group của nhà cung cấp. Tuy nhiên, bạn không nên mở cổng này ra internet công cộng vì lý do bảo mật.
Lỗi hết bộ nhớ (Out of Memory)
Nếu bạn thấy thông báo OOMKilled trong Docker logs, điều đó có nghĩa là VPS của bạn không đủ RAM. Bạn có thể áp dụng giải pháp tạm thời là tạo một swap file:
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfileĐể giải quyết triệt để, bạn nên nâng cấp gói VPS có dung lượng RAM lớn hơn.
Lỗi quyền truy cập Docker (Permission Denied)
Nếu bạn gặp lỗi từ chối quyền khi chạy lệnh Docker, bạn cần thêm người dùng hiện tại vào nhóm docker:
sudo usermod -aG docker $USER
newgrp dockerSự cố kết nối mạng
Nếu ứng dụng không thể kết nối đến các API bên ngoài, bạn hãy kiểm tra lại cấu hình DNS và firewall. Bạn có thể dùng lệnh curl https://api.anthropic.com để kiểm tra kết nối.
Moltbot mở ra một phương pháp linh hoạt để bạn tích hợp và triển khai các chatbot AI mạnh mẽ, giúp bạn tạo ra những trợ lý ảo thông minh, tùy chỉnh theo nhu cầu và hoàn toàn nằm trong tầm kiểm soát của bạn. Bạn hãy bắt đầu xây dựng chatbot đầu tiên ngay hôm nay để trực tiếp trải nghiệm và khai thác sức mạnh của Moltbot trong các dự án thực tế.
VIETNIX – DỊCH VỤ HOSTING, VPS TỐC ĐỘ CAO, ỔN ĐỊNH, BẢO MẬT
- Địa chỉ: 265 Hồng Lạc, Phường Bảy Hiền, Thành Phố Hồ Chí Minh
- Điện thoại: 1800 1093
- Email liên hệ: sales@vietnix.com.vn
- Website: https://vietnix.vn/

