Add fully manual VPN mode

This commit is contained in:
2026-05-26 14:18:38 +03:00
parent c3d8e4b62f
commit f2d4f8e04b
10 changed files with 94 additions and 13 deletions

View File

@@ -12,7 +12,7 @@ This repo is a macOS VPN packaging layer around `openconnect`, `openconnect-lite
## System Map
- `install.sh` installs/updates the whole package and restarts `LemanaVPN.app` only if it is already running.
- `bin/vpn-lemanapro.sh` is the runtime source for `vpn`, `vpn-auto`, `vpn-manual`, `vpn-debug`, `vpn-fix-dns`.
- `bin/vpn-lemanapro.sh` is the runtime source for `vpn`, `vpn-auto`, `vpn-manual`, `vpn-manual-full`, `vpn-debug`, `vpn-fix-dns`.
- `app/Sources/LemanaVPN/VPNManager.swift` shells out to `~/bin/vpn-lemanapro.sh --json`; app state must stay compatible with CLI JSON events.
- `templates/openconnect-lite-config.toml` holds Keycloak selectors and the VPN profile.
- `uninstall.sh` must stop the running menu-bar app when removing the app, not only delete the bundle.
@@ -26,7 +26,7 @@ vpn --status
vpn --status --json
```
Do not start another `vpn`, `vpn-auto`, `vpn-debug`, `vpn --manual`, or app connect if status says connected/connecting/reconnecting or if the previous connect attempt is still active. Inspect logs instead:
Do not start another `vpn`, `vpn-auto`, `vpn-debug`, `vpn --manual`, `vpn --manual-full`, or app connect if status says connected/connecting/reconnecting or if the previous connect attempt is still active. Inspect logs instead:
```sh
tail -f ~/Library/Logs/LemanaVPN-openconnect-lite.log

View File

@@ -48,6 +48,7 @@ vpn-lemanapro.sh --patch-only
- `vpn` / `vpn-auto`: hidden browser, autofill, auto-submit.
- `vpn --manual` / `vpn-manual`: visible browser, autofill, no submit.
- `vpn --manual-full` / `vpn-manual-full`: visible browser, no autofill, no submit.
- `vpn-debug`: visible browser and raw logs.
When diagnosing SSO, use manual mode first. Do not repeatedly start automatic mode if a connection attempt is already in progress.
@@ -66,6 +67,7 @@ If live behavior must be checked:
```sh
vpn --status
vpn --manual
vpn --manual-full
tail -f ~/Library/Logs/LemanaVPN-openconnect-lite.log
```

View File

@@ -61,6 +61,12 @@ When SSO/autofill changed, prefer:
vpn --manual
```
Use the fully manual path when validating a no-autofill diagnosis path:
```sh
vpn --manual-full
```
Only use automatic mode after manual mode proves the form is filled correctly:
```sh