Cómo instalar Cockpit en Debian 10

Índice
  1. Introducción
  • Prerrequisitos
  • Paso 1: Instalación de la cabina
  • Paso 2: obtención de un certificado SSL
  • Paso 3: Acceso a la cabina
  • Conclusión
  • El autor seleccionó el Fondo de Código Libre y Abierto para recibir una donación como parte del programa Write for DOnations .

    Introducción

    Cockpit es un panel de administración de servidores que le permite ver el estado de su servidor en tiempo real. Proporciona información sobre la carga de la CPU, estadísticas del sistema de archivos, procesos y más información. Una de las ventajas de Cockpit es que no consumirá ningún recurso del servidor cuando no esté conectado al panel de control; el servicio solo se inicia cuando accede al panel de control.

    Puedes realizar tareas de administración de servidores con Cockpit, como administrar usuarios y solucionar problemas de red. También puedes acceder a una terminal desde un navegador en tu computadora o teléfono. Cockpit utiliza los usuarios de tu sistema para iniciar sesión y administrar el sistema mediante la sudoescalada de privilegios. De esta manera, Cockpit no introduce una capa adicional de consideraciones de seguridad en tu servidor al crear un segundo conjunto de usuarios exclusivos de Cockpit.

    En este tutorial, implementará un panel de administración de servidor Cockpit seguro en un servidor Debian 10.

    Prerrequisitos

    Antes de comenzar esta guía, necesitará lo siguiente:

    • Un servidor Debian 10 configurado utilizando la guía Configuración inicial del servidor con Debian 10. Debe configurar y habilitar el firewall UFW como se describe en la guía.
    • Un nombre de dominio que apunte al servidor que utilizará para acceder a Cockpit. Si necesita información sobre cómo apuntar nombres de dominio, consulte la guía Dominios y DNS . En este tutorial, utilizaremos el nombre de dominio de ejemplo cockpit.your_domain. Su dominio debe apuntar a su servidor antes de comenzar.

    Inicie sesión en su servidor como servidor no raíz habilitado para sudo para comenzar.

    Paso 1: Instalación de la cabina

    En este paso, instalará Cockpit y abrirá el puerto que Cockpit usa en su firewall.

    En primer lugar, realice una actualización del sistema mediante apt. Esto garantizará que su servidor tenga los paquetes más recientes y evitará errores durante la instalación de Cockpit:

    1. sudo apt update
    2. sudo apt upgrade

    A continuación, instale Cockpit:

    1. sudo apt install cockpit

    Ahora, crea un directorio usando el mkdircomando:

    1. sudo mkdir -p /usr/lib/x86_64-linux-gnu/udisks2/modules

    Utilice la -popción para mkdircrear varios niveles de directorio con una sola invocación.

    Creaste este directorio para evitar que se muestre una advertencia inofensiva, pero que distrae, en tu instancia de Cockpit. Esta advertencia aparece porque la udisks2utilidad no puede encontrar el /usr/lib/x86_64-linux-gnu/udisks2/modulesdirectorio, que no se crea de manera predeterminada a menos que udisks2se instalen otros.

    Por último, abre el puerto de acceso de Cockpit 9090y el puerto 80que utilizarás para obtener el certificado SSL en el siguiente paso:

    1. sudo ufw allow 9090
    2. sudo ufw allow 80

    Ya ha instalado Cockpit y ha abierto los puertos para poder utilizar un certificado SSL firmado para su dominio. Recibirá este certificado en el siguiente paso.

    Paso 2: obtención de un certificado SSL

    En este paso, obtendrá un certificado SSL emitido por Let’s Encrypt mediante la utilidad Certbot . Certbot registrará y descargará el certificado y también lo renovará automáticamente cuando caduque.

    Certbot se distribuye como un paquete snapsnap de Ubuntu. La utilidad no está instalada de forma predeterminada en Debian 10, por lo que debe instalarla como parte del snapdpaquete:

    1. sudo apt install snapd

    A continuación, ejecute los dos comandos siguientes para asegurarse de que está ejecutando la última versión de snap:

    1. sudo snap install core
    2. sudo snap refresh core

    Ahora, instale Certbot snap con el siguiente comando:

    1. sudo snap install --classic certbot

    La --classicopción aquí instala el complemento Certbot en modo clásico ; esto reduce el confinamiento y permite el acceso a más recursos de su sistema, lo cual es necesario para que Certbot funcione correctamente.

    A continuación, cree un enlace simbólico desde /usr/bin/certbotpara apuntar al binario Certbot instalado de forma instantánea /snap/bin/certbotcon la lnutilidad:

    1. sudo ln -s /snap/bin/certbot /usr/bin/certbot

    Es necesario crear este enlace simbólico porque no todas las utilidades en Linux saben que deben buscar /snap/bin/archivos de programa; /usr/bin/es una ubicación estándar para los programas instalados por el usuario.

    Nota: Un enlace simbólico funciona en Linux de la misma manera que un acceso directo en Windows: es un puntero desde una ubicación al archivo.

    Ahora que ha instalado la utilidad Certbot, la usará para registrar y descargar el certificado SSL con el siguiente comando:

    1. sudo certbot certonly --standalone --agree-tos --email your_email -d cockpit.your_domain

    Has utilizado las siguientes opciones:

    • certonly:Registra y descarga el certificado SSL sin realizar otros cambios en el sistema.
    • --standalone:Utiliza el servidor web integrado de Certbot para registrar el certificado.
    • --agree-tos:Acepta automáticamente los Términos de Servicio (ToS).
    • --email your_email:Toma su dirección de correo electrónico para registrar el certificado. (Esto solo se utilizará para avisos de vencimiento e información de seguridad).
    • -d cockpit.your_domain:Especifica el nombre de dominio que desea utilizar para su instancia de Cockpit.

    Cuando ejecute este comando, Certbot le preguntará si desea compartir su dirección de correo electrónico con la Electronic Frontier Foundation (los desarrolladores de la utilidad Certbot) para los correos electrónicos no esenciales. No es necesario que acepte esto para registrar el certificado SSL, así que ingrese Y“sí” o N“no” para continuar y registrar el certificado.

    Cuando la utilidad Certbot complete el registro, guardará los archivos de su certificado en formato ./etc/letsencrypt/live/cockpit.your_domain

    Cockpit tiene un par de requisitos para usar un certificado SSL:

    1. El archivo del certificado debe contener el certificado y la clave privada en el mismo archivo.
    2. Este certificado y archivo de clave deben estar ubicados en el /etc/cockpit/ws-certs.ddirectorio y terminar en .cert.

    Como resultado, deberá crear el certificado y el archivo de clave con el certificado SSL que registró para poder usarlo con Cockpit. También deberá configurar Certbot para que vuelva a crear este archivo cuando se renueve su certificado.

    Primero, cree el certificado combinado y el archivo de clave con el siguiente comando:

    1. sudo bash -c "cat /etc/letsencrypt/live/cockpit.your_domain/fullchain.pem /etc/letsencrypt/live/cockpit.your_domain/privkey.pem /etc/cockpit/ws-certs.d/cockpit.your_domain.cert"

    Se utiliza sudo bash -caquí porque sin él el comando fallará. Esto se debe a que la redirección se realiza en un shell diferente al que tiene los sudopermisos.

    El catcomando imprime el contenido del certificado y los archivos de clave en la salida estándar, por lo que luego este contenido se redirige a un nuevo archivo.

    A continuación, creará el script posterior a la renovación que ejecutará Certbot. Este script volverá a crear el certificado y el archivo de clave con el certificado renovado y reiniciará el servicio Cockpit para que comience a usarlo.

    Abra el script /etc/cockpit/certificate-renewal.shcon un editor de texto:

    1. sudo nano /etc/cockpit/certificate-renewal.sh

    Añade el siguiente código en este archivo:

    renovación de certificado.sh

    #!/usr/bin/env bashecho "Recreating Cockpit SSL Certificate"cat /etc/letsencrypt/live/cockpit.your_domain/fullchain.pem /etc/letsencrypt/live/cockpit.your_domain/privkey.pem  /etc/cockpit/ws-certs.d/cockpit.your_domain.certecho "Restarting Cockpit"systemctl restart cockpit.socket

    Ha especificado lo siguiente:

    • #!/usr/bin/env bash:Este es el procedimiento que le indica a Linux qué programa debe usar para ejecutar el script. En este caso, se estipula el shell Bash de GNU .
    • echo:Este comando imprime el mensaje que aparece a continuación. Lo recibirás cuando pruebes la renovación del certificado.
    • cat:Este es el mismo comando que ejecutó para crear el archivo certificado y de clave anteriormente en el tutorial.
    • systemctl restart cockpit.socket:Esto reinicia Cockpit para que utilice el nuevo certificado.

    Haga que este certificado sea ejecutable cambiando sus permisos con chmod :

    1. sudo chmod 755 /etc/cockpit/certificate-renewal.sh

    Si no está seguro acerca de los permisos de archivos de Linux, consulte Introducción a los permisos de Linux para obtener más información.

    A continuación, configurará Certbot para ejecutar este script cuando renueve el certificado SSL agregando una línea a ./etc/letsencrypt/renewal/cockpit.your_domain.conf

    Abra este archivo con un editor de texto:

    1. sudo nano /etc/letsencrypt/renewal/cockpit.your_domain.conf

    Añade la siguiente línea al final de la [renewalparams]sección:

    cabina.tu_dominio.conf

    post_hook = /etc/cockpit/certificate-renewal.sh

    A continuación, pruebe que la nueva configuración funciona con el siguiente comando:

    1. sudo certbot renew --dry-run

    Las --dry-runopciones indican a Certbot que realice una renovación de certificado, pero sin realizar ningún cambio en sus certificados. Recibirá las siguientes líneas en la parte inferior del resultado:

    OutputRunning post-hook command: /etc/cockpit/certificate-renewal.shOutput from post-hook command certificate-renewal.sh:Recreating Cockpit SSL CertificateRestarting Cockpit

    Esto le indica que el proceso del script de renovación está funcionando correctamente cuando se produce la renovación del certificado SSL.

    Por último, reinicie Cockpit para cargar el certificado SSL:

    1. sudo systemctl restart cockpit.socket

    Ahora ha configurado completamente su instancia de Cockpit y está listo para iniciar sesión.

    Paso 3: Acceso a la cabina

    Has configurado la interfaz de Cockpit para que escuche en el puerto 9090, por lo que tendrás que especificar este puerto al final de la URL que escribas en tu navegador. Esta es la URL de tu instancia de Cockpit:

    Cockpit Login URLhttps://cockpit.your_domain:9090

    Cockpit no mantiene una lista separada de usuarios, sino que utiliza los usuarios del sistema. Estos son los usuarios que creas con el addusercomando.

    Puedes iniciar sesión con el usuario que creaste en la guía de configuración inicial o crear uno nuevo siguiendo el mismo procedimiento.

    El formulario de inicio de sesión tiene una casilla de verificación denominada Reutilizar mi contraseña para tareas privilegiadas .

    Si marca esta opción podrá ejecutar comandos que requieran sudodentro de Cockpit siempre que el usuario tenga sudoderechos de acceso.

    La interfaz de Cockpit tiene tres áreas principales. La primera es la página de información del sistema en tiempo real. Acceda a esta página ubicando el panel de navegación izquierdo y haciendo clic en el icono del medidor.

    Al hacer clic aquí, accederá a gráficos en tiempo real que muestran la CPU, la memoria, la red y la E/S del disco de su servidor.

    La siguiente sección es la sección Información detallada y administración . Acceda a esta sección haciendo clic en el icono del servidor en el panel de navegación de la izquierda.

    Esta sección de Cockpit proporciona información detallada sobre muchos aspectos de su sistema, como los registros y los archivos del sistema. También puede administrar algunas partes de su servidor, como agregar y eliminar usuarios y administrar el almacenamiento del sistema. Encontrará la terminal bash del navegador en esta sección.

    Para editar la configuración de usuario de Cockpit, haga clic en el icono de usuario en la parte superior de la interfaz y seleccione Configuración de cuenta . Aquí puede cambiar el idioma de la interfaz, la contraseña y la dirección de correo electrónico.

    Ahora has accedido a tu instancia de Cockpit desde tu navegador.

    Conclusión

    En este tutorial, instalaste Cockpit y aseguraste tu conexión con un certificado SSL para tu dominio. Ahora puedes usar tu navegador para ver el uso de recursos en tiempo real, administrar y acceder a tu servidor desde un símbolo del sistema.

    Puede leer más sobre cómo ampliar su instancia de Cockpit con la ayuda de la documentación oficial .

    SUSCRÍBETE A NUESTRO BOLETÍN 
    No te pierdas de nuestro contenido ni de ninguna de nuestras guías para que puedas avanzar en los juegos que más te gustan.

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    Subir

    Este sitio web utiliza cookies para mejorar tu experiencia mientras navegas por él. Este sitio web utiliza cookies para mejorar tu experiencia de usuario. Al continuar navegando, aceptas su uso. Mas informacion