مدیریت پیشرفته و حرفهای سرورهای WireGuard VPN همراه با داشبورد گرافیکی و API قدرتمند.
- ویژگیها
- نصب سریع
- نیازمندیها
- راهنمای استفاده
- API Endpoints
- پشتیبانگیری و بازیابی
- ساختار پروژه
- فعالسازی SSL
- لایسنس
- ✅ مدیریت کامل سرور WireGuard
- ✅ تعریف و مدیریت کاربران (Peers)
- ✅ تعیین محدودیت پهنای باند و زمان برای هر کاربر
- ✅ تولید QR Code تنظیمات کاربران
- ✅ مانیتورینگ زنده منابع سیستم (CPU, RAM, Network)
- ✅ ارسال هشدار از طریق تلگرام
- ✅ پشتیبانگیری و بازیابی تنظیمات کاربران و سرور
- ✅ نصب و راهاندازی سریع تنها با یک دستور
- ✅ رابط کاربری مدرن، واکنشگرا و مبتنی بر Bootstrap 5
apt update && apt install git -y && git clone https://github.com/iPmartNetwork/iPWGDashboard && cd iPWGDashboard && chmod +x install.sh && ./install.sh
apt update && apt install git -y && git clone https://github.com/iPmartNetwork/iPWGDashboard && cd iPWGDashboard && chmod +x installV2.sh && ./installV2.sh
- سیستم عامل: Ubuntu 20.04/22.04
- Python 3.8+
- WireGuard
- Nginx (برای SSL و Reverse Proxy)
- Certbot (برای صدور گواهی SSL)
cd iPWGDashboard
./install.sh # نصب مجدد یا بروزرسانی
python3 src/dashboard.pyhttps://<your-server-ip>:10086
POST /api/add_peer| پارامتر | توضیح |
|---|---|
| name | نام کاربر |
| limit | محدودیت حجم (MB) |
| time | محدودیت زمان (دقیقه) |
مثال:
curl -X POST https://<server>/api/add_peer -d "name=user1&limit=5000&time=1440"GET /api/peers_statusمثال:
curl https://<server>/api/peers_statusPOST /api/remove_peer| پارامتر | توضیح |
|---|---|
| name | نام کاربر |
python3 src/Utilities.py --backuppython3 src/Utilities.py --restore /path/to/backup_file.jsoniPWGDashboard/
├── install.sh # اسکریپت نصب سریع
└── src/
├── dashboard.py # فایل اصلی اجرای داشبورد (Backend)
├── Utilities.py # ابزارهای کمکی (Backup, Restore, Monitoring)
├── gunicorn.conf.py # تنظیمات گونیکورن برای اجرای بهینه
└── certbot.ini # تنظیمات صدور گواهی SSL
- install.sh: نصب خودکار پیشنیازها و راهاندازی پروژه
- dashboard.py: پیادهسازی Backend و API با استفاده از Flask
- Utilities.py: شامل توابع پشتیبانگیری، بازیابی و مدیریت منابع سیستم
- gunicorn.conf.py: بهینهسازی اجرای برنامه برای محیطهای تولیدی
- certbot.ini: تنظیمات لازم برای Certbot جهت صدور گواهی SSL
SSL به صورت خودکار از طریق Certbot فعال میشود. همچنین میتوانید به صورت دستی تنظیمات Nginx را به شکل زیر انجام دهید:
server {
listen 443 ssl;
server_name your-domain.com;
ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:10086;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}برای فعال کردن هشدارهای تلگرام، Bot Token و Chat ID را در فایل src/certbot.ini تنظیم کنید.
این پروژه تحت لایسنس MIT ارائه میشود. استفاده، توزیع و تغییر آن کاملاً آزاد است.