Manual de Instalación y Configuración de Epoptes

Este documento detalla el procedimiento para configurar Epoptes en un aula de informÔtica utilizando resolución de nombres mDNS (Avahi). Este método permite la interconexión entre equipos en redes con direccionamiento IP dinÔmico (DHCP), eliminando la necesidad de configurar IPs fijas.

 

Esquema de Funcionamiento

  1. Servidor (En este ejemplo vamos a suponer que tendrĆ” este nombre: tux0): ActĆŗa como controlador central y se anuncia en la red mediante Avahi.
  2. Resolución de nombres: Los equipos se localizan mediante el sufijo .local (tux0.local).
  3. Clientes: Se conectan al nombre del servidor, validan el certificado de seguridad e inician el servicio automƔticamente en cada arranque.

Gestión del Nombre de Equipo (Hostname)

Dado que la IP es dinÔmica y puede cambiar, el nombre del equipo es el único identificador fiable en la red. Para que el sistema funcione, el servidor debe tener un nombre único y conocido.

Procedimiento para cambiar el nombre del equipo

Si tu servidor o clientes no tienen el nombre correcto, debes modificarlo en los siguientes archivos:

  1. Archivo /etc/hostname: Este archivo contiene solo el nombre del equipo. sudo nano /etc/hostname (Borra el nombre actual y escribe tux0)
  2. Archivo /etc/hosts: Debes actualizar la lĆ­nea asociada al bucle local para que coincida con el nuevo nombre. sudo nano /etc/hosts Modifica la lĆ­nea: 127.0.1.1 nombre_antiguo por 127.0.1.1 tux0
  3. Aplicar sin reiniciar: sudo hostnamectl set-hostname tux0

PASO 1: Configuración del Servidor

El servidor es la estación desde la que se ejerce el control del aula.

  1. Identificar la interfaz de red: Para verificar el estado de la red, utiliza el comando: ip a
  2. Script de instalación y configuración: Crea el archivo server_setup.sh y ejecútalo con permisos de superusuario:
#!/bin/bash
if [ "$EUID" -ne 0 ]; then echo "Error: ejecuta con sudo"; exit 1; fi

# Instalación de paquetes
apt update && apt install -y epoptes avahi-daemon

# Asegurar el nombre del host
hostnamectl set-hostname tux0

# Gestión de permisos de usuario
# Añade el usuario que lanzó el script al grupo epoptes
USUARIO_REAL=${SUDO_USER:-$USER}
gpasswd -a "$USUARIO_REAL" epoptes

echo "Configuración del servidor finalizada. Reinicie el equipo."

PASO 2: Configuración de los Clientes

Debe ejecutarse en cada puesto de alumno.

  1. Corrección de rutas del sistema: Si el sistema no localiza los binarios en /sbin, añÔdelos al PATH del usuario: echo 'export PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin' >> ~/.bashrc && source ~/.bashrc
  2. Script de configuración del cliente: Crea el archivo client_setup.sh con el siguiente contenido:



#!/bin/bash


# Definición do nome do servidor mDNS

SERVER_NAME="tux0.local"


# 1. Verificar se se executa como root

if [ "$EUID" -ne 0 ]; then 

  echo "Erro: Por favor, executa o script con sudo (sudo ./config_cliente_nome.sh)"

  exit 1

fi


# Engadimos as rutas de administración ao PATH da sesión actual do script

export PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin


echo "--- Iniciando configuración automÔtica do cliente Epoptes ---"


# 2. Actualización de repositorios e instalación

# Instalamos avahi-daemon para que o cliente poida resolver o nome .local

echo "[1/5] Instalando paquetes necesarios (epoptes-client, avahi, net-tools)..."

apt update && apt install -y epoptes-client avahi-daemon net-tools


# 3. Configuración do ficheiro /etc/hosts (Opcional con Avahi, pero recomendable por seguridade)

# Nota: Co uso de .local, o sistema buscarĆ” automaticamente na rede sen necesidade de IP fixa

echo "[2/5] Limpando configuracións previas de hosts..."

sed -i '/tux0/d' /etc/hosts

sed -i '/server/d' /etc/hosts


# 4. Configuración do ficheiro por defecto de Epoptes

echo "[3/5] Axustando configuración para conectar a $SERVER_NAME..."

if [ -f /etc/default/epoptes-client ]; then

    # Substituímos calquera configuración previa polo nome do noso servidor

    sed -i "s/^#SERVER=.*/SERVER=$SERVER_NAME/" /etc/default/epoptes-client

    sed -i "s/^SERVER=.*/SERVER=$SERVER_NAME/" /etc/default/epoptes-client

else

    echo "SERVER=$SERVER_NAME" > /etc/default/epoptes-client

fi


# 5. Descarga do certificado dende o servidor

# O servidor debe estar acendido e coa aplicación Epoptes aberta

echo "[4/5] Descargando certificado de seguridade dende $SERVER_NAME..."

/usr/sbin/epoptes-client -c


# 6. Activación e arranque do servizo

echo "[5/5] Activando o servizo para o arranque automƔtico..."

systemctl enable epoptes-client

systemctl restart epoptes-client


echo "---"

echo "PROCESO FINALIZADO CON ƉXITO."

echo "O cliente xa deberĆ­a aparecer na consola do servidor ($SERVER_NAME)."

echo "Se o certificado fallou, asegĆŗrate de que o servidor se chama 'tux0'."



PASO 3: Verificación de la Conexión

  1. En el Servidor: Inicia la interfaz grÔfica ejecutando epoptes o buscando la aplicación en el menú de Educación.
  2. En el Cliente: Comprueba que el servicio estĆ” corriendo con el comando systemctl status epoptes-client.
  3. Resolución de problemas: Si el cliente no aparece, verifica la conectividad mDNS mediante un ping: ping tux0.local Si responde pero no conecta, repite la descarga del certificado: sudo epoptes-client -c.
Scroll al inicio