Add web GUI, docs, scripts, and 5G router config

- Web app (Flask): status, config, firewall, logs, users, restart
- Docs: AT commands, deploy, DNS, quickstart, web GUI
- Scripts: connect, deploy, diag, healthcheck, modem-status, speedtest, status, troubleshoot
- Init and iptables: 5g-router, 5g-webgui, rules.v4
- CHANGELOG, TODO, REVISION; config and README updates
This commit is contained in:
nearxos
2026-02-02 09:38:23 +02:00
parent 1136a332b5
commit 160ad641ce
46 changed files with 4320 additions and 40 deletions

67
TODO.md Normal file
View File

@@ -0,0 +1,67 @@
# Alpine 5G Router TODO / Features
Track features and tasks for the solution. Use `[ ]` for pending, `[x]` for done.
---
## Connection & modem
- [x] Auto-reconnect when 5G link drops (watchdog or periodic check)
- [x] Configurable APN (env var or config file) for different carriers
- [x] USB mode check on boot (warn or fix if modem is in Mode 41)
- [x] Signal strength logging / alert when signal is weak
- [x] Fallback to eth0 (e.g. LAN) when 5G is unavailable (optional)
---
## Network & routing
- [x] Persist default route preference (5G vs eth0) across reboots
- [x] Optional dual-WAN or failover (5G + ethernet)
- [x] Firewall rules in repo (e.g. `etc/iptables/rules.v4`) for repeatable setup
- [ ] IPv6 support (if carrier provides it)
---
## Deployment & automation
- [x] Add `connect-5g.sh` (or equivalent) to repo for version control
- [x] Add OpenRC service file(s) to repo (e.g. `etc/init.d/5g-router`)
- [x] Install/setup script: deploy scripts + service + firewall from repo to device
- [x] Document or automate DNS (e.g. resolv.conf / dnsmasq) for 5G
---
## Monitoring & ops
- [x] Simple status script or endpoint (modem, interface, default route, last speedtest)
- [x] Optional speedtest on schedule (cron) with log or alert
- [x] Log rotation for `5g-router.log` (and any other logs)
- [x] Health check script for monitoring (Nagios, Uptime Kuma, etc.)
---
## Documentation & config
- [x] Single "quick start" for new device (clone repo → run script → done)
- [x] Document or script for first-time SSH/key setup
- [x] Example or template config (APN, interfaces, firewall) for different carriers
- [x] Changelog or version notes for script/service changes
---
## Web GUI
- [x] Login screen with admin and support users and different permissions
- [x] Configuration Modem/network interfaces (admin: /etc/5g-router.conf)
- [x] Monitoring status Modem/systems (Status tab)
- [ ] Data consumption from both terminals (graphs/tables) *future: needs traffic accounting e.g. vnstat*
- [x] Logs modem/system (5G router log + speedtest log)
- [x] List/add/modify firewall rules (admin: iptables rules.v4)
- [x] List/modify static routes (admin: ip route view)
- [x] User management (admin: add/delete users, set password)
- [x] Restart 5G (admin + support)
---
*Edit this file to add/remove items and check off completed work.*