Lo complejo de una tarea está en el conocimiento y esfuerzo que nos toma completarla. En este post, les comento sobre una herramienta que puede ayudar a los menos expertos o perezosos a administrar equipos Linux con un menor esfuerzo o bien, no requerir de tantos conocimientos técnicos.
Cockpit Project
Cockpit es una herramienta que te permite mediante plugins llamados “aplicaciones”, la administración remota, asistida y con interface gráfica de sistemas Linux.
Esto es muy útil si, por ejemplo, no estás muy familiarizados con sistemas Linux, vienes de un mundo Windows, o bien, no eres muy amante de las terminales y los comandos.
¿Qué puedo administrar con Cockpit?
Es una herramienta web (la puedes utilizar desde el navegador web de tu preferencia) , esta viene con una lista de plugins que te permitirán administrar diferentes opciones de su sistema Linux, por defecto no vienen instalados, pues la necesidad de administración dependerá de cada uno de nosotros y el uso que le demos a nuestros sistemas, pero algunos ejemplos de opciones que puedes administrar son
• Reportes de diagnóstico
• Constructor de imágenes de sistema operativo
• Recolección de logs del kernel
• Administración de máquinas virtuales dentro de la máquina que administramos
• Grabación de sesiones
• Administración de almacenamiento
Adicional sin necesidad de plugins, puedes administrar redes, servicios, cuentas de usuario, logs, actualizaciones y acceder de forma muy amigable a una terminal embebida en la aplicación
¿Cómo se instala Cockpit?
Bien, lo primero (por si aún no estás muy familiarizado) Linux es un kernel (núcleo del sistema operativo), del cual existen muchas distribuciones (conjuntos de aplicaciones, que forman el sistema operativo como lo conocemos), cada una de estas tiene variantes, por lo que ejecutar tareas como la instalación de un aplicativo, puede variar de una distribución a otra.
Para ayudarte te voy a colocar las instrucciones de instalación para algunas distribuciones más comunes
Fedora
Paso 1: Instalar la herramienta
sudo dnf install cockpit
Paso 2: Habilitar la aplicación para que siempre esté activa
sudo systemctl enable --now cockpit.socket
Paso 3: Configurar el firewall para permitir el acceso remoto
sudo firewall-cmd --add-service=cockpit
sudo firewall-cmd --add-service=cockpit --permanent
CentOS
Paso 1: Instalar la herramienta
sudo yum install cockpit
Paso 2: Habilitar la aplicación para que siempre esté activa
sudo systemctl enable --now cockpit.socket
Paso 3: Configurar el firewall para permitir el acceso remoto
sudo firewall-cmd --permanent --zone=public --add-service=cockpit
sudo firewall-cmd –reload
Arch Linux
Paso 1:Instala e inicia la aplicación
sudo pacman -S cockpit
sudo systemctl enable --now cockpit.socket
Existen instrucciones para la instalación en otras distribuciones en la página del fabricante, por lo que, si te interesa o necesitas aprender a instalar en Ubuntu, Debian, RedHat y otras por favor ve al siguiente enlace para encontrar las instrucciones de instalación
¿Cómo ingreso a la aplicación?
Ahora, ya has instalado Cockpit en el sistema Linux que quieres administrar (remotamente lo más probable). La aplicación luego de la instalación se ha levantado y corre un módulo web que puedes acceder con la dirección IP de tu equipo y usando el puerto 9090.
En otras palabras, si estás dentro de tu máquina Linux que deseas administrar abre un navegador y coloca en la barra de direcciones la siguiente URL https://127.0.0.1:9090
Si lo que deseas hacer es administrar tu máquina Linux desde otra máquina, deberás tener 3 elementos a mano
• IP de la máquina Linux (usualmente se puede obtener abriendo la terminal y ejecutando el comando ifconfig)
• Acceso de red desde la máquina en la que estás y la máquina que vas a administrar (si no están en la misma red, deberás tener una VPN u otro sistema que te permita acceder a través de internet entre ambas máquinas)
• Usuario y contraseña para poder autenticarte en el aplicativo (este es el mismo usuario y contraseña que usas en el sistema Linux)
Una vez que tienes a mano todo, abres el navegador de tu elección y colocas la siguiente URL en la barra de dirección del navegador https://--IP--:9090 y presionas “enter” o navegar
Donde --IP-- es la IP de tu máquina Linux, y 9090 es el puerto por el cual la aplicación está expuesta (no olvides los dos puntos “:” entre la IP y puerto)
¿Cómo se administra el equipo Linux?
A este punto tu navegador debe mostrarte una página de Login, en este se colocan tu usuario y contraseña (los que usabas para ingresar al equipo Linux)
Te muestro a continuación imágenes donde podrás ver las opciones de menú para configurar del lado izquierdo y algunas de las tareas que te ayudará a administrar esta herramienta
Como se aprecia en las imágenes anteriores, con mucha facilidad y guiado por una interfaz gráfica amigable e intuitiva, puedes realizar muchas de las tareas que antes te obligaba a estar en frente de tu equipo Linux, o bien establecer conexiones SSH y ejecutarlas mediante comandos.
¿Ahora no necesito SSH, Ansible e IaC?
Bueno…. Si… y no… todo dependerá de tus necesidades, para que uses tu equipo y cómo quieres adminístralo
Cockpit como se indicaba te ayuda a hacer muchas de las tareas de administración mediante una interfaz gráfica amigable, pero muchas otras tareas complejas dependerás de otras tecnologías, comandos o técnicas. Esta herramienta nos una solución “completa” para todos los escenarios… pero si te sirve y se adapta a lo que necesitas administrar es una excelente herramienta que no debes desperdiciar.
Conclusión
Como toda herramienta, su utilidad está en el uso que se le dé y la habilidad de la mano que la opera, Cockpit no es la excepción. Lo importante no es generalizar, acá podemos usar la analogía del cuchillo de pan y la cierra, ambas herramientas cortan, pero no en el mismo contexto ni los mismos materiales. De aquí que el provecho de esta herramienta igual dependerá del contexto y necesidad que debas solucionar con esta.
En lo personal te puedo decir, que me encantan los comandos en terminal, los scripts en lugar de los clics en una UI, pero Cockpit me ayuda muchísimo en la administración de máquinas virtuales (dentro del sistema Linux que administro)… ¿Por qué?, porque usualmente para instalar una máquina virtual deberás de seguir muchos y variados asistentes de instalación (cada distro o SO tiene un instalador propio) y para administrar una máquina virtual, levantarla, detenerla o tomar un snapshot me queda más simple hacerlo mediante una UI en lugar de por comandos.
No te sientas mal por usar UI dentro de Linux, lo importante es resolver las necesidades específicas, y en caso de que tus habilidades en terminal SSH y comandos no sea tan buena, creo que esta herramienta te ayudará a mejorarlas desde su terminal integrada.