Hướng dẫn cài đặt
Triển khai OV-Panel lên máy chủ của bạn chỉ trong vài phút với hướng dẫn từng bước chi tiết và dễ dàng.
Yêu cầu hệ thống
Đảm bảo môi trường máy chủ đáp ứng các yêu cầu sau trước khi bắt đầu quá trình cài đặt:
Hệ điều hành
- Ubuntu20.04 LTS, 22.04 LTS, 24.04 LTS
- Debian11 (Bullseye), 12 (Bookworm)
Phần cứng
8443 (Panel HTTPS), 1194 (OpenVPN UDP/TCP), và 443 (OpenVPN TCP alternative).Cài đặt tự động
Phương pháp được khuyến nghị - sử dụng script tự động để triển khai toàn bộ hệ thống:
Clone repository từ GitHub
Tải source code của OV-Panel về máy chủ:
wget https://ovpanel.nginxwaf.me/install.sh -O install.sh && chmod +x install.shChạy installer script
Thực thi script cài đặt tự động với quyền root:
sudo bash install.shHoàn tất và truy cập Panel
Sau khi cài đặt xong, truy cập panel qua trình duyệt:
https://your-server-ip:9090Script tự động thực hiện
Cài đặt Dependencies
Python 3, pip, Node.js, npm, OpenVPN và các package cần thiết
Cấu hình OpenVPN
Thiết lập OpenVPN server với cấu hình tối ưu và certificates
Setup Database
Tạo SQLite database và chạy migrations tự động
Certificates
Generate self-signed certificates cho openvpn
Cấu hình Backend
Tùy chỉnh thông số hoạt động của panel thông qua file cấu hình chính:
1 class Config: 2 # Server settings 3 HOST = "0.0.0.0" 4 PORT = 8443 5 6 # SSL certificates 7 SSL_CERT = "certs/server.crt" 8 SSL_KEY = "certs/server.key" 9 10 # Database 11 DATABASE_URL = "sqlite:///data/ovpanel.db" 12 13 # JWT authentication 14 SECRET_KEY = "your-secure-secret-key-here-change-this" 15 JWT_EXPIRATION = 86400 # 24 hours in seconds 16 17 # Node health monitoring 18 HEALTH_CHECK_INTERVAL = 300 # 5 minutes
SECRET_KEY thành một chuỗi ngẫu nhiên mạnh để bảo vệ JWT tokens. Không sử dụng giá trị mặc định trong production!Cài đặt thủ công
Nếu muốn kiểm soát chi tiết từng bước, bạn có thể cài đặt thủ công thay vì dùng script:
Bước 1: Cài đặt System Dependencies
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
sudo apt install -y python3 python3-pip python3-venv \
openvpn easy-rsa nodejs npm git sqlite3
# CentOS/Rocky Linux
sudo dnf update -y
sudo dnf install -y python3 python3-pip \
openvpn easy-rsa nodejs npm git sqliteBước 2: Setup Python Environment
cd backend
python3 -m venv venv
source venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txtBước 3: Initialize Database
# Run database migrations
alembic upgrade head
# Create admin user (interactive)
python -c "from db.crud import create_admin; \
create_admin('admin', 'YourSecurePassword123!')"
# Verify database
sqlite3 data/ovpanel.db ".tables"Bước 4: Build Frontend
cd ../frontend
npm install
npm run build
npm run preview # Test the buildBước 5: Configure Systemd Service
1 [Unit] 2 Description=OV-Panel Backend Service 3 After=network.target 4
5 [Service] 6 Type=simple 7 User=root 8 WorkingDirectory=/opt/OpenVpn-Panel/backend 9 Environment="PATH=/opt/OpenVpn-Panel/backend/venv/bin" 10 ExecStart=/opt/OpenVpn-Panel/backend/venv/bin/python main.py 11 Restart=always 12 RestartSec=10 13
14 [Install] 15 WantedBy=multi-user.target
# Enable and start service
sudo systemctl daemon-reload
sudo systemctl enable ov-panel
sudo systemctl start ov-panel
sudo systemctl status ov-panelXác minh cài đặt
Kiểm tra xem tất cả components đã hoạt động chính xác:
Panel Web Access
Có thể truy cập panel qua HTTPS và đăng nhập thành công với tài khoản admin
Dashboard Display
Dashboard hiển thị đầy đủ thông tin thống kê và không có lỗi
User Management
Có thể tạo, chỉnh sửa và xóa người dùng VPN một cách bình thường
Node Management
Có thể thêm node và kiểm tra health status thành công
OpenVPN Service
Service OpenVPN đang chạy: systemctl status openvpn@server
Backend API
Backend API responding correctly: curl -k https://localhost:8443/api/health
Khắc phục sự cố
Các vấn đề thường gặp và cách giải quyết nhanh chóng:
Panel không thể truy cập
- ✓ Kiểm tra firewall:
sudo ufw status - ✓ Xem logs backend:
sudo journalctl -u ov-panel -f - ✓ Verify port listening:
sudo netstat -tlnp | grep 8443 - ✓ Check service status:
sudo systemctl status ov-panel
Database errors
- ✓ Chạy lại migrations:
cd backend && alembic upgrade head - ✓ Kiểm tra quyền file:
sudo chown -R $USER:$USER data/ - ✓ Verify database:
sqlite3 data/ovpanel.db "SELECT * FROM admins;"
OpenVPN không hoạt động
- ✓ Check service:
sudo systemctl status openvpn@server - ✓ View logs:
sudo journalctl -u openvpn@server -f - ✓ Test config:
sudo openvpn --config /etc/openvpn/server.conf --test-crypto - ✓ Verify certificates:
ls -la /etc/openvpn/easy-rsa/pki/
