Commit Graph

8 Commits

Author SHA1 Message Date
Андрей Бобырев
5badb15d75 feat: safety checks + backup + uninstall for secondary-setup.sh
Pre-flight checks before installation:
- Detect existing WireGuard, Phobos clients, tokens, server.env
- Check port conflicts (obfuscator ports, 51820, 8444)
- Check running conflicting services
- Pause with warning count if issues found

Safety during install:
- Auto-backup existing configs to /opt/Phobos/backup/TIMESTAMP/
- Preserve existing wg0.conf if found (reuse keys)
- Skip obfuscator binary download if already installed

Clean uninstall script:
- /opt/Phobos/server/phobos-secondary-uninstall.sh
- Stops all services, removes configs and systemd units
- Preserves backup directory
- Removes iptables rules

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-29 00:03:19 +03:00
Андрей Бобырев
ba5a9deeb6 feat: random 5-digit port for panel on install
Panel now gets a random port (10000-59999) instead of fixed 8443.
Harder to find via port scanning, avoids conflicts with existing services.
Port saved to /opt/phobos-panel/.port for reference.
Override with PANEL_PORT=xxxxx env var.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-28 23:53:15 +03:00
Андрей Бобырев
a9f175d564 ui: add descriptions to servers/labels pages, improve delete buttons
- Servers page: descriptions for API key, VPN servers table, secondary setup
- Labels page: explain what labels do and where they appear
- Delete buttons: show "Удалить" text instead of just ✕, add confirm dialogs
- Fix duplicate nav link on servers page

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-28 23:46:25 +03:00
Андрей Бобырев
0e2a194f43 chore: update obfuscator ports to stealth values (2083, 5443, 993)
Ports 51821-51823 look like WireGuard to port scanners.
New ports mimic cPanel/HTTPS/IMAPS — less suspicious.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-28 23:44:17 +03:00
Андрей Бобырев
4f1fca5222 feat: multi-server failover, health monitor, port hopping
- client/phobos-health.sh: router-side health monitor + auto-heal
  - Cron every 60s, checks WG handshake age
  - Auto-restart obfuscator (3min), WireGuard (5min)
  - Port hopping (10min), server failover (15min)
  - Auto-return to primary when recovered
- client/failover.conf.example: multi-server config template
- server/secondary-setup.sh: one-command secondary server deploy
  - WG + multi-port obfuscator + mini-API on :8444
  - Auto-registers with main server
- Panel: new "Серверы" page
  - Add/remove secondary servers
  - Health check, peer sync, fetch info
  - API key management
  - Secondary server install command

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-28 23:28:34 +03:00
Андрей Бобырев
c35f5464ab fix: show real install tokens, use wget for Keenetic routers
- Settings page reads /opt/Phobos/tokens/tokens.json for real install commands
- Uses wget (available on BusyBox/Keenetic) instead of curl in displayed commands
- Shows client name and token expiry for each install command

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-28 23:15:41 +03:00
Андрей Бобырев
afe5c39649 fix: remove personal donation links and author data from panel and README
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-28 23:12:45 +03:00
Андрей Бобырев
e11451b984 feat: PCA Phobos — web panel for obfuscated WireGuard VPN
Flask web panel for Phobos (wg-obfuscator + WireGuard):
- Active sessions monitoring (wg show)
- Client management (add/remove via phobos-client.sh)
- Labels by Real IP
- Subscription expiry with auto-kick
- Telegram notifications (connect/disconnect/expiry)
- One-command installer
- Dark theme UI

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-28 23:06:08 +03:00