44 lines
1.7 KiB
Markdown
44 lines
1.7 KiB
Markdown
# VPN Proxy
|
||
|
||
Один компактный VPN-клиент в двух режимах:
|
||
|
||
- `gateway` — отдельная Linux-машина принимает трафик устройств как системный Gateway или HTTP/SOCKS5 Proxy;
|
||
- `client` — локальный proxy-клиент для macOS.
|
||
|
||
В обоих режимах пользователь добавляет подписку, выбирает сервер и включает VPN на одном экране.
|
||
|
||
## Gateway
|
||
|
||
```bash
|
||
cp .env.example .env
|
||
docker compose -f docker-compose.gateway.yml up -d --build
|
||
```
|
||
|
||
Интерфейс: `http://<gateway-ip>:3456`.
|
||
|
||
После подключения экран показывает:
|
||
|
||
- `Gateway` — адрес, который можно назначить устройству как основной шлюз;
|
||
- `Proxy` — один адрес на порту `8080`, доступный как `HTTP` и `SOCKS5`.
|
||
|
||
Весь перехваченный публичный TCP/UDP и весь proxy-трафик идут через выбранный VPN. Приватные и локальные сети не перехватываются, чтобы сохранить доступ к Gateway и LAN.
|
||
|
||
Proxy по умолчанию разрешён только из приватных сетей. Диапазоны задаются через `PROXY_ALLOWED_CIDRS`.
|
||
|
||
## macOS client
|
||
|
||
```bash
|
||
./scripts/install-macos-client.sh
|
||
```
|
||
|
||
По умолчанию интерфейс доступен на `http://127.0.0.1:3456`, локальный HTTP/SOCKS5 proxy — на `127.0.0.1:8082`.
|
||
|
||
## Проверка
|
||
|
||
```bash
|
||
npm test
|
||
npm run build
|
||
docker compose -f docker-compose.gateway.yml config
|
||
docker compose -f docker-compose.client.yml config
|
||
```
|