Proyectos IT
05 / 06 En producción

Ethereal
Linux SysAdmin

Suite completa de administración de sistemas Linux para múltiples distribuciones — desde Debian hasta Arch — con interfaz de menú interactiva que cubre diagnóstico, seguridad, backups, gestión Docker, bases de datos y automatización.

Shell Bash Linux SysAdmin Docker DevOps PostgreSQL MySQL Seguridad
14 Áreas funcionales
8 Distros soportadas
v2.0.0 Versión actual
MIT Licencia
Ethereal — portada

Descripción del proyecto

Ethereal surgió de la necesidad de tener una sola herramienta que centralice las tareas más frecuentes de administración de sistemas Linux, independientemente de la distribución. El objetivo: que un SysAdmin pueda aterrizar en cualquier servidor Debian, Ubuntu, RHEL o Arch y tener acceso inmediato a todas las operaciones que necesita sin memorizar comandos específicos de cada distro.

La interfaz de menú interactiva guía al usuario a través de 14 áreas funcionales, desde diagnóstico de hardware hasta gestión de bases de datos y exportación de informes en PDF/HTML. Todo el proyecto está escrito en Shell puro, sin dependencias externas más allá de las herramientas estándar de cada distribución.

La compatibilidad multi-distribución se resuelve con un sistema de detección de distro al inicio que adapta los comandos de instalación de paquetes, las rutas de configuración y los nombres de servicios.

14 Áreas funcionales

  • Diagnóstico del sistema: hardware, CPU, memoria, disco y red en tiempo real
  • Monitorización de rendimiento: CPU, RAM, disco y red con tracking histórico
  • Seguridad & Hardening: configuración SSH, gestión de firewall (ufw/firewalld), auditoría
  • Backup & Recovery: backups incrementales con compresión y cifrado opcional
  • Gestión Docker: operaciones de contenedores e imágenes desde el menú
  • Administración de bases de datos: MySQL, PostgreSQL y Redis desde interfaz unificada
  • Análisis de logs: visualización y rotación de logs del sistema
  • Gestión de usuarios: administración de cuentas y permisos
  • Automatización: cron jobs y programación de tareas
  • Reportes: exportación PDF/HTML del estado del sistema
  • Integración de dominio: gestión de dominios y DNS
  • Gestión de almacenamiento: LVM, particiones y sistemas de archivos
  • Gestión de red: interfaces, routing y diagnóstico de conectividad
  • Utilidades adicionales: herramientas de uso frecuente agrupadas

Instalación y uso

# Instalación rápida (una línea)
curl -fsSL https://raw.githubusercontent.com/vvv-bash-v2/Ethereal/main/install.sh | sudo bash

# Instalación manual
git clone https://github.com/vvv-bash-v2/Ethereal
cd Ethereal
sudo chmod +x ethereal.sh
sudo ./ethereal.sh

# Detección automática de distribución al inicio:
# ✓ Debian 11/12
# ✓ Ubuntu 20.04 / 22.04 / 24.04 LTS
# ✓ RHEL 8/9 · CentOS Stream · Rocky · AlmaLinux
# ✓ Fedora 38/39/40+
# ✓ Arch Linux (beta)

Retos y soluciones

  • Compatibilidad multi-distro: Debian usa apt, RHEL usa dnf, Arch usa pacman y los nombres de servicios difieren; implementado un sistema de abstracción con funciones wrapper que detectan la distro y ejecutan el comando correcto.
  • Shell puro sin dependencias: mantenerse en POSIX shell compatible con todas las distros mientras se implementan menús interactivos con colores y navegación; resuelto con secuencias de escape ANSI y tput.
  • Backup atómico con cifrado: garantizar que un backup interrumpido no deje datos corruptos; implementado con archivos temporales y renombrado atómico al finalizar, más verificación de integridad por checksum.
  • Gestión de permisos cross-distro: las rutas de sudo, wheel y sudoers difieren; detectado y adaptado por distribución con fallback a verificación manual de UID.

Aprendizajes

Ethereal me dio una comprensión sólida de las diferencias entre distribuciones Linux a nivel de gestión de paquetes, servicios (systemd vs OpenRC), rutas de configuración y convenciones del sistema. Aprender a abstraer esas diferencias en funciones shell reutilizables fue el mayor reto técnico del proyecto.

La experiencia de diseñar una CLI robusta — con gestión de errores, confirmaciones, colores y feedback claro — se tradujo directamente en mejores scripts de automatización en el homelab y en el trabajo.