← Volver a todos los proyectos

Catsplash

Portal cautivo minimalista en Go que bloquea el acceso a Internet hasta aceptar los términos y libera el tráfico de forma segura en redes Wi-Fi temporales.

Panel de administración de Catsplash con sesiones activas

Características Principales

Portal Cautivo Compatible con CNA

Redirección HTTP al portal y compatibilidad con el Captive Network Assistant de Android e iOS para abrirlo automáticamente.

Firewall Dinámico con iptables

Reglas inyectadas y limpiadas de forma atómica por cliente autenticado, sin dejar tráfico colgado al cerrar sesiones.

Sesiones en SQLite

Gestión de clientes y sesiones con expiración por tiempo absoluto e inactividad, pensada para hardware de bajos recursos.

CLI catsctl y Panel de Administración

Consulta de estado, listado de clientes y control de sesiones desde la terminal o el panel web protegido con contraseña.

Flujos Importantes del Proyecto

Tres pilares que llevaron el proyecto más allá del código: verificación experimental, cumplimiento legal y dominio de redes.

Testing

Laboratorio con Network Namespaces

  • Topología completa dentro del kernel: ns_router (AP + WAN), ns_wan (internet simulado) y hasta ns_client[1..100] con IP y MAC propias.
  • Ráfagas de 100 clientes concurrentes: 100% de peticiones exitosas, pico de 13.6% CPU y menos de 24 MB RSS en un Core 2 Duo.
  • Suite de pruebas automatizadas: soak tests multi-cliente, monitoreo de recursos y resultados versionados en CSV.
LOPDP

Validación de Protección de Datos (Ecuador)

  • Consentimiento explícito antes de conectar: checkbox validado en backend con timestamp de aceptación.
  • Derechos ARCO+ implementados: endpoints de acceso/portabilidad (/data-request) y eliminación (/data-deletion).
  • DPIA, inventario y plan de retención documentados; auditoría de accesos y anonimización de MACs con SHA-256 truncado.
Redes Linux

Manejo de Redes en Linux

  • Integración con hostapd (punto de acceso) y dnsmasq (DHCP/DNS) sobre interfaces Wi-Fi reales.
  • Instalador guiado setup.sh que prepara dependencias, reglas de firewall y configuración del sistema en /opt/catsplash.
  • Guías de red avanzada, seguridad Wi-Fi y resolución de problemas de conectividad incluidas en la documentación.
CLI catsctl mostrando estado y listado de clientes

catsctl · CLI

Asistente de instalación setup.sh preparando hostapd, dnsmasq y firewall

setup.sh · Instalador

Documentación Completa

Guías de instalación, arquitectura, rendimiento y red, además del análisis de cumplimiento LOPDP, disponibles en el sitio de documentación y en el repositorio.