Primeros pasos con Cockpit

Siempre es un poco desconcertante cuando nos acompañamos de productos relativamente nuevos en nuestras tareas.

Cockpit promete varias cosas, no sólo una forma sencilla de administración, sino una forma razonablemente sencilla de administrar máquinas locales… y remotas. Dispone de una interfaz web, accesible con cualquier navegador, y una interfaz GTK, disponible en openSUSE a través de Flatpak.

La instalación estándar de cockpit no tiene misterio, y se detalla en su propia web, aunque allí pasan por instalar simplemente el paquete cockpit y abrir el puerto correspondiente para poder conectarse con un navegador.

Si nuestro servidor o máquina tiene SSH en servicio, podemos en su lugar instalar el paquete cockpit-bridge y el paquete de Flatpak cockpit-client (sea en línea de comandos o con la aplicación gráfica que proporcione nuestro escritorio para esta tarea).

Tanto el cliente web como el cliente GTK permiten la conexión a varios equipos que tengan instalado cockpit (y aquí entiendo que una vez estás ejecutando cualquier cliente, puedes conectarte a otra sin necesidad del servidor web).

Tanto en el repositorio oficial como en el respositorio cockpit están disponibles los siguientes paquetes:

S  | Name                     | Summary                                                                      | Type
---+--------------------------+------------------------------------------------------------------------------+--------
i+ | cockpit                  | Web Console for Linux servers                                                | Paquete
i+ | cockpit-bridge           | Cockpit bridge server-side component                                         | Paquete
   | cockpit-devel            | Development files for for Cockpit                                            | Paquete
   | cockpit-doc              | Cockpit deployment and developer guide                                       | Paquete
   | cockpit-kdump            | Cockpit user interface for kernel crash dumping                              | Paquete
i+ | cockpit-machines         | Cockpit user interface for virtual machines                                  | Paquete
i+ | cockpit-networkmanager   | Cockpit user interface for networking, using NetworkManager                  | Paquete
i+ | cockpit-packagekit       | Cockpit user interface for packages                                          | Paquete
i+ | cockpit-pcp              | Cockpit PCP integration                                                      | Paquete
i+ | cockpit-podman           | Cockpit component for Podman containers                                      | Paquete
   | cockpit-selinux          | Cockpit SELinux package                                                      | Paquete
i+ | cockpit-storaged         | Cockpit user interface for storage, using udisks                             | Paquete
i+ | cockpit-system           | Cockpit admin interface package for configuring and troubleshooting a system | Paquete
   | cockpit-tukit            | Cockpit module for Transactional Update                                      | Paquete
i+ | cockpit-ws               | Cockpit Web Service                                                          | Paquete
   | microos_cockpit          | Web based remote system managemet                                            | patrón
   | patterns-microos-cockpit | Web based remote system managemet                                            | Paquete

Por ejemplo, no necesitas instalar cockpit-machines si en esa máquina no vas a desplegar máquinas virtuales.

Tanto Leap-micro como MicroOS usan cockpit-tukit para administrar las actualizaciones transaccionales. Leap o Tumbleweed en cambio usan cockpit-packagekit para actualizarse de forma similar a lo que hacen los respectivos applets de escritorio.

Aquí una vista del cliente web con packagekit:

También es interesante el acceso a un terminal (opción terminal).

Vista de la administración de cortafuegos:

La administración de contenedores con Podman es razonable, y la de máquinas virtuales incluye la habilidad de descargar un montón de distribuciones o sistemas operativos.

Hay repositorios personales que añaden paquetes. Encuentro muy útil el paquete cockpit-navigator (un gestor de ficheros que permite subir ficheros). He probado otro, cockpit-dashboard, que permite tener una vista conjunta de los servidores que tengas configurados -pero no funciona muy allá a la hora de conectarse en la prueba que he hecho.

En su web podéis ver distintos listados de aplicaciones disponibles para cockpit.

2 Likes

1. Sobre la administración remota

La instalación de cockpit tal cual se documenta y que he comentado antes está muy bien para sistemas locales, incluso para redes locales. En este entorno, es relativamente seguro abrir un puerto de administración (el 9090 en este caso). Puedes administrar los equipos de un aula o de una oficina desde un solo puesto, con las ventajas esperables.

Es más discutible que pueda ser razonablemente seguro en un entorno donde esa oficina o aula son remotas. Para acceder a la red se hace através del router y su IP pública, que en pequeñas organizaciones será dinámica. Para poder acceder a Cockpit en esas condiciones, hay que hacer lo mismo que para cualquier otro servicio al que se quiera acceder desde el exterior: disponer una IP estática o algún sistema para usar IP dinámicas (DynDNS o cosas similares), abrir el puerto -al menos el de SSH-…

Un entorno donde es útil es cuando administramos servidores remotos, tanto si son servidores dedicados como si se trata de servidores virtuales privados (VPS). Esas máquinas proporcionan acceso directo, así que basta exponer algún servicio de conexión para acceder a ellas, ya que vendrán con una IP e incluso tendremos algún nombre de dominio asociado a esa IP.

Un dashboard permite tener una vista del funcionamiento de nuestros servidores y facilita un poco su acceso.

Es de esperar que con el tiempo surjan más herramientas y posibilidades para Cockpit. Obviamene las posibilidades de Cockpit por ahora no alcanzan a YaST (en tiempos tuvimos WebYaST, ¿os acordáis?), pero es una forma muy interesante de administrar nuestros equipos.