Enoc Hernandez
Pathogen

Pathogen

TUI en Rust para administrar un firewall de Linux con nftables, control de puertos, cuarentena de IPs y límites de tráfico.

Desafío

Administrar reglas de firewall desde la terminal puede ser potente, pero también exige recordar comandos y mantener un control cuidadoso sobre los privilegios del sistema.

Solución

Construí Pathogen como una interfaz de terminal rápida para nftables, separando dominio, casos de uso, infraestructura y presentación, y delegando las acciones privilegiadas a scripts aislados.

Interfaz TUI de Pathogen Firewall

Resumen

Pathogen es una TUI para Linux escrita en Rust y conectada con nftables. Está pensada para administrar reglas de red desde una interfaz interactiva sin renunciar al control y la transparencia de las herramientas de terminal.

El problema

Las operaciones de firewall requieren precisión. Una interfaz que oculte demasiado el comportamiento del sistema puede ser difícil de auditar, mientras que una colección de comandos manuales puede volver repetitivas las tareas de administración.

La solución

Pathogen reúne en una sola interfaz:

  • Configuración de reglas y puertos TCP/UDP.
  • Cuarentena de IPs usando sets de nftables.
  • Rate limiting para controlar conexiones por IP.
  • Monitor de logs para observar bloqueos del kernel.
  • Navegación interactiva con ratatui y crossterm.

Arquitectura y seguridad

El proyecto separa dominio, casos de uso, infraestructura y presentación siguiendo Clean Architecture. El binario no se ejecuta como root: las operaciones específicas se delegan a scripts mediante reglas de sudoers, limitando el alcance de los privilegios.

Menú principal de Pathogen