Au CCSI, l'activité système englobe l'ensemble, du point de vue systèmes d'exploitation, la gestion des ordinateurs et des applications sous la responsabilité du CCSI, ainsi que la gestion de partie des applications réseau informatique.
Ces applications peuvent être classées selon des caractéristiques telles le système d'exploitation ou des contraintes de disponibilité :
Les postes en libre service sont des ordinateurs, double boot, sous Windows et Linux Debian.
Les systèmes d'exploitation des serveurs sont, pour la plupart, Linux (Debian) et Solaris (en migration vers OpenIndiana et/ou Linux).
Un effort est en cours, depuis quelque temps pour, d'une part, redonder les services vitaux ou importants, et d'autre part, virtualiser les services pouvant l'être. La redondance consiste à disposer d'un service sur au moins deux machines installées dans des endroits physiquement différents – deux salles machines dans les locaux du boulevard Saint-Michel. La virtualisation, basée sur les zones de Solaris, consiste à déployer plusieurs machines virtuelles à l'intérieur d'une même machine physique.
L'activité système englobe aussi le développement d'outils « maison » d'administration système, tels des scripts de création de comptes de messagerie ou UNIX, génération des fichiers de données des différents services (DNS, DHCP, messagerie, ...), surveillance des services ou déploiement en mode « pull » de logiciels sur les stations en libre service. Les développements les plus connus à l'extérieur étant j-chkmail (logiciel de filtrage de messagerie) et vigilog (logiciel de dépouillement de fichiers journaux de routeurs).
Le CCSI est chargé de la gestion de la résolution des noms et addresses IP de nos domaines. Nos serveurs DNS servent 220 domaine, dont 35 en tant que serveurs primaire et 185 en tant que secondaire. Ce service utilise 5 serveurs sur le site de Paris et 1 sur le site d'Evry, dont :
Le CCSI est en charge des MXs des domaines principaux de l'institution et de la gestion de la messagerie pour les utilisateurs parisiens.
2 MXs sur le site parisien et 1 MX sur le site d'evry. Ces serveurs sont chargés du filtrage de spam et virus et de la redirection, en interne, des messages vers les serveurs de stockage ;
1 serveur de filtrage de greylisting, utilisé par les 3 MXs du domaine ;
2 serveurs de stockage (POP et IMAP - Cyrus) pour la messagerie – personnel permanent et étudiants. La capacité totale de ces serveurs est de 1,6 To - Il s'agit de deux machines virtuelles sur une seule machine physique. Ces serveurs sont redondés avec basculement manuel, en cas de besoin;
3 serveurs sortants de messagerie. Ce sont des serveurs utilisés pour la soumission de messages, dont 1 authentifié par l'identifiant local et les deux autres authentifiés par les identifiants de l'annuaire. Ces deux derniers sont accessibles à tout le personnel de l'école, quel que soit leur site de rattachement. Tout le trafic sortant, de messagerie, y compris celui des webmail et des serveurs web, passe par ces serveurs pour empêcher la sortie éventuelle de spams ou de virus.
Le CCSI héberge un nombre important de serveurs web. Les serveurs sont régroupés, selon les points communs, dans des machines virtuelles. Ces machines virtuelles sont, tant que possible, générées à partir d'un modèle commun de façon à fles rendre homogènes et à faciliter ainsi leur administration.
Il s'agit d'une application permettant d'indexer l'ensemble des sites web de l'institution, de façon à pouvoir retrouver, avec une seule requête, les documents satisfaisant un certain critère, dans l'ensemble des serveurs web de l'école. Cette application utilise le logiciel Exalead et tourne sur un ordinateur dédié.
L'accès web des utilisateurs est assuré par quatre proxies du site parisien, dont :
En outre, la configuration automatique de proxy mise en place par le CCSI permet d'avoir la même configuration pour les utilisateurs locaux ou nomade.
Le CCSI maintien deux services d'annuaire :
Dans ces deux services, les mises à jour sont effectuées sur un serveur maitre et les consultations sur deux serveurs esclaves.
Le service DHCP est responsable de l'attribution des adresses réseau (IP) aux postes informatiques des utilisateurs., Chaque nouvelle machine, arrivant sur le site de Paris doit être déclarée au CCSI de façon à pouvoir obtenir automatiquement une adresse IP à chaque démarrage. Ce service est rendu par deux serveurs redondants.
Les données manipulés au CCSI sont stockés sur deux types de support :
* stockage local - chaque serveur possède une capacité locale de stockage, nécessaire à son fonctionnement, et qui est, en général, de l'ordre de 70 Go à 300 Go. Les serveurs de boites aux lettres est un cas particulier, puisque le stockage des messages se fait sur du stockage local (2 To sur chaque serveur).
* stockage partagé - il s'agit de zones de stockage sur des serveurs réseau (NFS, iSCSI, ...) mises à la disposition des différents serveurs et postes utilisateur. Le service de stockage partagé est rendu par 2 baies Dell MD3200. Chaque baie, pilotée par un ordinateur Dell R710 possède une capacité utile de 9 To. Ces deux baies sont complétées par une baie plus ancienne, Sun 3310, de capacité 1 To.
La sauvegarde des données de 235 ordinateurs (serveurs et postes informatique des utilisateurs) est effectuée à l'aide du logiciel "arkeia" édité par le fournisseur de même nom.
Les sauvegardes incrémentales s'effectuent sur deux baies de disques MD1000, de capacité totale de 27 To et les sauvegardes complètes s'effectuent sur des robots à bande, de capacité totale 9,6 To.
Un nombre non négligeable d'autres services "invisibles" sont nécessaires au bon fonctionnement des moyens informatiques du CCSI, et nécessitent des moyens dédiés. Par exemple,
La démarche du CCSI a toujours été de maitriser parfaitement son système d'information. Comme résultat de cette approche, nous avons toujours eu une activité importante de développement, soit pour adapter les logiciels disponibles à nos besoins, avec extension de leurs fonctionnalités de base, soit pour ajout de fonctionalités de surveillance, correction de bugs, proposition de nouvelles fonctionnalités ou même développement de logiciels complets, comme décrit ci-après.
Il s’agit d’un logiciel de filtrage pour les serveurs de courrier sendmail et postfix, utilisant l’API milter, écrit en langage C. Conçu à l’origine pour lutter contre les virus par la détection de fichiers attachés potentiellement dangereux, il inclut des fonctionnalités antispam particulièrement efficaces. Il possède une active communauté d’utilisateurs dont plusieurs grands centres universitaires français et étrangers. Le logiciel est diffusé sous licence libre GPL.
La particularité du logiciel est de chercher à résoudre le problème de filtrage de messages sur des serveurs de messagerie de taille importante (grand nombre d’utilisateurs, trafic important, population hétérogène...) où la problématique est plus complexe que celle des petits serveurs. Compte tenu des contraintes de ce contexte, l’objectif premier du filtre est, tout d’abord, de dégrossir fortement le trafic et de ne soumettre que le résidu à un filtrage fin. Le temps de traitement doit rester faible de façon à être capable de traiter un trafic important. j-chkmail utilise des méthodes de filtrage de contenu et analyse le comportement des passerelles de messagerie distante. C’est cette coopération des méthodes de filtrage qui permet d’améliorer les résultats individuels de chaque méthode.
La surveillance permanente de la charge du serveur, ainsi que celle de la consommation de ressources par les passerelles distantes, protège le serveur contre des attaques de déni de service. La vérification du contenu permet d’assigner une note, reportée dans les en-têtes du message. L’utilisateur peut, selon ses besoins, soit utiliser le marquage simplifié, soit personnaliser la manière dont il exploite les informations du serveur.
Le filtre utilise une implantation particulière de la technique de greylisting, adapté au traitement de gros trafics, visant à minimiser les délais d'attente, le nombre d'enregistrements utilisés et une meilleure identification des clients SMTP habituels.
L'intégration de la validation des destinataires dans l'analyse comportement des clients SMTP a donné des très bons résultats, aidant à réduire de façon importante le résidu de messages soumis au filtrage de contenu.
Dans la partie filtrage de contenu, les techniques utilisés, dans l'ordre chronologique de leur intégration dans le logiciel, sont le filtrage d'URL, un filtre statistique du type "bayésien", similaire à celui utilisé dans d'autres logiciels similaires et, dernièrement, un classificateur discriminant linéaire, avec apprentissage actif.
Ce logiciel est disponible en téléchargement à : http://www.j-chkmail.org.
Les développements autour du filtrage statistique de contenu de messages constituent l'axe de recherche de José-Marcio Martins da Cruz.
Il s'agit d'une série de scripts destinés à l'éxecution de tâches particulières, sous Linux, sur les stations de travail. Les deux utilités principales sont le déployement/installation de logiciels ou les modifications dans la configuration des postes.
Etant donné que les postes en libre service peuvent fonctionner sous Windows et sous Linux et que l'on ne peut pas les avoir tous sous Linux en même temps pour éxecuter ces fonctions d'administration, ces scripts permettent la définition de tâches qui seront éxecutées lors de chaque démarrage sous Linux. Bien entendu, chaque tâche définie n'est éxecutée qu'une fois, sauf si renouvelée.
En fait, il s'agit d'un mode de fonctionnement en mode "push" (tiré) et non pas "pull" (poussé).
vigilog est une suite de scripts écrits en perl destinés à l'analyse de fichiers de log de routeurs cisco à la recherche de tentatives répetées de violation des règles d'accès définies dans ces routeur (scans).
Ces scripts sont lancés tous les matins sur les fichiers de la veille et le résultat est présenté sous la forme de pages HTML sur un serveur web plus un message electronique de synthèse, envoyé au responsable du routeur et, en option, remonté au fournisseur d'accès (Renater) qui pourra effectuer un traitement centralisé, dans l'hypothèse où plusieurs organismes feraient de même.
Ce logiciel est disponible en téléchargement à : http://vigilog.mines-paristech.fr.
L'administration système comprend des tâches d'installation, compilation, configuration et surveillance de logiciels et de machines.
Pour assurer l'homogeneité de ces tâches, nous avons développé un nombre important d'applications, en général des scripts en shell (bash ou sh) ou en perl.
Ces scripts permettent, par exemple, de :
Ces scripts sont regroupés et distribués par catégorie (sys-tools, mail-tools, web-tools, ...) et se trouvent installés toujours au même endroit, quelle que soit l'architecture (matériel et système d'exploitation.
Il s'agit de contributions du type correction de bugs ou des nouvelles fonctionalités, integrées dans les logiciels libres : sendmail, sympa, l'agent Solaris de OCS-Inventory. Ce sont des contributions sous forme, en général, de patches.
Nous citons deux contributions importantes concernant le logiciel sendmail :
Grâce à cette deuxième contribution, nous avons reçu une distinction à l'occasion de la comémoration des 25 ans d'existence de la messagerie électronique.

Cette distinction prime une contribution faite au logiciel sendmail, dans les termes :
Innovative Open Source Contribution
EMEA Winner : Jose Marcio Martins da Cruz, Ecole des Mines de Paris - for
his contributions to libmilter (the library that implements the Milter protocol and
provides the API to applications). This contribution delivered an alternative imple-
mentation of the threading model, providing improved performance for operating
systems such as Linux.
http://www.sendmail.com/pdfs/pressreleases/Sendmail%20Innovation%20Awards_10%2025%2006_FINAL.pdf
Lors de cette conférence, un comité a choisi les 10 meilleures présentations pour constituer un numéro spécial de la revue Computational Méthods in Science and Engineering. La présentation de José-Marcio Martins da Cruz en a fait partie.
J. M. Martins da Cruz, Mail filtering on medium/huge mail servers, in Computational Methods
in Science and Technology 11 (2005), no. 2, 101-108.
http://www.terena.org/publications/tnc2005-proceedings/