next up previous
Siguiente: Algunos problemas Superior: SINDOMINIO: Un modelo de Anterior: Pasos previos a la

Subsecciones

El modelo de administración de SINDOMINIO

Los accesos

Esta era la primera cuestión: dado que nadie tiene acceso físico a la máquina ¿cómo nos conectamos (de forma segura) y trabajamos en ella? La respuesta a esta pregunta era sencilla: SSH. Cerramos el puerto telnet, instalamos un servidor SSH (en aquel momento la única opción para GNU/Linux era no-libre, pero gracias al port del OpenSSH ya no existe ese problema), y ya podíamos trabajar. Posteriormente abrimos también un puerto telnet-ssl, para no quedarnos sin acceso a la máquina en el hipotético caso de que hubiese algún problema con el servidor SSHD.

Lo siguiente era ¿quién tiene acceso shell? Muchas de las personas y colectivos que participan en SINDOMINIO no tienen conocimientos de GNU/Linux, con lo que darles una shell no añadía ninguna utilidad, y ofrecía una posible vulnerabilidad al sistema si toda cuenta de correo tenía shell. Así que la decisión fue sencilla: cuando se da de alta algún nuevo participante no se le da shell, y si quiere tenerla no tiene más que pedirla. Quien no sepa qué es eso, no la va a necesitar, y quien la quiera va a saber qué es.

La cuenta de root

Otro problema obvio: ¿quién (o quiénes) tienen la contraseña de root? ¿cómo se accede a la cuenta de root?

La respuesta tampoco nos llevó demasiado tiempo: en un primer momento, había 4 personas con conocimientos y experiencia, con lo que esas 4 personas tienen la contraseña de root, cuenta a la que sólo se puede acceder con su, una vez dentro de la máquina, en un canal cifrado e identificado como usuario normal. Además, que fueran varias personas nos permitía mejorar la velocidad de respuesta caso de que su intervención fuese necesaria, liberando a esas personas de una disponibilidad a tiempo completo que en la práctica era inviable.

Por último, el hecho de que una de esas 4 personas viva cerca de donde está alojado el ordenador, nos facilita la solución de problemas sí por alguna circunstancia falla el acceso remoto o no se puede resolver por esa vía (problemas de hardware, DoS, etc.) de forma más o menos rápida.

Para coordinarnos, simplemente creamos un alias de la dirección de correo de root hacia las de los roots, y solucionado.

Los servicios

Hasta aquí, en realidad el método de administración no se diferencia demasiado del de cualquier sitio ``compartido''. Esto es debido, en realidad, a que intentamos, en la medida de lo posible, que la configuración de servicios no necesite la participación de la cuenta root más que cuando sea imprescindible, dando sólo los permisos oportunos a cuentas concretas. Ahora veremos los servicios ``descentrados'' y cómo los gestionamos.

Las altas

El proceso para darse de alta en SINDOMINIO es el siguiente: la persona o colectivo que desee incorporarse lo solicita por correo a una lista creada al efecto, explicando quién es y por qué se quiere incorpora al proyecto (sd@sindominio.net); ese correo es recibido por un grupo de gente, que se encarga de la parte social de la administración: son quienes mantienen el contacto con esa persona/colectivo, quienes presentan la solicitud a la asamblea, y quienes si se ha aceptado trasmiten esto a quienes generan la nueva cuenta. A su vez, al ser la cuenta pública de SINDOMINIO, son quienes filtran y distribuyen las consultas, dudas, observaciones, etc. a la persona o personas adecuadas, encargadas del servicio en cuestión. Cualquiera que haya administrado un sistema de tamaño medio sabrá que esa parte ``social'' es fundamental para la buena marcha del sitio, con lo que, pese a no requerir conocimientos técnicos, lo incluimos en la parte de administración. Este grupo lo componen actualmente 8 personas, aunque el número va cambiando.

Después de esto, si el alta ha sido aceptada, se pasa el aviso a un segundo grupo, que se encarga de dar el alta, asignar una contraseña y enviársela a su destinatari@ (siempre que es posible, cifrada con GNUPG). Este grupo tiene permisos para dar las altas, así como de cambiar contraseñas --excepto la de root--, gracias a sudo, y actualmente está formado por 2 personas. Todos los usuarios pueden después cambiar su contraseña vía web-SSL las veces que lo deseen.

Mantenimiento de la web

Desde el principio, vimos que el mantenimiento de la web ``corporativa'' iba a llevarnos bastante trabajo, por lo que rápidamente creamos un equipo de webmasters, con permisos de escritura en todo el árbol /var/www, y coordinados a través de una nueva lista de correo. Al principio se propuso una división de acuerdo a cuatro grandes áreas técnicas, para que cada cual escogiese la que quisiese: diseño, elaboración de contenidos, programación web y administración de los servidores web (APACHE y ZOPE).

Tal división funcional no ha acabado de cuajar y la práctica ha dado lugar a otra estructuración basada mas en proyectos y afinidades que en áreas técnicas, que a grandes rasgos queda así:

La web corporativa:
Este grupo es el heredero del grupo de webmasters original, y se encarga de mantener, tanto a nivel estético como de contenidos, las páginas generales, así como de proyectar las modificaciones que luego presentarán a la asamblea. También tienen permisos, caso de que se requieran, para arrancar o parar el APACHE, de nuevo vía sudo. Este grupo está formado por 14 personas.

Las páginas de ayuda:
Aquí (http://www.sindominio.net/ayuda) es donde almacenamos los distintos manuales que vamos generando o recopilando, para que estén disponibles para todo el mundo. Este espacio tiene mucha importancia, pues permite una transmisión efectiva de la experiencia de los administradores veteranos hacia la gente que se va incorporando nueva. Es también una pequeña aportación a la comunidad, pues bastantes de los mini-manuales tienen validez no solo para SINDOMINIO, sino para otros sistemas basados en GNU/Linux. Ahora mismo esas ayudas son mantenidas por una persona, que a veces recibe o solicita aportaciones del resto.

La ACP:
Como ya hemos comentado antes, la Agencia en Construcción Permanente (http://acp.sindominio.net) es un espacio de noticias vía web que se mantiene en SINDOMINIO. Se modificó bastante la interfaz original de squishdot, se tradujo íntegramente y se añadieron algunas funcionalidades modificando el código python. Su administración cotidiana representa bastante trabajo pues, junto a su mejora estética y funcional, la administración de la ACP conlleva la revisión de las noticias que se publican, para evitar duplicados, spam, que se caiga en descalificaciones graves, o que se publiquen noticias fuera del tema (la publicación de noticias en la ACP es totalmente libre desde el punto de vista técnico --no hay editores ni ninguna figura similar-- pero la asamblea de SINDOMINIO se reserva el derecho de retirar las que considere que no responden al espíritu de la propia ACP). Todo el trabajo administrativo es llevado a cabo vía web gracias a las herramientas que el propio ZOPE nos proporciona. Esta tarea la llevan a cabo 9 personas, más otro grupo de gente que ha colaborado con los desarrollos, o ha diseñado el aspecto visual, los gráficos y cabeceras.

GUGS:
Hace unos meses, decidimos crear el ``Grupo de Usuari@s GNU de SINDOMINIO'' con el doble objetivo de facilitar a la gente del entorno de SINDOMINIO el salto a GNU/Linux y de difundir el aspecto político y ético del software libre. Dispone de un subdominio con una web (http://gugs.sindominio.net), lista de correo y foro de noticias-discusión-ayuda, basado en el trabajo previo para la ACP, y administrado remotamente de la misma forma que esta. GUGS pretende ser un punto de enganche entre la comunidad del software libre y las gentes y colectivos de la izquierda antagonista.

La BiblioWeb:
Es otro proyecto en fase avanzada de desarrollo. Se trata de una biblioteca virtual que permitirá documentar bibliográficamente documentos que ya estén en la red o que se deseen publicar en web. Los documentalistas no necesitarán tener ningún conocimiento previo de base de datos ni de HTML: rellenarán una ficha describiendo el documento --visualizable en ventana adjunta-- y, automáticamente, lo darán de alta remotamente en la base de datos del servidor. Inmediatamente estará accesible por web. Por tanto, la biblioteca se irá enriqueciendo desde proyectos diversos vía web, sin necesidad de que nadie lo coordine. Un interfaz web de consulta permitirá vía CGI cruzar todo tipo de búsquedas y extraer las fichas de la base de datos a cualquier visitante. La herramienta, construida desde cero por SINDOMINIO, contará con un interfaz de introducción de datos para los documentalistas escrito en Perl/Tk (con versión tanto para GNU/Linux como para MS-Windows), la base de datos construida en postgreSQL y los módulos y scripts en perl necesarios para manejar las altas y las consultas. Cuatro personas trabajan en este proyecto.

Nuestro particular ``contrato social'' consiste en que tanto la BiblioWeb como la ACP o cualquier otro desarrollo que SINDOMINIO pueda emprender en el futuro se basa en software libre, con lo cual dichas herramientas quedarán libremente disponibles para otros proyectos.

Los logs

Una de las tareas más desagradables en la administración de un sistema abierto es la revisión de los logs del sistema, en busca de errores, anomalías o ataques. En SINDOMINIO esta tarea es menos tediosa, puesto que es asumida por un grupo de gente (esta vez sí, con conocimientos técnicos), lo que permite que ninguna persona tenga que estar revisándolos constantemente.

Los servicios generales

La configuración de los servicios generales se asumió en principio por quienes teníamos privilegios de root. Tras la congelación de la versión 2.2 de Debian, se realizó remotamente una actualización completa del sistema, con la participación simultánea de todos los roots vía ytalk para tomar decisiones ante las preguntas de configuración y el reinicio de servicios (cualquier error nos podría haber dejado sin acceso al sistema). No obstante, la mayor parte de las configuraciones siguen como al principio, excepto pequeñas modificaciones (creación de nuevas entradas en el DNS, actualización de paquetes y de la versión del kernel, creación de nuevas listas, y otras modificaciones menores), que son llevadas a cabo por el equipo de roots, puesto que tampoco generan excesivo trabajo y algo tienen que hacer ellos :-)

Una excepción a esto fue el cierre del relay, lo que obligó a bastante trabajo durante unas dos semanas, y que fue llevado a cabo por un grupo reducido de personas, mientras el resto intentábamos buscar soluciones y/o información por la red; algunos otros ejemplos ha sido el enlazado de Twig con PostgreSQL --ahora se puede hacer sin más que instalar el paquete Debian, cuyo mantenedor oficial es uno de los roots de SINDOMINIO--, y la puesta en funcionamiento de la ACP. Precisamente, esto es parte del espíritu del modelo: descargar a quienes más conocimientos técnicos tienen de tareas que no los necesitan, para así no cargarles mucho de trabajo y aprovechar mejor los recursos.

Por último, cuando se plantea la puesta en funcionamiento de un nuevo servicio, en muchas ocasiones alguien se presenta voluntario para ponerlo en marcha, lo instala localmente, aprende a configurarlo, lo prueba, y cuando todo esta hecho avisa a algún root para que lo ponga en su estado real (ejemplos de esto han sido el servicio IRC o la herramienta analog de estadísticas web).

Las listas de correo

Otro de las tareas tediosas de administrar son las listas de correo, una vez que ya están en funcionamiento: dar altas y bajas, revisar las direcciones suscritas, errores de suscripción, mensajes rebotados o no admitidos...Esta tarea se puede descentralizar de forma sencilla con Smartlist, puesto que se puede hacer con comandos vía mail. Actualmente, ninguna de las listas de correo de SINDOMINIO es administrada por un root.

El desarrollo de aplicaciones o soluciones a medida

En muchos casos, una de las tareas que más tiempo lleva (y eso que no es puramente una tarea de administración) es la adaptación de aplicaciones a la situación real con la que te encuentras, y SINDOMINIO no es una excepción.

Cuando nos encontramos con la necesidad o conveniencia de desarrollar algo, el método que seguimos es sencillo: se avisa en la lista de administración (que es en la que nos incluimos quienes tenemos conocimientos técnicos, o quienes más interés tienen en adquirirlos) de cuál es el proyecto, y la gente que está interesada se apunta; una vez que el número de gente es suficiente, el proyecto se pone en marcha, siguiendo los métodos que el propio grupo elija (forma de coordinación, herramientas a usar, plazos si son necesarios, conocimientos a adquirir si todavía no se tienen...).


next up previous
Siguiente: Algunos problemas Superior: SINDOMINIO: Un modelo de Anterior: Pasos previos a la

Download this document: [src.tar.gz][ps.gz][html.tar.gz][dvi.gz]

Congreso HispaLinux 2000