Webmin es un panel de control de administración basado en web para sistemas operativos tipo Unix, como Linux (Ubuntu, Debian, Kali, etc.). Su función principal es simplificar la gestión remota del sistema al traducir los complejos comandos de la línea de comandos a una interfaz gráfica de usuario (GUI).
Webmin actúa como una interfaz gráfica para los archivos de configuración estándar de Linux. En lugar de editar manualmente archivos como /etc/fstab o /etc/apache2/apache2.conf, Webmin proporciona formularios y botones que manipulan esos archivos por ti.
Es un conjunto de más de 100 módulos interconectados, cada uno dedicado a configurar un aspecto diferente del sistema.
Categorías del Panel
La forma más sencilla es usar el script webmin-setup-repo.sh que configura automáticamente el repositorio e instala las claves GPG. Compatible con RHEL, Alma, Rocky, Oracle, CentOS Stream, Fedora, Debian, Ubuntu y Kali.
sudo apt install curl
curl -o webmin-setup-repo.sh https://raw.githubusercontent.com/webmin/webmin/master/webmin-setup-repo.sh sudo sh webmin-setup-repo.sh
// Script webmin-setup-repo.sh configurando el repositorio
sudo apt-get install webmin --install-recommends
sudo dnf install webmin
Acceso y Credenciales
// Pantalla de login de Webmin
El dashboard es la pantalla principal al acceder al panel. Muestra una visión general del servidor: estado de la CPU, uso de memoria y disco, y otra información relevante del sistema. Es el punto de partida para administrar el servidor desde el navegador.
// Dashboard principal de Webmin con métricas del sistema
Cambiar el Idioma
Para cambiar el idioma de Webmin una vez accedido: Webmin → Change Language and Theme, seleccionar Personal choice, elegir el idioma y hacer clic en Make Changes.
// Menú Change Language and Theme
// Interfaz de Webmin en español tras el cambio
// Menú Sistema de Webmin con todas las opciones disponibles
// Módulo de actualizaciones de software en Webmin
El botón "Subir Versión Ahora" ejecuta el equivalente de APT según la opción seleccionada:
| Opción | Comando APT equivalente | Significado |
|---|---|---|
| Resincronizar lista (Sí) | sudo apt update | Sincroniza las listas de repositorios. Debe estar en "Sí". |
| Aumento de versión de distribución | sudo apt full-upgrade | Actualiza e instala/elimina paquetes si es necesario. Permite saltos de versión (ej. Ubuntu 22→24). |
| Aumento de versión normal ★ | sudo apt upgrade | Modo recomendado. Actualiza todos los paquetes sin instalar nuevos ni eliminar existentes. El más seguro para mantenimiento regular. |
| No aumentar versión | (solo apt update) | Actualiza las listas sin aplicar ninguna actualización. |
// Resultado de la actualización de paquetes
Pasos: Haz clic en el módulo → busca un servicio (ej. ssh o apache2) → pulsa "Disable at boot time" o "Start Service".
// Módulo Bootup and Shutdown con lista de servicios
// Selección de usuario para cambio de contraseña
// Formulario para introducir la nueva contraseña
/etc/fstab con interfaz gráfica.// Módulo de sistemas de archivos de disco y red
dump y /etc/dumpdates.Pasos: Módulo → "Add a new backup of directory".
// Módulo Filesystem Backup
// Módulo de rotación de archivos de log
// Módulo de programas de tipos MIME
Pasos: Módulo → selecciona un servicio (ej. sshd) para revisar su configuración de autenticación.
// Módulo PAM Authentication con lista de servicios
top o ps). Puedes enviar señales como kill o nice.Pasos: Módulo → busca un proceso (ej. webmin o bash) → selecciona y haz clic en "Kill" o "Signal".
// Módulo Running Processes con lista de procesos activos
Pasos: Módulo → "Create a new scheduled cron job".
// Módulo Scheduled Cron Jobs con lista de tareas
Pasos: "Install a new package" → escribe el nombre del paquete (ej. nginx).
// Módulo Software Package Updates
// Lista de paquetes disponibles para actualizar
// Instalación de nuevo paquete desde Webmin
Pasos: Módulo → escribe un comando (ej. tcpdump) para ver su manual.
// System Documentation con búsqueda de manual de tcpdump
Pasos: Módulo → "View" al lado del archivo auth.log o syslog.
// Módulo System Logs con lista de archivos de log
// Contenido de un archivo de log en Webmin
Pasos: Módulo → "Create a new user".
// Módulo Users and Groups con lista de usuarios
// Formulario de creación de nuevo usuario
Servidor Web Apache
// Módulo de configuración del servidor web Apache
Agente de Correo Postfix
// Módulo Postfix para gestión de correo saliente
Leer correo de usuario
// Interfaz de lectura de correo del usuario
// Menú Tools de Webmin
| Módulo | Función principal | Uso práctico |
|---|---|---|
| Command Shell | Ejecutar comandos de shell únicos desde la interfaz web | Diagnóstico rápido — resultado visible inmediatamente en la página |
| Custom Commands | Crear y guardar comandos personalizados como botones | Botón para ejecutar script de backup o reiniciar un servicio específico |
| File Manager | Navegar, editar, subir, descargar y gestionar archivos gráficamente | Gestionar archivos de configuración sin línea de comandos |
| HTTP Tunnel | Configurar y acceder a un túnel HTTP a través de la red local | Acceder a servicios internos no expuestos a Internet |
| Perl Modules | Gestionar módulos del lenguaje Perl instalados en el sistema | Instalar, actualizar o eliminar módulos desde CPAN |
| PHP Configuration | Modificar la configuración de PHP (php.ini) | Ajustar memoria, tiempos de ejecución para WordPress/Nextcloud |
| Protected Web Dirs | Configurar protección de acceso HTTP básica en directorios web | Restringir carpetas del sitio con usuario/contraseña |
| System and Server Status | Estado general y rendimiento del sistema y servicios | CPU, memoria, carga del sistema y estado de servicios en tiempo real |
| Terminal | Terminal shell interactiva dentro del navegador (como SSH) | Usar vim, nano o programas interactivos — equivalente a SSH |
| Upload and Download | Subir archivos desde tu máquina al servidor o descargarlos | Mover archivos grandes o binarios difíciles de copiar con scp |
// Menú Networking de Webmin
| Módulo | Función | Uso práctico |
|---|---|---|
| Bandwidth Monitoring | Rastrear y medir el ancho de banda por interfaz | Diagnosticar cuellos de botella e identificar apps que consumen tráfico |
| Linux Firewall | Gestionar reglas de firewall IPv4 (iptables) | Controlar tráfico: permitir/bloquear puertos e IPs |
| Linux IPv6 Firewall | Gestionar reglas de firewall IPv6 (ip6tables) | Mismo control que IPv4 para entornos que usan IPv6 |
| Network Configuration | Configurar interfaces de red del servidor | Definir IPs estáticas/DHCP, máscaras de red, gateways y DNS |
| NIS Client/Server | Gestionar el Network Information Service (NIS) | Distribuir información de usuarios en red local (tecnología legacy) |
| PPTP VPN Client | Configurar conexiones de cliente VPN PPTP | Conectar el servidor a una red privada remota |
| TCP Wrappers | Control de acceso por host a servicios de red (/etc/hosts.allow y deny) | Permitir/denegar SSH, FTP por IP de origen — capa previa al firewall |
// Menú Hardware de Webmin
| Módulo | Función | Uso práctico |
|---|---|---|
| Partitions on Local Disks | Ver, crear, editar o eliminar particiones en discos locales (como fdisk/gdisk) | Inicializar un disco nuevo, cambiar tamaño de partición, definir tipo de filesystem |
| Printer Administration | Gestionar el sistema de impresión CUPS | Añadir impresoras, configurar colas y gestionar drivers |
| System Time | Configurar hora, fecha, zona horaria y NTP del servidor | Asegurar precisión temporal para seguridad, logs y aplicaciones |
// Menú Cluster de Webmin
El menú Cluster permite administrar múltiples servidores Webmin de forma centralizada, aplicando la misma acción (contraseñas, paquetes, cron jobs) en todos los servidores a la vez.
| Módulo | Función | Uso práctico |
|---|---|---|
| Cluster Change Passwords | Cambiar contraseñas del mismo usuario en todos los servidores | Sincronizar credenciales de un usuario administrativo en todo el cluster |
| Cluster Copy Files | Copiar un archivo desde el maestro a todos los servidores | Distribuir archivos de configuración comunes o scripts de mantenimiento |
| Cluster Cron Jobs | Programar tareas Cron en todos los servidores | Ejecutar el mismo script de limpieza a la misma hora en todo el cluster |
| Cluster Shell Commands | Ejecutar un comando de shell único en todos los servidores | Ejecución remota masiva: uname -a en todos los servidores a la vez |
| Cluster Software Packages | Instalar, actualizar o eliminar paquetes en todo el cluster | Asegurar que todos los servidores tienen la misma versión de Nginx o PHP |
| Cluster Usermin Servers | Gestionar y configurar Usermin en los servidores del cluster | Aplicar configuraciones de seguridad de Usermin en todos |
| Cluster Users and Groups | Crear/modificar/eliminar usuarios y grupos en todos los servidores | Gestión de identidad centralizada — UIDs iguales en todos los servidores |
| Cluster Webmin Servers | Módulo de configuración principal del cluster — añadir/gestionar servidores miembros | Define qué servidores forman parte del cluster antes de usar los demás módulos |
// Lista completa de módulos no utilizados en Webmin
Los módulos bajo Un-used Modules son herramientas que Webmin puede gestionar, pero cuyo software no está instalado o activado aún en el sistema. Webmin los separa para mantener el menú limpio. Si instalas el software relacionado (ej. MySQL), el módulo se moverá automáticamente a su categoría principal.
| Módulo | Función (si se instala) | Uso común |
|---|---|---|
| Bacula Backup System | Sistema de copia de seguridad en red Bacula | Backups profesionales a nivel empresarial |
| BIND DNS Server | Configura el servidor de nombres DNS BIND | Alojar tu propio servicio DNS y zonas |
| DHCP Server | Administrar un servidor DHCP | Asignar IPs automáticamente a clientes en la LAN |
| Dovecot IMAP/POP3 | Servidor de correo IMAP/POP3 Dovecot | Acceso a buzones desde clientes como Thunderbird |
| Fail2Ban Intrusion Detector | Bloquea IPs con intentos de login fallidos repetidos | Seguridad esencial contra ataques de fuerza bruta en SSH |
| FirewallD | Firewall dinámico basado en zonas (distribuciones Red Hat) | Control de tráfico más flexible que iptables simple |
| IPsec VPN Configuration | Configura VPN seguras con protocolo IPsec | Conectar redes privadas de forma segura a través de Internet |
| iSCSI Client/Server/Target | Compartir dispositivos de almacenamiento vía red IP | Montar almacenamiento de red como disco local (SAN/NAS) |
| Kerberos5 | Sistema de autenticación de red Kerberos | Autenticación robusta y centralizada en grandes redes |
| LDAP Client/Server | Gestiona el protocolo LDAP (directorio) | Autenticar usuarios para múltiples servicios desde un único punto |
| Linux RAID | Configura arreglos RAID por software | Combinar discos para mejorar rendimiento o redundancia |
| Logical Volume Management | Gestiona volúmenes lógicos LVM | Redimensionar particiones sin reiniciar ni perder datos |
| MySQL Database Server | Administrar MySQL/MariaDB | Configurar bases de datos y usuarios para aplicaciones web |
| NFS Exports | Configura el Network File System (NFS) | Compartir directorios del servidor con otros clientes Linux |
El módulo Refresh Modules re-escanea el sistema para detectar cambios en la instalación de software y actualizar la interfaz:
- ▸Vuelve a escanear el sistema de archivos del servidor
- ▸Verifica la existencia de software que Webmin puede gestionar (MySQL, BIND, Fail2Ban...)
- ▸Mueve los módulos de "Un-used Modules" a su categoría principal si detecta el software instalado
- ▸Soluciona problemas si Webmin tiene información desactualizada sobre módulos
apt install y no aparece en Webmin, lo primero que debes hacer es pulsar Refresh Modules para forzar la actualización del menú.