Licencia

Copyright (C)  2022-2025  Soleta Networks
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.

1. Introducción a OpenGnsys Enterprise 3

En este capitulo se ofrece una descripción de OpenGnsys Enterprise 3, incluyendo las funcionalidades soportadas, así como su arquitectura y componentes.

1.1. ¿Qué es OpenGnsys Enterprise 3?

OpenGnsys Enterprise es un software libre para el mantenimiento de aulas TIC de entornos educativos que permite la creación de imágenes de sistemas operativos Windows y Linux, así como el despliegue masivo de dichas imágenes.

Entre las funcionalidades más destacables, se encuentran:

  • Arranque de los ordenadores por medio de Wake On LAN (WoL) así como el reinicio y apagado de los ordenadores gestionados.

  • Gestión de modos de arranque de los ordenadores por medio de PXE, haciendo uso para ello de GNU Grub2 como gestor de arranque tanto en red, por medio de TFTP y HTTP, como en disco, para iniciar alguno de los sistemas operativos disponibles en disco. Para ello es necesario un servidor de DHCP, aunque es posible hacer uso de una preinstalación de ISC DHCP server si no se dispone de un servidor DHCP en la red para la gestión de los ordenadores administrados.

  • Un sistema live basado en Linux que permite la gestión administrativa de los ordenadores.

  • Creación de imágenes de sistemas operativos Windows y Linux a partir de una instalación en un ordenador de referencia.

  • Particionado y formateado masivo de los ordenadores de una o varias aulas, ya sea un esquema MBR para equipamiento BIOS legacy o GPT para equipamiento UEFI.

  • Distribución de imágenes colaborativa de manera eficiente que permite a los ordenadores de un aula compartir un imagen de un sistema operativo entre sí. En este sistema el servidor que actúa como balanceador de carga entre los propios ordenadores del aula. No se trata de una solución P2P pero ofrece un rendimiento para transferencia de datos y su complejidad es menor.

  • Uso de un espacio de caché en el equipamiento para el almacenamiento de imágenes de sistemas operativos a restaurar, así como la restauración de imágenes desde caché. Esto permite mitigar los altos tiempos de descarga en entornos donde aún prevalecen redes de 100 Mbits.

  • Restauración de imágenes de sistema operativos Windows y Linux de manera masiva.

  • Ejecución de scripts de configuración nativos sobre los ordenadores gestionados, ya sea en Windows Powershell o en Linux Bash.

  • Gestión de UEFI, permitiendo el establecimiento del orden de arranque (BootOrder) así como el establecimiento del arranque en el siguiente reinicio (BootNext) tras el cual vuelve al orden de arranque establecido (BootOrder).

OpenGnsys Enterprise soporta tanto equipamiento UEFI y legacy BIOS.

OpenGnsys Enterprise ofrecer un panel de control web centralizado y, alternativamente, una herramienta de línea de comandos, para llevar las tareas de administración mantenimiento descritas anteriormente.

OpenGnsys Enterprise dispone de un instalador para Ubuntu 22.04 LTS (Jammy Jelly) y ofrece actualizaciones del software por medio de un repositorio propio de paquetes APT, con el objetivo simplificar su mantenimiento y ofrecer una manera ágil la instalación de arreglos y nuevas funcionalidades.

1.1.1. Arquitectura y componentes en OpenGnsys Enterprise 3

image

La arquitectura de OpenGnsys Enterprise está basada en los siguiente componentes:

ogserver es el servidor principal de OpenGnsys Enterprise que proporciona una API REST HTTP para el front-end web y la herramienta de línea de comandos. Por medio de dicha API se envían órdenes a los ordenadores que están registrados en el sistema. ogserver mantiene una base de datos de los ordenadores que son administrados por este software, así como la configuración actual de dichos ordenadores. El servicio ogserver comprueba la versión del esquema de la base de datos y aplica de manera automática las actualizaciones necesarias a dicha base de datos, por lo que no es necesario el mantenimiento por separado de ficheros SQL con diferencias entre versiones del esquema de la base de datos.

ogcp es el panel de control web para la administración de OpenGnsys Enterprise, es el componente preferido de los administradores de sistemas y operadores de las aulas TIC.

ogcli es la herramienta de línea de comandos, alternativa a la web ogcp, que permite realizar tareas administrativas de manera programática mediante scripting. La salida de ogcli estructura la información que se imprime por pantalla en formato JSON.

ogrelive es un sistema operativo live basada en Linux que se usa para la administración de los ordenadores de las aulas. Si el administrador establece el modo de arranque ogrelive el ordenador se descarga mediante la red dicha imagen live y, siempre que haya una espacio de caché disponible, almacena una copia del sistema live para acelerar el arranque en disco. El sistema live ejecuta en la memoria RAM por lo que permite la ejecución de tareas administrativas sobre los discos de los clientes mediante ogclient tales como particionar, formatear, crear, restaurar y configurar las imágenes de sistemas operativos a desplegar en el aula, así como la modificación de la configuración UEFI del ordenador.

ogclient es el agente que se ejecuta en los ordenadores administrados. El sistema operativo live arranque este software, que a su vez se conecta al ogserver para informar sobre el estado del ordenador y queda a la espera de órdenes administrativas. El ogclient recibe del ogserver las órdenes de particionado, formateado, creación, restauración y configuración de imágenes de sistemas operativos. Este agente funciona también en los sistemas operativos Linux y Windows desplegados en el ordenador, lo que permite su gestión remota, para realizar operaciones tales como configuraciones incrementales, reinicio y apagado del ordenador. El ogclient registra su actividad en un fichero de log. Para la transferencia de datos emplea tiptorrent y, alternativamente, samba (CIFS).

tiptorrent es un software para la distribución colaborativa de imágenes de sistemas operativos por red, ofrece una solución de menor complejidad a la transferencia de imágenes mediante multicast y software P2P. ogclient hace uso de este software para la transferencia de imágenes.

python-libfdisk es un binding de Python usado por ogclient que permite particionar los ordenadores de un aula haciendo uso de la biblioteca libfdisk disponible en el paquete de software util-linux.

2. Instalación y actualización de OpenGnsys Enterprise 3

En este apartado se describe la instalación de OpenGnsys Enterprise 3, así como las recomendaciones y requisitos previos, y el procedimiento actualización de OpenGnsys Enterprise.

2.1. Recomendaciones previas a la instalación de OpenGnsys Enterprise 3

Se recomienda desplegar OpenGnsys Enterprise en un servidor que disponga, como mínimo, de 8 Gbytes de memoria RAM, preferiblemente memoria ECC, y un espacio de disco de al menos 500 Mbytes y una tarjeta de red de al menos 1 Gbit.

Es recomendable el despliegue en una máquina virtual para facilitar la realización de copias de seguridad, la creación de snapshots y la migración a nuevo equipamiento de servidor.

2.1.1. Virtualización mediante QEMU, KVM y LibVirt

Recomendamos la instalación del servidor de OpenGnsys Enterprise en el sistema de virtualización Open Source Libvirt/QEMU/KVM, herramientas nativas en Linux. Este sistema hace uso de los sistemas de aceleración de máquinas virtuales disponibles en CPU modernas (Intel VT-x) así como técnicas de aceleración de paravirtualización VirtIO disponibles en Linux.

Libvirt ofrece un front-end gráfico y de línea de comandos de fácil uso que facilita la interacción con el software de máquina virtual QEMU sobre el que se despliega. KVM es el hipervisor de las máquinas virtuales.

El despliegue del servidor de OpenGnsys en un entorno virtualizado trae consigo beneficios importantes:

  • Realización de "snapshots" de las máquinas virtuales. Permite copias de seguridad en caliente,con la VM encendida, y en frio, con la VM apagada.

  • Migraciones de la máquina virtual a un nuevo hardware cuando esté disponible sin tener que instalar de nuevo el servidor de OpenGnsys.

  • Creación de una segunda máquina virtual de preproducción para el despliegue inicial de actualizaciones de OpenGnsys sobre una serie de aulas de pruebas para validar la correcta operatividad antes de la puesta en producción.

No obstante, es posible desplegar OpenGnsys Enterprise en otras tecnologías de virtualización existentes.

2.2. Requisitos para la instalación de OpenGnsys Enterprise 3

OpenGnsys Enterprise 3 requiere una instalación de Ubuntu 22.04 LTS (Jammy Jelly) para su despliegue, ofrecemos un script de instalación que facilita su despliegue.

2.3. Script de instalación de OpenGnsys Enterprise

La instalación OpenGnsys Enterprise se realiza mediante un instalador disponible en la zona de descargas de la web de OpenGnsys Enterprise.

Una vez descargado el instalador de la web de OpenGnsys Enterprise (https://opengnsys.soleta.eu/download) procederemos a su ejecución como root:

$ wget https://opengnsys.soleta.eu/installer.sh
# bash installer.sh

El script de instalación solicita la siguiente información:

  • Usuario y contraseña del administrador de OpenGnsys por medio de ogCP.

  • Usuario y contraseña para la base de datos MySQL que usa ogserver.

  • Contraseña del servidor de SAMBA.

  • Interfaz de red del servidor de OpenGnsys.

  • Dirección IP del servidor de OpenGnsys.

Solicitud de usuario y contraseña de ogCP durante la ejecución del instalador
Specify your ogCP user name:
Specify your ogCP password:
Solicitud de usuario y contraseña de web de administración "legacy"
Specify MySQL database new user (to be used by ogServer):
Specify your MySQL database password:
Solicitud de configuración del servidor de SAMBA
Specify password for your SAMBA server:

A continuación se solicita la interfaz de red del servidor de OpenGnsys, se muestra un listado con las interfaces disponibles en el sistema, en el ejemplo se muestra la interfaz ens3 está disponible.

Solicitud de configuración del servidor de OpenGnsys
Detected network interfaces: ens3
Introduce the default network interface:

Tras esto, se muestran las direcciones IP asociadas a la interfaz seleccionada y se solicita al usuario que especifique la dirección IP a utilizar.

Solicitud de configuración del servidor de OpenGnsys
Configured addresses in network device ens3: 192.168.122.78
Introduce your default OpenGnsys server IPv4 address:

Finalmente, se muestra la configuración previa a la instalación, solicitando confirmación al usuario.

Solicitud de confirmación de configuración
Please, verify that your configuration below is correct.

===================================
- ogCP user name: admin
- ogCP password: test123
- MySQL database user name: admin
- MySQL database password: mysecretpass
- SAMBA server password: mysambapass
- Default network device: ens3
- Server IP address:  192.168.122.78
===================================

Would you like to proceed with this installation of OpenGnsys Enterprise (y/n)?
Anote esta información de configuración en un lugar seguro.
Es posible abortar de manera segura la instalación en este momento de confirmación tecleando 'n' y pulsando la tecla 'intro'.
No interrumpa el proceso de instalación si acepta proceder con la instalación de OpenGnsys Enterprise.

2.4. Actualización de OpenGnsys Enterprise 3

El instalador de OpenGnsys Enterprise configura de manera automática el repositorio de APT propio que ofrece las actualización para su instalación de OpenGnsys Enterprise 3.

Fichero de configuración de APT con el repositorio adicional de Soleta Networks
$ cat /etc/apt/sources.list.d/soleta.list
deb [trusted=yes] https://opengnsys.soleta.eu/ubuntu-jammy/ /

Por lo que el administrador sólo tiene que ejecutar las siguientes órdenes para mantener su instalación de OpenGnsys Enterprise 3 actualizada.

Órdenes para actualizar los paquetes de OpenGnsys Enterprise 3
# apt update
# apt upgrade
Es conveniente mantener actualizado su sistema OpenGnsys Enterprise 3 con la última versión de los paquetes disponible.

Tras esto, es conveniente reiniciar los servicios ogserver y ogcp si han sido actualizados.

Reinicio de los servicio ogserver y ogcp
# systemctl restart ogserver
# systemctl restart ogcp

2.5. Migración desde OpenGnsys 1.1.1d

Para migrar una instalación existente de OpenGnsys 1.1.1d a OpenGnsys Enterprise 3 debe de realizar los siguientes pasos:

  • La exportación de la base de datos, denominada ogAdmBD y su posterior importación.

  • La copia de las imágenes de los sistemas operativos existentes.

Asegúrese de que ha detenido el proceso ogAdmServer antes de realizar la exportación de la base de datos existente en su instalación de OpenGnsys 1.1.1d.
Exportación de la base de datos de OpenGnsys 1.1.1d
# mysqldump -u root -p ogAdmBD > dump-bd-111d.sql
# gzip dump-bd-111d.sql
Compruebe si emplea un nombre diferente a ogAdmBD para su base de datos.

Para la importación de la base de datos a OpenGnsys Enterprise, realice una copia de seguridad previa de la base de datos existente.

Importación de la base de datos a OpenGnsys Enterprise
# mysqldump -u root -p ogAdmBD > dump-bd-oge-3.sql
# gzip dump-bd-oge-3.sql

y tras esto, pare el servicio ogserver:

Detenga el servicio ogserver
# systemctl stop ogserver

y proceda a la importación de la base de datos:

Importación de la base de datos a OpenGnsys Enterprise
# mysql -u root -p
mysql> drop database ogAdmBD;
mysql> create database ogAdmBD;
mysql> (pulse ctrl-D)
# mysql -u root -p ogAdmBD < dump-bd-111d.sql

y relance el servicio ogserver, que realizará la actualización de la base de datos de manera automática.

Reinicio del servicio ogserver
# systemctl start ogserver

Compruebe que el estado de ogserver es correcto mediante:

Reinicio del servicio ogserver
# systemctl status ogserver
En caso de error, consulte /var/log/syslog para comprobar el error de ogserver al actualizar la base de datos.

Si emplea la instalación de ISC DHCP server disponible en OpenGnsys 1.1.1d, debe también importar el fichero de configuración /etc/dhcp/dhcpd.conf existente a la nueva instalación de OpenGnsys Enterprise 3 y reiniciar el servicio isc-dhcp-server.

Recuerde reemplazar grldr (arranque de Grub4DOS) por grub/i386-pc/core.0 (Grub2) para arch 00:00 en la configuración de DHCP que representa el equipamiento BIOS legacy.
Opengnsys Enterprise 3 únicamente hace uso de Grub2 tanto para ordenadores UEFI y BIOS legacy.

Recuerde copiar las imágenes de sistemas operativos existentes a la carpeta /opt/opengnsys/images de su nueva instalación de OpenGnsys Enterprise 3.

Compruebe el propietario y los permisos de las imágenes importadas pertenecen al usuario opengnsys y el grupo opengnsys.

Finalmente, realice dos operaciones:

  • Establezca el modo de arranque ogrelive desde la vista de Commands en el desplegable Clients en el apartado Set Boot Mode.

  • Establezca 6.1.0-32-amd64 como live por defecto.

Los sistemas ogLive empleados en 1.1.1d no son compatibles con OpenGnsys Enterprise 3.
Soleta Networks ofrece soporte para la migración desde OpenGnsys 1.1.1d y versiones anteriores, para más información, contacte opengnsys@soleta.eu.

3. Integración con el servidor de ISC DHCP preinstalado

En este apartado se describe la integración de la preinstalación del servidor de DHCP ISC en OpenGnsys Enterprise 3.

Si dispone de un servidor de DHCP externo, consulte con el administrador de DHCP. No obstante, este apartado le puede servir de referencia.

En caso de disponer de una instalación de OpenGnsys 1.1.1d y hacer uso de un servidor de DHCP externo, recuerde reemplazar grldr (arranque de Grub4DOS) por grub/i386-pc/core.0 (Grub2) para arch 00:00 en la configuración de DHCP que representa el equipamiento BIOS legacy.

3.1. Añadir un equipo cliente al servidor ISC DHCP

Es necesario asignar una IP a los equipos clientes a través del servidor DHCP para habilitar el arranque por red (PXE), puedes leer más detalles en esta sección.

A continuación se describen los pasos para asignar una dirección IP estática para un equipo cliente a través de la configuración del servidor DHCP (dhcpd.conf)

Para ello bastará con incluir en el fichero /etc/dhcp/dhcpd.conf una entrada host con los datos del cliente: un nombre, dirección MAC y dirección IP a asignar.

A continuación se encuentra una entrada de ejemplo para un equipo con MAC 00:26:b0:e6:bc:18 al cual se le asigna la dirección IP 10.141.10.106.

host nombre_cliente { hardware ethernet 00:26:b0:e6:bc:18; fixed-address 10.141.10.106; }

Una vez actualizada la configuración del servidor DHCP debemos reiniciar el servicio ejecutando:

systemctl restart isc-dhcp-server.service

Para asegurarte de que el servidor de DHCP se inicia la próxima vez que hagas un reinicio del servidor, activa el servicio:

systemctl enable isc-dhcp-server.service

3.2. Depuración de problemas del servidor de DHCP

A continuación se listan mensajes de error o avisos habituales que se pueden encontrar en el log del servidor DHCP.

Puedes consultar el log del servidor DHCP ejecutando journalctl -u isc-dhcp-server

3.2.1. "DHCPDISCOVER from …​ : no free leases"

Si nos encontramos en el log del servidor DHCP mensajes como el siguiente:

DHCPDISCOVER from d0:bf:9c:03:3b:40 via eth0: network 10.1.0.0/16: no free leases

En tal caso se ha recibido una petición de un cliente cuya dirección física (MAC) no tiene asignada una dirección IP estática.

Asegúrate de:

  • La configuración del servidor DHCP incluye una asignación de IP estática para la MAC del cliente.

  • Reiniciar el servidor después de haber realizado cambios en la configuración del servidor DHCP.

Este log puede ser normal si hay más servidores de DHCP en la red y su servidor solo se encarga del equipamiento registrado en OpenGnsys Enterprise 3.

4. ogCP: web de administración de OpenGnsys Enterprise 3

ogCP (OpenGnsys Control Panel) es la web de administración de OpenGnsys Enterprise 3.

Ofrece inicialmente un pantalla de validación del usuario administrador, tras la cual se da paso a una vista de estadísticas de uso y el estado general del despliegue.

La estructura de la web es la siguiente:

  • La barra lateral (sidebar) generalmente muestra un árbol con los centros, aulas y equipos registrados. Si es una nueva instalación, aparece únicamente un centro por defecto sin aulas y equipamiento. No obstante, puede mostrar otra información según la vista seleccionada en la barra superior.

  • La barra superior, que enumera la siguientes vistas:

    • Dashboard ofrece la vista de estadísticas.

    • Commands ofrece la vista de comandos que se puede realizar sobre los clientes.

    • Images ofrece la vista para la gestión de las imágenes, trales como el listado, borrado y consulta de los detalles de las imágenes.

    • Scopes ofrece la vista para gestionar el árbol de centro, aulas y ordenadores que aparece en el sidebar.

    • Repos ofrece la vista para gestionar repositorios, en caso de tratarse de una instalación en las que el servidor únicamente actúe como panel de control sobre los clientes, y las transferencia de datos se realicen en repositorios de proximidad a los clientes.

    • Servers para establecer las IPs asociadas al servidor, por defecto la instalación incluye una única IP inicial.

    • Lives para la gestión de las imágenes live disponibles.

    • Users para la gestión de usuarios.

  • Marco principal, que muestra el contenido de la vista seleccionada.

4.1. Instalación de ogCP

El instalador de OpenGnsys Enterprise 3 disponible en https://opengnsys.soleta.eu/download ya incluye a ogCP por defecto.

4.2. Acceso a ogCP: dirección del servicio

Para acceder a la página de validación ogCP, tiene que introducir la siguiente dirección en el navegador:

http://(ip_del_servidor):5000/
Si el servidor de OpenGnsys tiene una interfaz de red configurada con la dirección 10.141.0.1, entonces puedes acceder a ogCP a través de la dirección: http://10.141.0.1:5000

4.3. Restricción de acceso y soporte HTTPS para ogCP

ogCP dispone de un unit file para systemd que lanza el servicio ogCP tras la instalación. Es posible realizar modificaciones en dicho unit file para restringir el acceso a ogCP a una cierta dirección IP y activar el soporte de HTTPS.

Para ello hay que definir un override en el unit file de ogcp para systemd, puesto que no se recomienda la edición a mano del fichero del fichero /lib/systemd/system/ogcp.service ya que los cambios realizados manualmente se pierden tras una actualización de paquete ogcp.

Para definir un override del unit file que se instala en el paquete ogcp se invoca el siguiente comando que abre un editor:

systemctl edit ogcp.service

En caso de querer exponer el acceso a ogCP desde una dirección IP específica hay que hacer uso del parámetro --bind, por ejemplo, si solo se quiere exponer el servicio a través de la interfaz `10.141.10.1

[Service]
ExecStart=
ExecStart=-/opt/opengnsys/ogcp/flask/bin/gunicorn --workers 1 --bind=10.141.10.1:5000 ogcp:app

Tras este cambio, es necesario relanzar el servicio ogCP:

# systemctl restart ogcp.service
Activación del certificado autofirmado snakeoil

Para activar el soporte de HTTPS es posible hacer uso del certificado digital autofirmado snakeoil que se genera mediante la siguiente invocación:

make-ssl-cert generate-default-snakeoil

que genera los ficheros:

/etc/ssl/private/ssl-cert-snakeoil.key
/etc/ssl/certs/ssl-cert-snakeoil.pem

Al tratarse de un certificado autofirmado, el usuario obtendrá un aviso en el navegador que indica que el certificado no es fiable, para que dé su consentimiento.

Por ello, consideramos que lo más conveniente generar certificados digital generados por una autoridad de certificación, tales como los ofrecido por Fábrica Nacional de Moneda y Timbre (FNMT) o el proyecto Let’s Encrypt.

Para la activación de HTTPS, se puede emplear de nuevo la funcionalidad de override que ofrece systemd:

systemctl edit ogcp.service

y hay que incluir los parámetros --keyfile y --certfile, tal y como se muestra en el ejemplo:

[Service]
ExecStart=
ExecStart=-/opt/opengnsys/ogcp/flask/bin/gunicorn --workers 1 --certfile=/etc/ssl/certs/ssl-cert-snakeoil.pem --keyfile=/etc/ssl/private/ssl-cert-snakeoil.key --bind=0.0.0.0:5000 ogcp:app

Tras este cambio, es necesario relanzar el servicio ogCP:

# systemctl restart ogcp.service

Una vez activado HTTPS, el acceso al portal de login de ogCP a través del puerto 5000 se puede realizar a través de https://(ip):5000/, sustituyendo (ip) por la dirección de la máquina que ejecuta ogCP.

Uso de gunicorn, un servidor HTTP WSGI para el despliegue de ogCP

gunicorn es un servidor HTTP WSGI es la opción recomendada para despliegues en producción de ogCP. Este servidor viene incluido en el propio paquete ogcp con el panel de control web de OpenGnsys Enterprise.

4.4. Vista de administración de ogCP

En este apartado se describen las vistas de administración disponibles en ogCP y su función.

4.4.1. Login: Vista de validación de usuario

ogcp login

Se trata de la vista inicial que muestra ogCP al entrar a la web desde un navegador. Para ingresar, introduzca el usuario administrador y contraseña que ha especificado en la instalación de OpenGnsys Enterprise 3.

4.4.2. Dashboard: Vista de estadísticas

ogcp dashboard

En esta vista se muestran información general sobre su instalación de OpenGnsys Enterprise 3, tales como:

  • Información general

    • Fecha y hora de los servidores donde se encuentran los ogServer

    • Tiempo de actividad de los servidores

    • Tiempo de actividad de los ogServer

    • Número de clientes conectados

    • Número de imágenes almacenadas

  • Información sobre el almacenamiento, RAM y swap

    • Tamaño total en gigabytes

    • Cantidad en uso en gigabytes

    • Cantidad libre en gigabytes

  • Últimas imágenes creadas

  • Versiones de ogLive disponibles

4.4.3. Commands: Vista de administración de ordenadores

ogcp commands

En esta vista permite la gestión y mantenimiento en modo live de los ordenadores registrados en OpenGnsys Enterprise 3, que son las siguientes:

  • Client: Comandos sobre ordenadores clientes

    • Arranque de uno de los sistemas operativos instalados en el ordenador

    • Manejo del espacio de caché disponible en el cliente

    • Detalles de cliente

  • Setup: Configuración de los ordenadores clientes

    • Establecer el modo de arranque

    • Establecer el repositorio al que pertenece el cliente

    • Establecer el live empleado

    • Particionar y formatear de ordenadores cliente

  • Power: Opciones de energía de los ordenadores clientes

    • Encender ordenadores

    • Apagar ordenadores

    • Reiniciar ordenadores

  • Image: Gestión de imágenes en ordenadores

    • Crear una imagen a partir de un ordenador de referencia

    • Actualizar una imagen existente a partir de un ordenador de referencia

    • Restaurar una imagen a ordenadores de manera masiva

    • Descargar una imagen a la caché de ordenadores de manera masiva

  • Inventory: Gestión del inventario de los clientes

    • Consultar el inventario software de un ordenador

    • Consultar el inventario hardware de un ordenador

  • Run: Ejecución de scripts sobre los ordenadores

    • Ejecutar un script, disponibles en /opt/opengnsys/clients/shell.

    • Ejecutar un comando

    • Consultar la salida por pantalla de un script o comando

  • Logs de los ordenadores

    • Log del sistema

    • Log de tiempo real: muestra la actividad más reciente y se actualiza periódicamente

Órdenes disponibles en modo Linux y Windows

En modo linux y windows solo es posible reiniciar, apagar y lanzar órdenes y scripts a los clientes.

4.4.4. Images: Vista de gestión de imágenes

ogcp images

En esta vista los usuarios pueden realizar todas las tareas relacionadas con la gestión y almacenamiento de imágenes.

Las tareas que podemos realizar son las siguientes:

  • Consultar las imágenes existentes

  • Consultar los detalles de la imágenes

  • Listar las imágenes existentes

  • Editar las propiedades de una imagen

  • Eliminar una imagen

4.4.5. Scopes: vista de gestión de centros, aulas y ordenadores

ogcp scopes

En esta vista se puede gestiona todo lo relacionado con la estructura del árbol de ámbitos. En ella se definen los centros, aulas y equipos registrado en OpenGnsys Enterprise 3.

Las tareas que podemos realizar son las siguientes:

  • Clientes

    • Añadir un cliente

    • Editar un cliente

    • Mover uno o más clientes

    • Importar clientes de manera masiva

    • Borrar clientes

    • Buscar clientes

  • Aulas

    • Añadir un aula

    • Editar un aula

    • Eliminar un aula

    • Ver detalles de aula

  • Centros

    • Añadir un centro

    • Editar un centro

    • Eliminar un centro

    • Ver detalles de centro

  • Carpetas

    • Añadir Carpeta

    • Editar Carpeta

    • Eliminar Carpeta

La primera acción a realizar en una nueva instalación de OpenGnsys Enterprise 3 consiste en la definición del árbol de ámbitos, registrando aulas y ordenadores mediante la funcionalidad de importación masiva de clientes disponible en esta vista.
Asegúrese de que la MAC y dirección IP que establece para los clientes importados coincide con la información disponible en el fichero de configuración del servidor de DHCP que está empleando. En caso de usar la preinstalación del ISC DHCP server realizada por el instalador de OpenGnsys Enterprise 3, recuerde editar el fichero /etc/dhcp/dhcpd.conf para añadir las líneas Host correspondiente a cada ordenador gestionado por OpenGnsys Enterprise y reinicie el servicio isc-dhcp-server. En caso de emplear un servidor de DHCP externo, consulte con el administrador del servidor de DHCP.

4.4.6. Repositorios: vista de repositorios

En esta vista se gestiona todo lo relacionado con los repositorios registrado. En una instalación nueva, únicamente aparece un repositorio que coincide con el propio servidor en el que se ha instalado OpenGnsys Enterprise 3.

Las tareas que podemos realizar son las siguientes:

  • Detalles de repositorio

  • Añadir repositorio

  • Borrar repositorio

  • Editar repositorio

4.4.7. Servidor: gestión del servidor

ogcp servers

Las tareas que podemos realizar desde esta vista es la siguiente:

  • Editar la configuración del servidor para añadir nuevas direcciones IP asociadas al servidor.

Esta vista es necesaria si el servidor dispone de más de una dirección IP y los ordenadores usan diferentes direcciones IP para alcanzarlo, por ejemplo, en un despligue con segmentación de red mediante VLAN.

4.4.8. Usuarios: gestión de usuarios

ogcp users

En esta vista se define los usuarios de ogCP.

Las tareas que podemos realizar son las siguientes:

  • Consultar los usuarios existentes

  • Añadir un usuario

  • Editar los datos de un usuario

  • Eliminar un usuario

Puede definir usuarios con capacidades restringidas (operadores), para ello emplee la matriz de capacidades del usuario para definir el perfil de usuario.

4.5. Administración de ordenadores con ogCP

En este apartado se describe la administración de los ordenadores registrados en OpenGnsys Enterprise 3.

4.5.1. ¿Cómo encender ordenadores?

ogcp wol

  1. Seleccionar la vista de "Comandos".

  2. Seleccionar los equipos a encender en la barra lateral (sidebar).

  3. Seleccionar la opción "Encendido (WoL)" en el desplegable "Power".

  4. En el marco principal se muestran los clientes seleccionados y el tipo WoL haciendo uso del tipo Broadcast. Pulse el botón Submit para confirmar.

4.5.2. ¿Cómo apagar ordenadores?

ogcp poweroff

  1. Seleccionar la vista de "Comandos".

  2. Seleccionar los equipos a apagar en la barra lateral (sidebar).

  3. Seleccionar opción "Apagado" en el desplegable "Power".

  4. En el marco principal se muestran los clientes seleccionados. Para confirmar, pulsar el botón Enviar.

4.5.3. ¿Cómo reiniciar ordenadores?

ogcp reboot

  1. Seleccionar la vista de "Comandos".

  2. Seleccionar los equipos a reiniciar en la barra lateral (sidebar).

  3. Seleccionar opción "Reiniciar" en el desplegable "Power".

  4. En el marco principal se muestran los clientes seleccionados. Para confirmar, pulsar el botón Enviar.

4.5.4. ¿Cómo particionar y formatear ordenadores?

ogcp partition

  1. Seleccionar la vista de "Comandos".

  2. Seleccionar los equipos a configurar en la barra lateral (sidebar).

  3. Seleccionar la opción "Particionar y Formatear" en el desplegable "Configurar".

  4. En caso de seleccionar varios equipos se debe seleccionar el equipo base, a usar como plantilla en la próxima pantalla.

  5. Primero seleccionar el disco objetivo (en caso de existir múltiples). Posteriormente elegir el esquema de particiones (MBR para ordenadores BIOS legacy y GPT para ordenadores UEFI).

  6. Añadir las particiones (botón "Añadir una nueva partición") eligiendo su tipo de partición y sistema de ficheros.

  7. Para confirmar, pulsar en el botón Aceptar.

Si el ordenador es UEFI, recuerde usar el tipo de partición GPT y definir una partición EFI de tipo FAT32 de al menos 512 Mbytes.

4.5.5. ¿Cómo crear una imagen en base a un equipo de referencia?

ogcp create image

  1. Seleccionar la vista de "Comandos".

  2. Seleccionar el equipo modelo en la barra lateral (sidebar).

  3. Seleccionar la opción "Crear imagen" en el desplegable "Imagen".

  4. Seleccionar disco y partición dentro de las opciones disponibles.

  5. Especificar nombre de la imagen, descripción de la imagen, y el repositorio donde guardar la nueva imagen.

  6. Para confirmar, pulsar el botón Crear.

4.5.6. ¿Cómo actualizar una imagen en base a un equipo de referencia?

ogcp update image

  1. Seleccionar la vista de "Comandos".

  2. Seleccionar el equipo modelo en la barra lateral (sidebar).

  3. Seleccionar la opción "Actualizar imagen" en el desplegable "Imagen".

  4. Seleccionar disco y partición dentro de las opciones disponibles.

  5. Seleccionar la imagen que se quiere actualizar.

  6. Para confirmar, pulsar el botón Actualizar.

4.5.7. ¿Cómo restaurar una imagen en uno o varios equipos?

ogcp restore image

  1. Seleccionar la vista de "Comandos".

  2. Seleccionar el/los equipo/s en la barra lateral (sidebar). Para múltiples equipos deben compartir el mismo esquema de particiones.

  3. Seleccionar la opción "Restaurar imagen" en el desplegable "Imagen".

  4. Seleccionar disco y partición dentro de las opciones disponibles.

  5. Seleccionar la imagen que se quiere restaurar y el método de transferencia (tiptorrent o unicast).

  6. Para confirmar, pulsar el botón Restaurar.

4.5.8. ¿Cómo cambiar el modo de arranque por red de los equipos?

ogcp boot mode

  1. Seleccionar la vista de "Comandos".

  2. Seleccionar el/los equipo/s en la barra lateral (sidebar).

  3. Seleccionar la opción "Seleccionar modo de arranque" en el desplegable "Configurar".

  4. Seleccionar un modo de arranque de los disponibles.

  5. Para confirmar, pulsar el botón OK.

4.5.9. ¿Cómo añadir centros?

ogcp add center

  1. Seleccionar la vista de "Ámbitos".

  2. Seleccionar la opción "Añadir centro" dentro del subapartado "Centro".

  3. Seleccionar el ogServer donde se desea añadir este centro.

  4. Especificar el nombre.

  5. Si se desea se puede añadir un comentario.

  6. Para confirmar, pulsar el botón Enviar.

4.5.10. ¿Cómo añadir aulas?

ogcp add room

  1. Seleccionar la vista de "Ámbitos".

  2. Seleccionar el centro donde se quiere añadir la sala en el árbol de ámbitos izquierdo.

  3. Seleccionar la opción "Añadir sala" dentro del subapartado "Sala".

  4. Especificar el nombre y máscara de red.

  5. Para confirmar, pulsar el botón Enviar.

4.5.11. ¿Cómo añadir ordenadores?

ogcp add computer

  1. Seleccionar la vista de "Ámbitos".

  2. Seleccionar la sala donde se quiere añadir el ordenador (en el árbol de ámbitos izquierdo).

  3. Seleccionar la opción "Añadir cliente" dentro del subapartado "Cliente".

  4. Especificar el nombre, IP, MAC, máscara de red, número de serie (opcional)

  5. Elegir la versión de ogLive para este equipo.

  6. Las casillas de mantenimiento y remotePC existen para dar soporte.

  7. La interfaz de red a utilizar durante el arranque por red para ogLive. (eth0: la primera tarjeta detectada)

  8. Seleccionar repositorio por defecto.

  9. Especificar el modo de arranque.

  10. Para confirmar, pulsar el botón Crear.

4.6. Fichero de configuración de ogCP

El fichero de configuración de ogCP está disponible en /opt/opengnsys/ogcp/ogcp/cfg/ogcp.json.

Puede modificar el fichero de configuración para establecer el idioma, por el momento hay traducciones disponible para el inglés, catalán y castellano que puede establecer mediante el atributo "LANG" haciendo uso de: en, ca o es respectivamente, tras lo cual debe reiniciar el servicio ogcp:

# systemctl restart ogcp.service
El idioma por defecto de ogCP es el inglés, pueden aparecer traducciones incompletas si no hay traducciones disponibles.

Utilice las vistas de servidor y de usuarios para modificar este fichero, evite cambios manuales en este ficheros.

En caso de olvidar la contraseña del usuario administrador, puede editar este fichero y establecerla mediante: echo -n "contraseña deseada" | sha512sum

Todos los cambios hechos manualmente en el fichero de configuración requieren que el usuario reinicie el servicio del ogCP.

4.7. Ejemplo de fichero de configuración de ogcp

{
	"LANG": "en", (1)
	"USERS": [ (2)
		{
			"USER": "admin", (3)
			"PASS": "5b722b307fce6c944905d132691d5e4a2214b7fe92b738920eb3fce3a90420a19511c3010a0e7712b054daef5b57bad59ecbd93b3280f210578f547f4aed4d25", (4)
			"ADMIN": true, (5)
			"SCOPES": [ ] (6)
		},
		{
			"USER": "user",
			"PASS": "5b722b307fce6c944905d132691d5e4a2214b7fe92b738920eb3fce3a90420a19511c3010a0e7712b054daef5b57bad59ecbd93b3280f210578f547f4aed4d25",
			"ADMIN": false,
			"SCOPES": [
				"Unidad Organizativa (Default)"
			]
	],
	"SERVERS": [ (7)
		{
			"NAME": "Server 1", (8)
			"IP": "127.0.0.1", (9)
			"PORT": 8888, (10)
			"API_TOKEN": "a0e9ab768cbe93dab5b1998e952bcdb7" (11)
		}
	],
	"API_TOKEN": "70cc5ad321638712da6bbb3123132d"
}
1 Parámetro de configuración del idioma. Soporta las cadenas "en", "es" y "ca".
2 Lista con todos los usuarios disponibles.
3 Nombre de usuario. Este es el nombre que utilizaremos en el formulario de login.
4 Hash de la contraseña que usaremos para autenticarnos.
5 Valor booleano que establece si un usuario tiene el rol de administrador.
6 Ámbitos sobre los que el usuario tiene permisos.
7 Lista con todos los servidores/ogServer a gestionar.
8 Nombre del servidor. Campo puramente visual que ayuda a los usuarios a identificar el servidor en el que están trabajando.
9 Dirección IP del servidor.
10 Puerto al que escucha ogServer.
11 Clave que requiere el ogCP para autenticarse contra el ogServer.

5. Componentes en OpenGnsys Enterprise

En este apartado se describen los componentes que forman OpenGnsys Enterprise, explicando su función en el ecosistema y su uso.

5.1. ogServer: Servidor principal de OpenGnsys Enterprise

El ogServer es el componente de orquestación que ofrece una API REST HTTP para recibir órdenes administrativas y las envía a los equipos clientes conectados a OpenGnsys. El ogServer mantiene las información los clientes y su estado, tales como la velocidad de enlace y el resultado del último comando ejecutado.

Los front-ends de administración se comunican con el ogServer a través de una API REST HTTP. Para el cuerpo de las peticiones se usan el formato JSON. ogServer utiliza una base de datos MySQL para el almacenamiento de toda la información relacionada con la gestión con OpenGnsys. Por ejemplo, en la base de datos se guarda todo el esquema de centros, aulas y equipos que hemos definido.

5.1.1. Fichero de configuración: ogserver.json

El archivo de configuración para ogServer se encuentra en /opt/opengnsys/etc/ogserver.json. Permite indicar la IP, puerto, token donde escuchará el proceso de ogServer, autenticación para la conexión a la base de datos, además de interfaz por defecto para Wake On Lan y directorio donde guardar imágenes creadas por los clientes (también denominado repositorio).

{
        "rest" : { (1)
                "ip" : "127.0.0.1",
                "port" : "8888",
                "api_token": "5a5ca1172136299640a9f47469237e0a"
        },
        "database" : { (2)
                "ip" : "127.0.0.1",
                "port" : "3306",
                "name" : "opengnsys",
                "user" : "mysql",
                "pass" : "mysql"
        },
        "wol" : { (3)
                "interface" : "lo"
        },
        "repository" : { (4)
                "directory" : "/opt/opengnsys/images"
        }
}
1 Configuración de red para el proceso de ogServer: IP, puerto y valor del token para autenticar peticiones de otras aplicaciones que traten de comunicarse con ogServer.
2 Autenticación para la base de datos: IP y puerto donde escucha MySQL, nombre de la base de datos, usuario y contraseña.
3 Interfaz por defecto para el envío de paquetes WakeOnLan. Aplicable cuando el servidor donde se ejecuta ogServer posee más de una interfaz de red.
4 Configuración del repositorio de imágenes. Indica la carpeta donde se almacenan y sirven las imágenes para los clientes.

5.2. ogclient: Cliente de OpenGnsys para Live, Linux y Windows

ogclient es un agente que se ejecuta en los ordenadores administrados por OpenGnsys Enterprise 3. ogclient mantiene un canal de comunicación activo por medio del puerto tcp/8889 de ogserver, reporta su estado y la velocidad del enlace de red, y queda a la espera de recibir órdenes administrativas del ogserver, tales como particionar, formatear y restaurar una imagen de un sistema operativo.

ogclient es una software multiplataforma que permite la administración de ordenadores que ejecutan el sistema operativo live, así como los sistemas operativos Linux y Windows que se despliegan sobre los ordenadores administrados.

Existen dos variantes de ogclient que hay que instalar en las imágenes de los sistemas operativos para poder realizar acciones administrativas posteriores al despliegue del sistema operativo:

  • ogclient para Linux

  • ogclient para Windows, tanto para la version 10 y 11.

ogclient sobre Linux y Windows soporta únicamente el reinicio, apagado y la ejecución de órdenes y scripts.

Ambas versiones están disponibles en https://opengnsys.soleta.eu/download para su descarga e instalación.

El sistema operativo live ya incluye el software ogclient.

5.2.1. Fichero de configuración: ogclient.json

El archivo de configuración para ogclient para el modo live se encuentra en /opt/opengnsys/client/ogclient/cfg/ogclient.json. Permite indicar la IP y puerto donde el ogServer espera la conexión de los clientes, el nivel de log, el modo de funcionamiento y las credenciales de samba.

{
        "opengnsys": {(1)
                "ip": "192.168.56.10",
                "port": 8889,
                "log": "DEBUG",
                "mode": "live",
                "url": "https://192.168.56.10/opengnsys/varios/menubrowser.php",
                "url_log": "http://localhost/cgi-bin/httpd-log.sh"
        },
        "samba": {(2)
                "activate": true,
                "user": "opengnsys",
                "pass": "og"
        },
        "vnc": {(3)
                "activate": true,
                "pass": "ogvnc"
        }
}
1 Conexión con el ogServer y funcionamiento del ogclient: IP y puerto para la conexión con el ogServer, nivel de logging (DEBUG, INFO, WARNING, ERROR y CRITICAL), modo de operación (live, linux, windows y virtual) y los dos últimos enlaces sirven para obtener el menú de inicio de sesión y el log en tiempo real.
2 Credenciales del servidor samba para el modo ogLive.
3 (Solo VDI) Opciones para escritorio remoto.

5.2.2. Instalación en Linux

ogclient para Linux está soportado en versiones de Ubuntu iguales o superiores a 20.04. ogclient para Linux requiere el paquete python3-psutil que debe de instalar previamente.

apt install python3-psutil

Descargue el fichero .deb de ogclient para Linux en la web de OpenGnsys Enterprise en la dirección https://opengnsys.soleta.eu/download

A continuación se enumeran los pasos para su instalación:

  1. Descargar el paquete .deb de ogclient para Linux.

  2. Instalar en el sistema con el comando sudo dpkg -i {paquete} (sustituyendo {paquete} por el nombre del paquete de ogclient para linux)

    ogclient lin dpkg
  3. Durante la instalación especificar la IP del ogServer