feat(gui): add GUI (Test) implementation with documentation and admin support
- Add GUI (Test) module with Fyne-based interface (internal/gui/gui.go, internal/gui/server.go) - Add CLI monitoring capability (internal/cli/monitor.go) - Add main_cli.go entry point for CLI-only builds - Add comprehensive documentation suite covering setup, build, quick start, and changelog - Add admin manifest (admin.manifest) for Windows UAC elevation support - Add rsrc.syso.json configuration for resource embedding - Update .gitignore to exclude build scripts (*.bat, *.sh) - Update main.go and cli.go to support dual GUI (Test)/CLI modes - Update README.md with new project information - Enables users to build and run both GUI (Test)and CLI versions with proper admin privileges on Windows
This commit is contained in:
290
Markdown/GUI_GUIDE.md
Normal file
290
Markdown/GUI_GUIDE.md
Normal file
@@ -0,0 +1,290 @@
|
||||
# GUI Руководство пользователя
|
||||
|
||||
## Установка и запуск
|
||||
|
||||
### Windows
|
||||
|
||||
1. Инициализация зависимостей:
|
||||
```bash
|
||||
init_gui.bat
|
||||
```
|
||||
|
||||
2. Сборка приложения:
|
||||
```bash
|
||||
build_gui.bat
|
||||
```
|
||||
|
||||
3. Запуск:
|
||||
```bash
|
||||
vpn-client-gui.exe
|
||||
```
|
||||
|
||||
### Linux/macOS
|
||||
|
||||
1. Инициализация зависимостей:
|
||||
```bash
|
||||
chmod +x init_gui.sh
|
||||
./init_gui.sh
|
||||
```
|
||||
|
||||
2. Сборка приложения:
|
||||
```bash
|
||||
chmod +x build_gui.sh
|
||||
./build_gui.sh
|
||||
```
|
||||
|
||||
3. Запуск:
|
||||
```bash
|
||||
./vpn-client-gui
|
||||
```
|
||||
|
||||
## Интерфейс приложения
|
||||
|
||||
### Главное окно
|
||||
|
||||
Приложение имеет современный интерфейс с тремя основными вкладками:
|
||||
|
||||
1. **WireGuard** - управление WireGuard конфигурациями
|
||||
2. **VLESS** - управление VLESS конфигурациями
|
||||
3. **Подписки** - управление подписками на серверы
|
||||
|
||||
### Панель статуса
|
||||
|
||||
В верхней части окна отображается:
|
||||
- **Индикатор подключения** (серый/зеленый кружок)
|
||||
- **Статус**: "Не подключено" или "Подключено"
|
||||
- **Информация о подключении**:
|
||||
- Имя конфигурации
|
||||
- Тип протокола
|
||||
- Время подключения
|
||||
- Прокси адрес (для VLESS)
|
||||
- Статистика трафика (для WireGuard)
|
||||
|
||||
## Работа с WireGuard
|
||||
|
||||
### Добавление конфигурации
|
||||
|
||||
**Вручную:**
|
||||
1. Перейдите на вкладку "WireGuard"
|
||||
2. Нажмите "Добавить вручную"
|
||||
3. Введите имя конфигурации
|
||||
4. Вставьте текст конфигурации WireGuard
|
||||
5. Нажмите "Добавить"
|
||||
|
||||
**Из файла:**
|
||||
1. Нажмите "Из файла"
|
||||
2. Выберите файл конфигурации (.conf)
|
||||
3. Введите имя конфигурации
|
||||
4. Нажмите "Добавить"
|
||||
|
||||
### Подключение
|
||||
|
||||
1. Выберите конфигурацию из списка
|
||||
2. Нажмите "Подключиться"
|
||||
3. Дождитесь подтверждения подключения
|
||||
|
||||
### Удаление конфигурации
|
||||
|
||||
1. Выберите конфигурацию из списка
|
||||
2. Нажмите "Удалить"
|
||||
3. Подтвердите удаление
|
||||
|
||||
## Работа с VLESS
|
||||
|
||||
### Добавление конфигурации
|
||||
|
||||
1. Перейдите на вкладку "VLESS"
|
||||
2. Нажмите "Добавить"
|
||||
3. Введите имя конфигурации
|
||||
4. Вставьте VLESS URL (начинается с `vless://`)
|
||||
5. Нажмите "Добавить"
|
||||
|
||||
### Тестирование сервера
|
||||
|
||||
1. Выберите конфигурацию из списка
|
||||
2. Нажмите "Тест (Ping)"
|
||||
3. Дождитесь результатов:
|
||||
- Пинг в миллисекундах
|
||||
- Оценка качества (Отлично/Хорошо/Средне/Плохо)
|
||||
|
||||
### Подключение
|
||||
|
||||
1. Выберите конфигурацию из списка
|
||||
2. Нажмите "Подключиться"
|
||||
3. После подключения используйте SOCKS5 прокси: `127.0.0.1:10808`
|
||||
|
||||
### Удаление конфигурации
|
||||
|
||||
1. Выберите конфигурацию из списка
|
||||
2. Нажмите "Удалить"
|
||||
3. Подтвердите удаление
|
||||
|
||||
## Работа с подписками
|
||||
|
||||
### Добавление подписки
|
||||
|
||||
1. Перейдите на вкладку "Подписки"
|
||||
2. Нажмите "Добавить"
|
||||
3. Введите имя подписки
|
||||
4. Введите URL подписки
|
||||
5. Нажмите "Добавить"
|
||||
|
||||
### Обновление конфигураций
|
||||
|
||||
1. Выберите подписку из списка
|
||||
2. Нажмите "Обновить конфиги"
|
||||
3. Дождитесь загрузки конфигураций
|
||||
4. Конфиги появятся на вкладке "VLESS" с префиксом `[Имя подписки]`
|
||||
|
||||
### Просмотр конфигураций
|
||||
|
||||
1. Выберите подписку из списка
|
||||
2. Нажмите "Показать конфиги"
|
||||
3. Откроется окно со списком всех конфигов из подписки
|
||||
|
||||
### Тестирование серверов
|
||||
|
||||
1. Выберите подписку из списка
|
||||
2. Нажмите "Тест серверов"
|
||||
3. Дождитесь завершения тестирования всех серверов
|
||||
4. Откроется окно с результатами:
|
||||
- Топ-10 лучших серверов по пингу
|
||||
- Количество доступных/недоступных серверов
|
||||
|
||||
### Удаление подписки
|
||||
|
||||
1. Выберите подписку из списка
|
||||
2. Нажмите "Удалить"
|
||||
3. Подтвердите удаление
|
||||
|
||||
## Отключение от VPN
|
||||
|
||||
1. Нажмите кнопку "Отключиться" внизу окна
|
||||
2. Подтвердите отключение
|
||||
3. Статус изменится на "Не подключено"
|
||||
|
||||
## Настройка браузера
|
||||
|
||||
После подключения к VLESS серверу настройте браузер:
|
||||
|
||||
### Firefox
|
||||
|
||||
1. Откройте: `about:preferences#general`
|
||||
2. Прокрутите до "Параметры сети"
|
||||
3. Нажмите "Настроить..."
|
||||
4. Выберите "Ручная настройка прокси"
|
||||
5. SOCKS Host: `127.0.0.1`
|
||||
6. Port: `10808`
|
||||
7. Выберите "SOCKS v5"
|
||||
8. Отметьте "Использовать прокси DNS при использовании SOCKS v5"
|
||||
9. Нажмите "OK"
|
||||
|
||||
### Chrome (с расширением Proxy SwitchyOmega)
|
||||
|
||||
1. Установите расширение "Proxy SwitchyOmega"
|
||||
2. Создайте новый профиль
|
||||
3. Protocol: SOCKS5
|
||||
4. Server: `127.0.0.1`
|
||||
5. Port: `10808`
|
||||
6. Сохраните и активируйте профиль
|
||||
|
||||
## CLI режим
|
||||
|
||||
Для использования в консольном режиме (без GUI):
|
||||
|
||||
```bash
|
||||
# Windows
|
||||
vpn-client-gui.exe --cli
|
||||
|
||||
# Linux/macOS
|
||||
./vpn-client-gui --cli
|
||||
```
|
||||
|
||||
## Логи
|
||||
|
||||
Все логи сохраняются в папке `logs/`:
|
||||
|
||||
- `vless.log` - основной лог VLESS
|
||||
- `vless_access.log` - лог доступа (IP адреса)
|
||||
- `vless_error.log` - лог ошибок
|
||||
- `vless_traffic_*.log` - логи трафика для каждого подключения
|
||||
- `wireguard.log` - лог WireGuard
|
||||
- `subscription.log` - лог подписок
|
||||
|
||||
## Горячие клавиши
|
||||
|
||||
- `Ctrl+Q` - Выход из приложения
|
||||
- `F5` - Обновить списки
|
||||
|
||||
## Устранение неполадок
|
||||
|
||||
### Приложение не запускается
|
||||
|
||||
1. Убедитесь, что установлены все зависимости:
|
||||
```bash
|
||||
go mod tidy
|
||||
```
|
||||
|
||||
2. Пересоберите приложение:
|
||||
```bash
|
||||
# Windows
|
||||
build_gui.bat
|
||||
|
||||
# Linux/macOS
|
||||
./build_gui.sh
|
||||
```
|
||||
|
||||
### Не удается подключиться к VLESS
|
||||
|
||||
1. Проверьте правильность VLESS URL
|
||||
2. Используйте "Тест (Ping)" для проверки доступности сервера
|
||||
3. Проверьте логи в папке `logs/`
|
||||
4. Убедитесь, что Xray находится в папке `xray/`
|
||||
|
||||
### Не удается подключиться к WireGuard
|
||||
|
||||
**Windows:**
|
||||
- Убедитесь, что WireGuard установлен: https://www.wireguard.com/install/
|
||||
- Запустите приложение от имени администратора
|
||||
|
||||
**Linux:**
|
||||
```bash
|
||||
sudo apt install wireguard
|
||||
# или
|
||||
sudo yum install wireguard-tools
|
||||
```
|
||||
|
||||
**macOS:**
|
||||
```bash
|
||||
brew install wireguard-tools
|
||||
```
|
||||
|
||||
### Прокси не работает
|
||||
|
||||
1. Убедитесь, что VPN подключен (зеленый индикатор)
|
||||
2. Проверьте настройки прокси в браузере: `127.0.0.1:10808`
|
||||
3. Проверьте логи на наличие ошибок
|
||||
|
||||
## Системные требования
|
||||
|
||||
- **ОС**: Windows 10+, Linux (любой дистрибутив), macOS 10.13+
|
||||
- **RAM**: 50 MB минимум
|
||||
- **Диск**: 100 MB свободного места
|
||||
- **Дополнительно**:
|
||||
- Xray-core (включен в проект)
|
||||
- WireGuard (для использования WireGuard протокола)
|
||||
|
||||
## Безопасность
|
||||
|
||||
- Все конфигурации хранятся локально в папке `.vpn_client/`
|
||||
- Пароли и ключи не передаются третьим лицам
|
||||
- Логи содержат только техническую информацию
|
||||
- Рекомендуется использовать надежные VPN провайдеры
|
||||
|
||||
## Поддержка
|
||||
|
||||
При возникновении проблем:
|
||||
1. Проверьте логи в папке `logs/`
|
||||
2. Убедитесь, что используете последнюю версию
|
||||
3. Проверьте конфигурацию сервера
|
||||
4. Попробуйте другой сервер из подписки
|
||||
Reference in New Issue
Block a user