arkonsadter b809e84220 feat: add security system with system-wide proxy, DNS protection and encryption
- System-wide proxy: automatic Windows proxy configuration for all apps
- DNS leak protection: force all DNS queries through VPN
- Config encryption: AES-256-GCM encryption for all config files
- File protection: strict access permissions for config directory
- Leak detection: built-in security check system
- Kill Switch: temporarily disabled (will be improved in next version)

Security features:
✓ Automatic system proxy setup
✓ DNS leak protection (optional)
✓ AES-256-GCM config encryption
✓ File and directory protection
✓ Security leak checker
⚠ Kill Switch disabled (caused internet blocking issues)

Emergency recovery scripts included:
- ОТКЛЮЧИТЬ_KILLSWITCH.bat
- EMERGENCY_FIX_INTERNET.bat
- ЕСЛИ_СЛОМАЛСЯ_ИНТЕРНЕТ.txt

Documentation:
- Markdown/SECURITY_GUIDE.md - full security guide
- БЕЗОПАСНОСТЬ_БЫСТРЫЙ_СТАРТ.md - quick start guide
- CHANGELOG_SECURITY.md - detailed changelog
2026-04-12 19:01:24 +06:00
2026-04-05 20:33:30 +06:00
2026-04-05 20:33:30 +06:00
2026-04-05 20:33:30 +06:00
2026-04-05 20:33:30 +06:00
2026-04-05 20:33:30 +06:00

VPN Client (Go)

VPN клиент на Golang с поддержкой VLESS протокола и подписок.

🚀 Возможности

  • Поддержка WireGuard
  • Поддержка VLESS протокола через Xray
  • Управление подписками
  • Автоматическое обновление конфигураций из подписок
  • Тестирование серверов (ping)
  • Детальное логирование
  • Статистика трафика для WireGuard
  • Кроссплатформенность (Windows, Linux, macOS)
  • Системный прокси для всего ПК
  • ⚠️ Kill Switch (временно отключен)
  • Защита от DNS утечек
  • Шифрование конфигураций (AES-256-GCM)
  • Защита файлов и директорий
  • Проверка утечек безопасности

Требования

  • Go 1.21 или выше
  • Xray-core (автоматически загружается и используется из папки xray)
  • WireGuard (для Windows: https://www.wireguard.com/install/, для Linux: apt install wireguard или yum install wireguard-tools)

Установка

Инициализация зависимостей

# Windows
init_gui.bat

# Linux/macOS
chmod +x init_gui.sh
./init_gui.sh

Сборка GUI версии

# Windows
build_gui.bat

# Linux/macOS
chmod +x build_gui.sh
./build_gui.sh

Сборка CLI версии (опционально)

# Windows
build.bat

# Linux/macOS
chmod +x build.sh
./build.sh

Использование

Запуск GUI (по умолчанию)

# Windows
vpn-client-gui.exe

# Linux/macOS
./vpn-client-gui

Запуск CLI режима

# Windows
vpn-client-gui.exe --cli

# Linux/macOS
./vpn-client-gui --cli

Основные возможности CLI

WireGuard

  • управление конфигами (добавить / удалить / список)
  • подключение
  • статистика трафика

VLESS

  • управление конфигами
  • подключение через Xray
  • ping-тест серверов

Подписки

  • добавление / удаление
  • обновление конфигураций
  • просмотр и тест конфигов

Статус

  • текущее подключение
  • время сессии
  • информация о прокси
  • трафик (WireGuard)

📁 Структура проекта

.
├── main.go
├── internal/
│   ├── cli/
│   ├── config/
│   ├── wireguard/
│   ├── vless/
│   ├── subscription/
│   ├── vpn/
│   └── logger/
├── .vpn_client/
└── logs/

Конфигурация

Все конфигурационные файлы хранятся в папке .vpn_client/:

  • configs.json - конфигурации VLESS
  • subscriptions.json - подписки
  • state.json - текущее состояние подключения

Логи

Логи сохраняются в папке logs/:

  • vless.log - основной лог
  • vless_access.log - лог доступа (IP, подключения)
  • vless_error.log - лог ошибок
  • vless_traffic_*.log - логи трафика для каждого подключения

Прокси

После подключения к VLESS серверу, SOCKS5 прокси доступен по адресу:

127.0.0.1:10808

Системный прокси настраивается автоматически! VPN будет работать для всех приложений Windows.

Для ручной настройки в браузере или других приложениях используйте указанный выше адрес.

🔒 Безопасность

Клиент включает комплексную систему безопасности:

Системный прокси

Автоматически настраивается при подключении - VPN работает для всех приложений Windows.

Kill Switch

⚠️ Временно отключен в этой версии из-за проблем с блокировкой интернета. Будет доработан и добавлен в следующей версии.

Защита DNS

Принудительно направляет все DNS запросы через VPN, предотвращая DNS утечки.

Шифрование конфигураций

Все конфигурационные файлы шифруются с использованием AES-256-GCM и привязываются к вашему компьютеру.

Проверка утечек

Встроенная система проверки DNS утечек и статуса защитных механизмов.

Подробнее: См. Руководство по безопасности

Отличия от Python версии

  • Более быстрая работа
  • Один исполняемый файл без зависимостей
  • Меньшее потребление памяти
  • Нативная кроссплатформенность
  • Полная поддержка WireGuard
  • Полная поддержка VLESS
  • Автоматическая настройка системного прокси
  • Kill Switch и защита от утечек
  • Шифрование конфигураций
  • Комплексная система безопасности

Разработка

Добавление новых функций

  1. Создайте новый пакет в internal/
  2. Реализуйте функциональность
  3. Интегрируйте в CLI (internal/cli/cli.go)

Тестирование

go test ./...

Лицензия

AGPL 3.0

Description
No description provided
Readme AGPL-3.0 9 MiB
2026-04-12 20:03:11 +07:00
Languages
Go 93.1%
Inno Setup 3.4%
Makefile 2.9%
Shell 0.3%
Batchfile 0.3%