Многопользовательская версия GoVPN с веб-админкой и системой аутентификации.
- Многопользовательская система - поддержка множества пользователей с уникальными учетными записями
- Веб-админка - удобный интерфейс для управления пользователями
- API аутентификация - безопасный доступ через API ключи
- WebSocket и UDP - поддержка обоих протоколов
- Docker контейнеризация - легкий деплой через docker-compose
- SSL/TLS - шифрование всех соединений
- IP-менеджмент - автоматическое управление IP-адресами
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Client │────│ Nginx │────│ VPN │
│ Apps │ │ Reverse │ │ Server │
└─────────────┘ │ Proxy │ │ (wss/udp) │
└─────────────┘ └─────────────┘
│ │
┌─────────────┐ ┌─────────────┐
│ Admin │────│ Database │
│ API │ │ (PostgreSQL)│
└─────────────┘ └─────────────┘
│
┌─────────────┐
│ Admin │
│ Web UI │
└─────────────┘
- Docker
- Docker Compose
- Linux/macOS (для TUN/TAP устройств)
git clone <your-repo-url>
cd govpn-multicp .env.example .envJWT_SECRET=your_secure_jwt_secret
ADMIN_API_KEY=your_admin_api_keydocker-compose up -d --build- URL:
http://localhost:3003(порт 3003 для локальной разработки) - Логин:
admin - Пароль:
admin123
- Войдите в админ-панель
- Перейдите в раздел "Пользователи"
- Создайте нового пользователя
- Скачайте конфигурационный файл для клиента
- Используйте конфиг в клиентском приложении
GET /api/vpn/pick-ip- получить IP адресDELETE /api/vpn/delete-ip- освободить IPPOST /api/vpn/keepalive-ip- обновить сессиюGET /api/vpn/list-ip- список IP адресов
POST /api/auth/login- аутентификацияGET /api/users- список пользователейPOST /api/users- создать пользователяDELETE /api/users/:id- удалить пользователяGET /api/users/:id/config- скачать конфиг
- Все соединения шифруются через TLS
- API ключи для аутентификации
- JWT токены для веб-интерфейса
- Ограничение прав доступа
- Защита от DDoS атак
- Активные подключения
- Статистика трафика
- Состояние сервера
- Управление сессиями
- Логирование действий
Если возникают проблемы:
- Проверьте логи:
docker-compose logs -f vpn-server
docker-compose logs -f admin-api
docker-compose logs -f nginx- Убедитесь, что права доступа к TUN устройству корректны:
ls -la /dev/net/tun- Проверьте сетевые настройки и firewall.
Для production деплоя используйте:
# Установите все переменные в .env
# Запустите production compose
docker-compose -f docker-compose.prod.yml up -d --build- Fork проекта
- Создайте feature ветку
- Сделайте commit ваших изменений
- Push в ветку
- Откройте Pull Request
MIT License
Для вопросов и поддержки создайте issue в репозитории.