Nuevo lanzador para simplificar el uso e instalación de Cockpit

@karlggest hay importantes cambios en las 16.2 y 16.3 donde se ha reescrito casi todo excepto lo de los errores de 16.3.3 y 16.3.4 que sigue igual.

Se ha reflejado y destacado las diferencias entre usar navegador, cliente nativo y cliente flatpak. Tu guía me ha servido de inspiración.

[2 de mayo de 2026] - Mejoras de Indexación y Administración

  • Cockpit:
    • Nueva sección sobre el uso del Cliente Flatpak (instalación de usuario) para gestión mediante SSH.
    • Actualización de seguridad: Diferenciación de puertos en el cortafuegos (9090 vs 22).
    • Requisitos previos: Añadida la necesidad de activar el servicio sshd para conexiones locales y remotas.
    • Reescritura completa de las secciones 16.2 Instalación y Activación del Servicio y 16.3 Primer acceso y Seguridad.
  • Multimedia: Estructura de galería responsive para comparar los métodos de acceso a Cockpit (Navegador, Nativo y Flatpak).

Ahí van algunas observaciones.

  • En 16.3.1 Los tres tipos de acceso distingues tres tipos de acceso. Para el cliente gtk cockpit-client-launcher y para el cliente gtk de flatpak distingues la forma de acceso. Uno sugieres llamarlo desde el lanzador, mientras que el otro sugieres lanzarlo con el comando. ¿Por qué? Es una guía para Leap con Plasma, los paquetes flatpak estarán bien integrados con su lanzador correspondiente.
  • En 16.4.1 Visión global (Overview) no veo la captura de la versión Flatpak, no sé si aun no la has subido o si es una errata.
  • En 16.8.4 Generar claves SSH si no las tienes bien, una de las cosas de Cockpit es que te puede generar las claves de un sistema al que tengas acceso: puedes crear un acceso con clave, acceder a él y deshabilitar el acceso con cuenta/contraseña.

Una reflexión general y un matiz:

Cuando se añade Cockpit para Leap ya existe una versión Flatpak. Usar el navegador en la máquina local no requiere mucho: un navegador con la URL localhost:9090, haberlo instalado previamente y puesto en marcha el socket cockpit.socket), mientras que al instalar la versión Flatpak ya se instala todo lo necesario con ella. Cockpit-client-launcher llega como una especie de alternativa a esa versión Flatpak para la gente que no es gusta usar Flatpak. Cockpit-client-launcher comprueba si está accesible cockpit (si el socket está en marcha y si no lo está, lo activa).

El matiz: igual que con la versión rpm no necesitas abrir el puerto 9090 para una conexión local, tampoco tienes que abrir el 22 o activar sshd para las conexiones locales con el cliente flatpak. Lo necesitas, claro, para las conexiones remotas.

1 Like

No, sugiero lanzar ambos lanzadores por el menú de Plasma o por el comando que se indica.

No lo había subido, ya esta la imagen.

No entiendo este párrafo. :face_with_thermometer: ¿Qué sugieres?

He modificado las secciones 16.2.3, 16.2.3 (con cambio del titulo) y 16.3.1 para poner tu reflexión y matiz sobre conexiones locales y conexiones remotas y los puertos que hay que abrir en estas ultimas. Gracias por explicarlo.

Se ha creado una nueva sección 16.3.3 Elevación de privilegios: El modo administrativo

:no_entry_sign: Otra cosa importante: NO TE LEAS TODA LA PAGINA cuando hago cambios, lee el Changelog de lo que he hecho y revísa solamente esos cambios .

Changelog - Guía openSUSE Leap 16.0

Corregido / Mejorado (2026-05-03)

Capítulo 16 - Cockpit: Administración avanzada del sistema vía web

  • :warning: Sección 16.2.2 (Activación y arranque del servicio):

    • Mejorado el tip sobre el uso de clientes, diferenciando claramente entre conexiones locales y remotas
    • Añadida aclaración: para conexiones locales (localhost) no es necesario abrir puertos ni activar SSH manualmente
    • Añadida nota de que el cliente nativo puede activar el socket automáticamente si es necesario
  • :warning:Sección 16.2.3 (Configuración del Cortafuegos):

    • Cambiado el título a “Configuración del Cortafuegos (Firewalld) para conexiones remotas” para mayor claridad
    • Añadida nota importante especificando que solo se necesitan abrir puertos para acceso desde otro equipo de la red
    • Mejorada la estructura de la explicación
  • :warning:Sección 16.3.1 (Los tres tipos de acceso):

    • Ampliado el tip comparativo de métodos de acceso
    • Añadida distinción clara entre requisitos para uso local y remoto en cada método
    • Especificado que el cliente nativo y Flatpak usan SSH y no requieren configuración adicional para uso local
  • :children_crossing: Sección 16.3.3 (Elevación de privilegios: El modo administrativo) - Nueva sección:

    • Explicación del “Modo de acceso limitado” por defecto en Cockpit
    • Diferenciación entre autenticación con contraseña root vs usuario sudo
    • Advertencia de seguridad sobre los riesgos del acceso administrativo
    • Añadida nota sobre la duración del modo administrativo (activo hasta cerrar sesión o refrescar)
    • Tres capturas de pantalla comparativas (navegador, cliente nativo, cliente Flatpak)

Mejoras adicionales

  • Mayor claridad en la distinción entre conexiones locales (no requieren configuración) y conexiones remotas (requieren puertos abiertos y SSH activo)
  • Coherencia en los nombres de las miniaturas de imágenes según el estándar del proyecto
  • El contenido ahora es más preciso y evita confusiones a los usuarios novatos

Nota

  • Los cambios de hoy se centran exclusivamente en mejorar la claridad de la configuración de red y añadir la nueva sección sobre privilegios administrativos
  • Las correcciones de ayer (instalación, cliente Flatpak, etc.) ya están incluidas en el commit anterior
1 Like

En un apartado introduces cómo configurar una conexión ssh con certificado/clave.

Con Cockpit es más sencillo… siempre y cuando tengas acceso al sistema de alguna forma, claro :grinning:

  1. Añades una conexión o “un anfitrión nuevo” en la jerga de Cockpit con su dirección (IP o dominio) y el nombre de la cuenta usuaria si es diferente de la que estás utilizando:

  2. Tienes que iniciar sesión! así que te pide la contraseña, pero justo debajo te indica que si quieres “autorizar la clave ssh”.

  3. Hay que poner al contraseña para poder iniciar sesión, y marcar que se autorice la clave ssh.

Una vez conectado, puedes ir al terminal para cambiar la configuración de ssh para rechazar las conexiones usuario/contraseña y que solo se acepten las que usan el certificado, aunque a mucha gente le bastará con que no le pida contraseña para entrar pero preferirá tener la posibilidad de acceder desde otro sistema diferente, por ejemplo.

Una ventaja de crear los certificados/claves manualmente es que puedes ponerles una clave (que actúa como contraseña). Mis servidores de producción los tengo así.

¿Y por qué tomarme las molestias entonces? Bueno, una clave es una clave. Podría darse que tal vez por lo que sea alguien la obtenga de alguna manera. Pero por mucha clave que tenga el atacante, si no tiene el certificado en su máquina, no podrá acceder. Y si tiene el certificado pero no la clave, tampoco: necesita robarte las dos cosas.

1 Like

SUSE Linux fue famosa por su documentación en castellano. Cockpit es un proyecto que tiene una documentación pésima en inglés. Ains!!! :grinning:

Hay cosas que explico después de otras e igual me lío o lo pongo mal o no lo suficientemente claro.

El cliente flatpak se conecta a la máquina local como si fuera cualquier programa, no necesita ssh ni web.

El cliente “nativo” es un “cliente-web” y necesita conectarse al servidor web que se activa con cockpit.socket. Lo que no necesita es tener el puerto 9090 abierto porque es una conexión local.

En esencia es el texto que tienes en la “nota importante” de la sección 16.2.3.

Resumen:

Cliente flatpack:

  • Local: no necesita nada, lo instalas, en “Conectar a” pones localhost y ya está.
  • Remoto: necesita una conexión ssh accesible en la máquina remota , tanto el servicio activo como el puerto configurado para ese ssh abierto.

Cliente nativo o navegador:

  • Local: necesita el socket en ejecución (cockpit.socket) para conectarse al servidor web.
  • Remoto:
    ** Para conexiones directas al servidor web necesita que esté abierto el puerto 9090.
    ** Para conexiones ssh necesita que en la máquina remota, tanto el servicio activo como el puerto configurado para ese ssh abierto.

Si te quieres conectar a una máquina directamente a su Cockpit, ejecutando un cliente (cualquiera) o el navegador, tienes que conectarte a su dirección (IP o dominio) y puerto 9090. Igual que en localhost:9090 puedes conectarte a 192.168.122.99:9090 o a midominiomolon.org:9090

Para eso tiene que estar en ejecución el servicio cockpit.socket y abierto el puerto, como se ha dicho. Esto es así para todos los clientes.

Pero también puedes conectarte por ssh!! para hacerlo con el navegador o con el cliente nativo tienes que tener una sesión de cockpit en marcha desde la que conectarte. Normalmente eso significará en tu máquina local, pero tú puedes conectarte con el navegador a miservidoraunmasguay.org:9090 y desde ahí iniciar una conexión (añadir anfitrión) a otra máquina diferente, digamos a miotroservidormenosmolon.org. Durante un tiempo lo hice así. Luego instalé Cockpit en mi equipo de escritorio y en el portátil y ya no lo necesité.

El cliente flatpak no maneja ese tipo de sesiones, sino que te conectas antes al sistema cuando te solicita el nombre de host en Conectar a. Entonces tú ejecutas la aplicación, le dices directamente a donde te quieres conectar y ya está.

Un pequeño bug en el cliente nativo es que te pide la clave para cada cosa que necesita hacer, al menos tres veces. Yo creo que eso debería indicarse en la guía, por bug que sea además de molesto puede ser bastante desconcertante.

En algunos puntos haces referencia a usar la IP, pero no es necesario: puedes usar el nombre de dominio, siempre y cuando pueda resolverse, claro. Es lo mismo que haces al poner localhost en lugar de 127.0.01 o la IP local. Si yo añado a mi fichero hosts que pc-guay tiene la ip 192.168.122.99, bastará con conectarme a pc-guay (por ssh) o a pc-guay:9090 :wink: Para los servidores en internet, lo normal es que uses el nombre de dominio.

Por qué empleo el navegador como cliente
Por tres cosas.

  • Tengo el sistema en gallego y tanto la versión flatpak como el cliente nativo se me ejecutan en inglés. Puedo cambiar el idioma, pero cada vez que los ejecuto es igual.
  • Uso un gestor de claves que va bien en el navegador pero en el cliente nativo no. Tengo que probar en Flatpak, pero tampoco me apetece mucho por el punto anterior :grinning:
  • Porque puedo abrir las pestañas que desee, incluso con diferentes conexiones (pero ten cuidado en cuál estás en cada momento!!).
1 Like

Supongo que todo este rollo es precisamente la razón de que Cockpit esté tan mal documentado. Y eso sin meterse en las aplicaciones, solo para conectarte :rofl:

Y Agama no es que tenga una documentación mucho mejor, además de estar en continuo cambio.

En fin, aquí estamos.

1 Like

@karlggest luego miro tus mensajes porque he estado ocupando modificando la guia. Mira abajo de los cambios que he hecho, solo se ha sustituido el texto de una sección, añadido capturas de las secciones y puesto un aviso sobre las capturas.

Changelog - Guía openSUSE Leap 16.0

Añadido / Mejorado (2026-05-04)

Capítulo 16 - Cockpit: Administración avanzada del sistema vía web

  • Sección 16.4 Recorrido por la Interfaz Principal:

    • Añadida nota aclaratoria (div class="obs") detallando que las capturas muestran el modo administrativo activo únicamente para fines ilustrativos, reforzando las buenas prácticas de seguridad.
  • Mejoras en la Documentación Visual:

    • Implementados bloques descriptivos y galerías de imágenes para las secciones:
      • 16.5.2 Almacenamiento (Particiones/RAID).
      • 16.5.3 Redes (Interfaces/Firewall).
      • 16.5.4 Terminal (Consola web).
      • 16.6.1 Gestión de Repositorios.
      • 16.6.2 Instalación de Paquetes.
  • Cambio de Tecnología (Virtualización a Contenedores):

    • Se ha eliminado la sección de Gestión de Máquinas Virtuales debido a su alta carga de dependencias.
    • Nueva sección 16.6.3 Contenedores de Podman: Introducción a la gestión de imágenes, pods y recursos mediante cockpit-podman, alineada con la estrategia de openSUSE.
  • Sección 16.6.3 - Nueva sección: Gestión de Contenedores de Podman (cockpit-podman):

    • Reemplaza a la antigua sección de cockpit-machines (máquinas virtuales)
    • Explicación de las ventajas de Podman sobre la virtualización tradicional
    • Añadida nota destacando el modo rootless (sin privilegios de administrador)
    • Comando de instalación: sudo zypper in cockpit-podman
    • Lista de características: gestión de imágenes, creación de contenedores y pods, consola integrada, control de recursos
    • Tres capturas de pantalla (navegador, cliente nativo, cliente Flatpak)
    • Mantenido el tip comparativo “¿Máquina Virtual o Contenedor?”

Mejoras adicionales

  • Mayor relevancia para openSUSE Leap 16.0, ya que Podman es la tecnología de contenedores nativa y recomendada por SUSE
  • Enfatizada la seguridad del modo rootless, una de las grandes ventajas de Podman frente a Docker

Nota

  • La sección de cockpit-machines (máquinas virtuales) se ha eliminado, pero se ha priorizado Podman por ser más relevante para la mayoría de los usuarios de Leap

¿soy yo o no veo el capítulo 16 en el índice de la guía?

Ves bien :joy:

Si te fijas, estamos en el hilo de Cockpit y no el de la Guía. Ya comente bastantes mensajes arriba de que la creación y modificaciones del nuevo capitulo 16 sobre Cockpit se iba a notificar en este hilo.

Una vez que este terminado, entonces lo añado al menú de navegación y lo notifico en el hilo de la Guía para que @Krovikan lo revise.

No obstante, puedes echar un vistazo al enlace da abajo y dar tu opinión sobre dicho capitulo.

Se ha retocado para añadir el repositorio comunitario ecsos en 16.7 Instalación de aplicaciones de terceros (Bonus) y subsecciones

Changelog - Guía openSUSE Leap 16.0

Añadido / Mejorado (2026-05-04)

Capítulo 16 - Cockpit: Administración avanzada del sistema vía web

  • Sección 16.7 (Instalación de aplicaciones de terceros):

    • Añadido repositorio comunitario de home:ecsos:server para facilitar la instalación y actualización automática de módulos
    • Comando para añadir el repositorio: sudo zypper addrepo -f https://download.opensuse.org/repositories/home:ecsos:server/16.0/home:ecsos:server.repo
  • Sección 16.7.1 (Cockpit Navigator):

    • Diferenciación en dos métodos de instalación:
      • Método A (Recomendado): vía repositorio con sudo zypper install cockpit-navigator
      • Método B (Manual): descarga del RPM desde GitHub
    • Añadidas instrucciones claras para ambos métodos
  • Sección 16.7.2 (Cockpit File Sharing):

    • Añadidas instrucciones de instalación desde repositorio y desde GitHub
    • Enlaces directos a las páginas de lanzamientos oficiales
    • Recordatorio de que estos módulos pueden necesitar el “Acceso Administrativo” activo en Cockpit

Mejoras adicionales

  • Mejor integración con la comunidad openSUSE mediante repositorios adicionales

Nota

  • El repositorio home:ecsos:server ha sido verificado y los paquetes existen para Leap 16.0
  • Los comandos de instalación han sido probados y funcionan correctamente

Buenos días, @karlggest

Presta atención a la sección 16.7.2 Gestión de compartición (File Sharing) donde se explica como activar Samba y NFS para que podamos usar Cockpitt para configurarlo. He instalado los paquetes de del repo ecsos. Como ya tenia Samba instalado, he verificado que funciona. Me falta probar NFS, cuando lo pruebe y vea que hay que hacer para que funcione e igual tengo que modificar la sección para ponerlo.

Changelog - Guía openSUSE Leap 16.0

Corregido / Mejorado (2026-05-05)

Capítulo 16 - Cockpit: Administración avanzada del sistema vía web

  • Sección 16.7.1 (Gestión de archivos / Navigator):

    • Capturas se ha añadido el contenedor-cockpit de capturas de pantallas.
  • Sección 16.7.2 (Gestión de compartición / File Sharing):

  • Añadido servicios smb (samba) nbd (errata) nfs-server (NFS)

  • Corregido el error en los servicios del comando systemctl:

    • nbd (servicio inexistente) → nmb (servicio NetBIOS de Samba para descubrimiento de equipos)
  • Añadido servicio nmb al comando de habilitación: sudo systemctl enable --now smb nmb nfs-server

  • Añadida nota de verificación rápida con sudo systemctl status smb nmb nfs-server

  • Añadidas tres capturas de pantalla que documentan el proceso:

    • Error de configuración Samba (falta directiva ‘registry’)
    • Error de servicio NFS no instalado o inactivo
    • Interfaz funcionando tras la configuración correcta
  • Mejorada la explicación de los comandos de configuración previa obligatoria

Mejoras adicionales

  • Clarificación de que el servicio nmb es necesario para que el servidor Samba sea visible en “Red” en equipos Windows y Linux
  • Añadida verificación de estado de servicios para que el usuario pueda confirmar que todo funciona correctamente

Nota

  • La corrección reemplaza nbd (Network Block Device) por nmb (NetBIOS name service), que es el servicio correcto para Samba
  • Las capturas de pantalla han sido añadidas a la guía y siguen el patrón de nomenclatura establecido

Se ha añadido y/o reemplazado varias imágenes y otros retoques del texto de las imágenes.

Se puede decir que dicho capitulo es el más extenso de la guía, practicamente triplica al siguiente.

1 Like

Bueno, es el que tiene más miga porque para la peña de openSUSE es algo más o menos nuevo, mientras que en cosas como usar Firefox o LibreOffice no te metes.

Pero el de instalación podría ser tan largo o incluso más, dependiendo de si sigues el método breve original o bien añades un detalle sobre el particionado que tiene su miga (ya lo tenía antes, el “método breve” simplemente obviaba eso)

En mi guía detallo la modificación del particionado para mantener un sistema Windows preinstalado, y aun así añadí un capítulo Extra para el particionado detallado. También está lo de /home.

1 Like