docs: переписать README в пошаговую инструкцию запуска

Актуализировал под конфиг vpn_config.json: убрал шаг правки username
в коде, добавил установку зависимостей, создание конфига и описание
состояний индикатора в трее.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
boyko_vn 2026-07-08 17:00:13 +03:00
parent 7aab89576e
commit 9f37fd8b78

View File

@ -1,5 +1,23 @@
0. запустить `bash show_tuns.sh` и обновить имя адаптера (выводится до GUID) в конфиге vpn в строке после `dev tun`
1. расшифровать QR, вынуть secret
2. запустить `bash init.sh <secret> <static_pass>`
3. поменять юзернейм в `launch_vpn_gui.py`
4. запуск `python launch_vpn_gui.py`
# VPN с TOTP-аутентификацией и индикатором в трее
## Запуск
1. Установить зависимости: `pip install pyotp keyring pystray pillow`
2. Узнать имя сетевого адаптера: `bash show_tuns.sh` — вписать имя (выводится до GUID) в `.ovpn`-профиль в строку после `dev tun`.
3. Создать конфиг: скопировать `vpn_config.example.json``vpn_config.json` и указать свои значения (`username`, пути `ovpn_config` / `openvpn_bin`, `ping_host` — IP сервера для проверки связи). Если пропустить — файл создастся с дефолтами при первом запуске.
4. Расшифровать QR, вынуть `secret`.
5. Положить секреты в keyring: `bash init.sh <secret> <static_pass>`.
6. Запуск: `python launch_vpn_gui.py` (запросит права администратора).
## Индикатор в трее
- 🔘 серый — openvpn не запущен;
- 🟡 жёлтый — запущен, но пинги до `ping_host` не проходят;
- 🟢 зелёный — запущен, связь с сервером есть.
Проверку связи можно отключить (`"ping_check_enabled": false`) — тогда только серый/зелёный.
## Настройки (`vpn_config.json`)
Правятся вручную или через пункт меню «Открыть настройки»; перечитываются на лету.
Секреты (`secret`, `static`) в конфиге не хранятся — они в keyring под именем `keyring_service`.