jueves, 28 de agosto de 2014

Tareas de inicio de Curso

Un nuevo curso empieza y voy a intentar colocar aquí las diferentes tareas que es necesario realizar a inicio de curso.

Copias de Seguridad de los Servidores

A pesar de que para las copias de seguridad utilizo un script que basado en rsync se encarga de hacer las copias de seguridad de forma automática( una información un poco más detallada de como funciona lo tienes en:
https://sites.google.com/a/iesburguillos.homelinux.org/para-recordar/home/las-cosas-del-instituto/scripts/las-copias-de-seguridad)
, me gusta tener una copia de seguridad completa de servidores nfs y ldap por si el amigo Murphy le da por hacer de las suyas.
Así de esta manera tengo una salida y por ejemplo restaurar la copia de seguridad en un equipo nuevo y tener el servidor trabajando en un corto espacio de tiempo (no obstante considero que existen sin duda formas mejores utilizadas por los compañeros Esteban Navas, Antonio Abasolo, etc... pero como yo me quedo en el suelo y no estoy a la altura.....).
En mi caso tengo un disco duro sata exclusivo para estas copias de seguridad y otras que es donde suelo guardarlas y que normalmente está guardado, es decir que antes de hacer los backups, con el servidor auxiliar que utilizo (servidorweb) apagado, conecto el disco sata, lo monto en /var/imagenes/backup20142015, creo los directorios donde voy a almacenar los backups: ldap, servidor y home, y lanzo las órdenes desde linea de comandos desde el propio servidorweb que lanzará rsync y hará la copia de seguridad del equipo remoto.

Copia de Seguridad LDAP

Aunque hay cierta información que no es necesaria guardar, no me complico la vida y hago copia de seguridad completa del servidor LDAP a excepción de dos directorios (los excluyo con la opción --exclude):
  • /var/haarp        es un cache web que utilizamos para mejorar la velocidad de salida de internet y ocupa mucho espacio por lo que no es interesante guardarlo.
  • /var/squid-reports    aquí se guardan los sitios a los que han accedido todos los usuarios y desde todas las máquinas, son los datos del proxy, y como tanbien ocupa mucho espacio me parece interesante descartarlo.
La orden que lanzo para realizar la copia es la siguiente:

root@servidorweb:/var/imagenes/backup20142015# rsync --force --ignore-errors --delete --delete-excluded   -- exclude /var/haarp --exclude /var/squid-reports --backup -av  root@ldap:/ /var/imagenes/backup20142015/ldap

Copia de Seguridad de Servidor NFS

El servidor nfs, ya que soy muy maniático, realizo por separado el /home (que es donde se guardan datos y documentos de los usuarios del centro, tanto profesores como alumnos), y el resto del sistema de archivos, entonces tengo las siguientes órdenes:

root@servidorweb:/var/imagenes/backup20142015# rsync --force --ignore-errors --delete --delete-excluded  --exclude "home/"  --backup -av  root@servidor:/ /var/imagenes/backup20142015/servidor

y para el /home:

root@servidorweb:/var/imagenes/backup20142015# rsync --force --ignore-errors --delete --delete-excluded   --backup -av  root@servidor:/home/ /var/imagenes/backup20142015/home

Copia de Seguridad de Servidorweb


por último también puedo hacer una copia del servidorweb.
En este caso no copio el directorio donde el disco donde guardo las copias de seguridad, y tampoco el directorio dónde guardo las copias de seguridad incrementales que se van guardando automáticamente durante el curso"/var/backups",ni el /var/imagenes donde guardo las imágenes de disco duro con clonezilla, tampoco /mnt donde tengo montado un pendrive y tampoco "/home*" que es donde están montado el home de los usuarios por nfs y del cual he hecho ya copia.

root@servidorweb:/mnt/disk1/backup20142015# rsync --force --ignore-errors --delete --delete-excluded  --exclude "/mnt" --exclude "/var/backups" --exclude "/var/imagenes" --exclude "/home*" --backup -av  /  /var/imagenes/backup20142015/servidorweb

Otras Copias de Seguridad

En /backup del servidorweb también tengo guardadas otras copias de seguridad como son:

controlies: Es una copia de la aplicación controlies donde guarda la base de datos de los equipos ya introducidos. Útil cuando se actualiza paquetes para que no se borren los datos.

routersYSwitch: copias de seguridad de configuraciones de routerswifi, routersAdsl, switchs, etc...

backupLTSP: aquí guardo los ficheros de configuración importantes de cada servidor de terminales, y que son únicos en cada uno, como el de aulalinex (aulalinex-profesor.conf), controlaula (setup.ini), 70-persistent-net.rules (con las diferentes mac y nombre de cada una del equipo), y configuración de hostapd (hostapd.accept y hostapd.conf).
De esta forma si hay que clonarlo de nuevo o actualizarlo me ahorro algún trabajo.

Modificación de Usuarios del Centro

Quizá la labor más engorrosa, a mi parecer, es la modificación de los nuevos usuarios para el nuevo curso, no sólo por que hay que darlos de alta en el centro (servidor LDAP), sino por que aquí se usan otras herramientas en los que es necesarios darlos de alta:

  • Servidor LDAP del centro y creación de sus carpetas de usuario en servidor NFS del centro.
  • Google Apps Servicio de google en el que estamos como entidad educacional, en el cual nos permite crear usuarios y cuentas de google en nuestro dominio y desde allí tener acceso cada uno a las diferentes aplicaciones de google.
  • Portal Moodle del centro en moodle.educarex.es

Eliminación de Usuarios Antiguos

Tenemos los usuarios antiguos en los siguientes sitios:
  • Base de Datos LDAP. Se eleiminarán cuando subamos los datos de los nuevos con la herramienta Controlies, ya que permite marcar casilla de eliminar los anteriores.
  • Servidor NFS. Tiene los home de los usuarios y como ocupa espacio es aconsejable quitarlos. Pasándole el script crearCarpetas de Antonio Abasolo se encarga además de crear las carpetas de los usuarios nuevos, de eliminar los que no están dados de alta en la BBDD LDAP.
  • También en el servidor NFS en alguna ocasión es necesario corregir el propietario de los archivos de los usuarios, bien por que ha cambiado el número de usuario o por que no lo muestra correctamente. Para ello es muy util un script que automatiza y lo tengo en /usr/local/bin/PonPropietario.sh

Descargando los Usuarios

Para empezar el proceso, y como lo normal es que los alumnos no estén totalmente matriculados hasta casi que empieza el curso, yo empiezo por los profesores.
Los datos de los profesores se obtienen desde el usuario del administrador informático en rayuela.educarex.es y lo tenemos en menú Utilidades/Intercambios de Información  ahí podemos selecionar el tipo de intercambio de información entre:
  • Exportación a LDAP de datos del Profesorado
  • Exportación a LDAP de datos del alumnado
  • Exportación a LDAP de datos de los grupos del centro
Una vez seleccionado nos aparecen las exportaciones que hemos realizado con anterioridad, para hacer una nueva con los datos actuales, le damos al icono de hoja en blanco de arriba a la derecha, que es "Añadir", y nos aparecerán los datos actuales, entre los cuales podemos seleccionar todos o algunos (profesores, flitrar por grupo, etc....) podemos poner una breve descripción en observaciones y le damos al check para que se realice, nos mostrará la pantalla anterior de todos los intercambios de información anteriores (muchas veces hay que salir y volver a entrar para poder descargar documento [con boton derecho/descargar documento] por que si no aparece indefinidamente procesando).
El documento descargado es un archivo XML con los datos de cada usuario o grupo.
¡¡¡¡MUY IMPORTANTE¡¡¡ los datos de los profesores no aparecen hasta que rayuela no cambia por defecto el curso escolar, en el caso de este año a dos días laborables de empezar el curso. Hasta entonces aparecen los profesores del curso pasado. No ocurre así con grupos y alumnos que nos deja elegir el curso a exportar.
Así yo que voy a empezar con los datos del profesorado, he descargado dos archivos:
  • ExportacionDatosProfesorado.xml
  • ExportaciónGruposCentro.xml

Dar de alta usuarios en LDAP

Lo primero y más sencillo es dar de alta los usuarios nuevos en la base de datos LDAP del centro.
Se hace de manera más sencilla con la maravillosa  utilidad Controlies que están desarrollando los compañeros Manu Mora y Alfonso Pastor.
En el menú Gestión/Importación de Rayuela se nos muestra la siguiente pantalla:
En Elegir Archivos seleccionamos los archivos de los queramos dar alta  y adelante.
Podemos también marcar el check de borrar el resto de usuarios, interesante para Alumnos, y yo creo que no aconsejable para profesores, ya que además nos borraría los usuarios del resto de personal de centro de los que no se descargan datos: Administrativos, conserjes, informático, etc....
Una vez realizado esto podemos comprobar que ya están dados de alta, no obstante es necesario crear sus carpetas de home para los usuarios nuevos.
Esto lo hace un script del servidor NFS que se llama CrearCarpetas. En algunos centros está puesto en el crontab del nfs para que compruebe cada 5 minutos, si no es así lo ejecutamos a mano y comprobamos que se hayan creado.
Como es posible que se cambien los id y gid de los usuarios y entonces no podría entrar, ejecuto un script que está en el servidor /usr/local/bin/modificar-idusuario-grupo.sh   y el se encarga de ponerles los correctos.

IMPORTANTE: He observado como en la base de datos ldap en la rama de grupos se encuentran los grupos de usuarios de otros años, es decir parece como si al crear los alumnos de nuevo no borrara los anteriores. Puede ser debido a que yo marco sólo borrar los pasados con alumnos, no con profesores ni con grupos, quizá para el curso que viene habría que probar a subir a la vez archivos de grupos, alumnos y profesores y marcar borrar anteriores, a ver si  ya queda todo bien. El único inconveniente el crear de nuevo los usuarios profesores: yo, educadora, conserjes, administrativo, etc ... aunque también puedo exportarlo antes en un fichero .ldif e importarlo posteriormente.
NOTA 2015 : El alta de los grupos no sale correcta hasta que se han dado de alta alumnos y profesores.
Por otra parte al importar los profesores controlies no te elimina los profesores que se han dado de alta a mano, o sea que un problema menos.
Si es importatante que igual que cambia el id y gid del servidor, pasa lo mismo con los home en los portátiles. Para ello tengo una tarea portatil-actualiza-usuario que se encarga de ponerle de nuevo los propietarios correctos.

Dar alta usuarios en Google Apps y Moodle.

Tengo realizado un script que aunque es un poco "burdo", ya que está hecho a mi manera, de manera sencilla me genera un fichero .csv con los datos de los usuarios para crearlos en nuestro dominio en Google Apps y además me genera otro fichero con los datos para el alta en la plataforma Moodle de Moodle.ducarex.es.
El script está en la ruta:  /usr/local/bin/altaGeneraCSVyMoodle.sh, y tiene las opciones de crear usuarios de profesores o alumnos:

sh scriptAlta  -[a(para alumnos)|p(para profesores)] nombre_archivo.xml nombre_fichero_salida ademas se creara el archivo nombre_fichero_salida.google.csv

Le pasamos el archivo xml bajado de rayuela de profesores o alumnos y nos genera tres archivos:
  • .csv Con  todos los datos grupos incluídos.
  • .moodle.csv para dar de alta en moodle con las siguiente cabecera y datos: username,password,first name,lastname,email
  • .google.csv para dar de alta en Google Apps con siguiente cabecera y datos: email address,first name,last name,password


Listado Usuarios-Contraseñas Inicio de Curso

Mediante el script listado_inicio_curso.sh creado por Alfonso Pastor, Nando Sosa y José María Sanchez podemos obtener un listado de los alumnos en pdf o html separados por grupo y con usuarios y contraseñas, muy útil para dárselo a los tutores y que éstos le den a cada alumno su usario-contraseña.
Hay que tener el paquete xmlstarlet instalado y se usa listado_inicio_curso.sh alumnos.xml grupos.xml profesores.xml ficheroDeSalida.html.

Preparación de portátiles.


Con el cambio de curso, logicamente, se van alumnos, a los que hay que recoger el portátil, y vienen nuevos, a los que hay que prepararles otro.
Hay que tener especial atención a los alumnos que se van en otro curso que no sea cuarto (esos están controlados), o bien los que pasan a fp básica desde también cualquier otro curso, ya que debido a la escasez, sólo los alumnos de ESO pueden tener portátiles, y a esos habría que retirárselos.
Modo de actuar con portátiles a la gente que se va:
  • Recogerle el portátil.
  • Dar de baja en aplicación controlies. Para que quede constancia yo lo cambio de asignado a sin asignar y lo pongo una observación:" lo tuvo usuario".
  • Limpiar con ese buen disolvente de tinta que tenemos en el centro y que lo deja "como las patenas del oro".
  • Si es necesario por cambio de sistema operativo, clonarlo de nuevo. Podemos ver cómo en el artículo de Esteban Navas.
  • Dejarlo en el armario preparado para cuando tengamos el listado definitivo de alumnos nuevos.
Así una vez que ya tenemos los listados definitivos de alumnos:
  • Coger los listados de los alumnos de 1º y ver cuáles son repetidores, ya que esos tienen portátil.
  • Ver si hay algún alumno nuevo en otros cursos aparte de 1º ( yo se lo pregunto a mi administrativa que está al corriente de todo). A esos niños habría que prepararle un portátil también.
  • Generar las etiquetas. Con la fantástica aplicación de Manu Mora de impresión de etiquetas:   https://github.com/manumora/laptop-labels. Es una aplicación que la he colocado en mi servidor ldap siguiendo las indicaciones dadas en el repositorio. Poniendo en el navegador: http://ldap/labels nos aparece la siguiente pantalla desde donde podemos imprimir etiquetas para pegar en Portátil, cargador y batería.
  • Las etiquetas se imprimen en pegatinas 70*37 y listas para pegar. Las protejo con precinto transparante para que con el roce no se borren.
  • Una vez etiquetado el portátil lo enciendo y nombro dicho portátil, como root ejecuto el script /root/S99-primerarranque que le pondrá el nombre. Este año he visto que existe la opción de cambiando dicho script y pasándole un archivo con macs y nombres de usuarios lo puede coger él automáticamente el nombre de usuario... a ver si para el curso que viene, ya que puede ahorrar mucho trabajo. Otra opción puede ser la tarea puppet renombrar-portátil, que si está activa permite cambiar de nombre al portátil. Yo de momento tampoco la tengo activa.
  • Después de reiniciar portátil, meto usuario y contraseña del niño, ya que así creará usuario y evitamos problemas a la hora de adjudicar. Para ello me ayudo de listado con usuarios y contraseñas generado antes. También ejecuto puppetd -t para comprobar que se actualiza correctamente.
  • Una vez renombrado el portátil meterlo en funda con cargador, y cable de red, pegatina en funda con nombre de niño y listo para cuando el director reparta los portátiles.
  • Asignar portátil en aplicación controlies para tener controlado quién tiene cada portátil.
Importante: Este año he clonado los portátiles a principio de verano y así los alumnos se lo han llevado para el verano. Al dar de alta usuarios nuevos me he encontrado el problema de que ha cambiado los números de usuario y grupo ldap, y por ello en cuanto se han conectado con los portátiles por red les ha dado fallo de autentificación. Solución para otra vez: o bien pasar una tarea que haga nss-updatedb ldap y le cambie su id y gid a /home/alumnos/usuario o bien pasar el script modificar-idusuario-grupo.sh del que he hablado antes.


No hay comentarios:

Publicar un comentario