Catsplash
Portal cautivo ligero para Linux. Bloquea, autentica y libera tráfico WiFi con Go, SQLite e iptables.
Catsplash es un portal cautivo minimalista y eficiente para Linux. Permite abrir una red WiFi temporal, bloquear el acceso a Internet hasta que el usuario acepta los términos, y liberar el tráfico de forma segura.
Características principales
Sección titulada «Características principales»- Portal cautivo compatible con Captive Network Assistant de Android e iOS.
- Panel de administración con autenticación, CSRF, y gestión de clientes activos.
- Gestión de sesiones con SQLite en modo WAL, expiración por tiempo absoluto e inactividad.
- Firewall determinista con iptables: 1 regla NAT + 2 reglas Filter por cliente activo.
- CLI de control
catsctlpara monitorear y administrar sesiones desde la terminal. - Instalador guiado
setup.shque prepara hostapd, dnsmasq, iptables y servicios systemd. - Bajo consumo de recursos: menos de 25 MB de RAM bajo carga máxima de 100 clientes concurrentes.
- Compilación cruzada para Linux en múltiples arquitecturas (amd64, 386, arm64, armv7).
- Suite de pruebas aisladas usando network namespaces para simular hasta 100+ clientes WiFi.
- Seguridad integrada: bcrypt, CSRF, rate limiting, cookies HttpOnly/Secure/SameSite, sanitización de inputs.
- Cumplimiento LOPDP: Consentimiento explícito, derechos ARCO+ (acceso, portabilidad, eliminación), anonimización de MACs en logs, registro de auditoría.
- CI/CD seguro: gosec (security scan), golangci-lint, tests automatizados.
Primeros pasos
Sección titulada «Primeros pasos»git clone https://github.com/xeland314/catsplash.gitcd catsplashmake buildsudo ./setup.shNota: Catsplash funciona solamente en Linux. Los binarios compilados requieren iptables y acceso root.