Cahier des charges initial Optimisation de l’interface utilisateur pour la connexion sur le bureau virtuel UTEO pour les écoles. Contexte Ce projet m’a été donné suite à des plaintes de plusieurs instituteurs des écoles primaires et maternelles de la ville, car lorsque les élèves se connectaient au bureau virtuel UTEO, des fenêtres de sécurité Java apparaissaient (Annexe 1). Ces fenêtres sont gênantes car les élèves interpellent leurs enseignants pour qu’ils fassent le nécessaire afin de les faire disparaitre jusqu'à la page de connexion, ce qui fait perdre du temps aux professeurs. Ma mission était donc de faire disparaitre ses fenêtres de n’importe quelles façons. Un employé du service s’était déjà penché sur le problème récemment. J’ai repris le travail qu’il avait commencé afin de trouver des solutions et de parvenir à un résultat concret. Démarche Pour commencer, j’ai regardé le travail qui a été accomplie par l’employé du service. Il m’avait expliqué qu’il avait mis en place des GPO sur son serveur, qui exécutaient des scripts en batch qu’il avait écrit pour que les changements s’appliquent sur tout le domaine des écoles de la ville. Ses scripts ne fonctionnaient pas et il ne savait pas pourquoi. Internet a été mon principal outil de recherche. J’ai commencé à rechercher : Qu'est-ce qu'une GPO ? (Annexe 2) Les GPO (Group Policy Object) permettent la gestion des ordinateurs et des utilisateurs dans un environnement Active Directory. Ce sont des stratégies de groupe qui permettent de restreindre les actions et les risques potentiels comme le verrouillage du panneau de configuration, la restriction de l’accès à certains dossiers, la désactivation de l’utilisation de certains exécutables, etc. Elles sont souvent utilisées pour la gestion des parcs informatiques dans les écoles ou dans les petites organisations. J’ai appris qu’on pouvait faire énormément de choses avec des GPO sur un Parc entier de machine, cette solution évite de se déplacer dans les écoles et de perdre du temps pour configurer le logiciel Java afin d’enlever ces fenêtres sur les quelques 200 postes présent dans les écoles. Cette solution pour automatiser les modifications des paramètres de configuration de Java a donc été retenue. Après, J’ai dû me renseigner pour savoir : Qu'est-ce que ULTEO et à quoi ça sert (Annexe 3, 3.1) Ulteo est un système d'exploitation basé sur Linux. C'est une application fonctionnant sous Windows qui crée un environnement Linux complet permettant d'exécuter des applications. C’est une sorte de bureau virtuel qui propose un catalogue d’application qui est installées sur un serveur distant et c’est un serveur maître qui, cette fois, contrôle chaque utilisateur lorsqu’il se connecte, afin de demander au serveur d’application de lui ouvrir une session temporaire. Après la session ouverte, l’utilisateur est dans un environnement Windows fictif ou il peut travailler avec les applications disponibles (Annexe 4). Ulteo est uniquement accessible via un navigateur et une identification sur une page de connexion. Cette solution fonctionne uniquement sur un navigateur avec Java. Mais apparemment, Ulteo est désormais accessible sans Java dans une version 4 récemment publiée. Après avoir pris connaissance de l’environnement du problème, je me suis attaqué à rechercher des cas ou des personnes qui ont eu ce genre de problème (Annexe 5, 5.1, 5.2). Il y avait diverses solutions : - Installer une ancienne version qui n’avait pas tous les renforts de sécurité actuelle, mais ceci était impossible à cause d’Ulteo qui vérifiait si la dernière version de Java était installée et si ce n’était pas le cas il affichait un message comme quoi Java n’était pas à jour. - Une autre solution était de signer l’application par une autorité de certification, mais cette technique est complexe pour les demandes et coûte chère, 100 dollars par an pour renouveler le certificat. - Une solution plus simple était de mettre à jour Ulteo vers sa version quatre qui fonctionnais à présent sans Java, malheureusement la bascule vers cette version était impossible à cause du changement trop radicale de son fonctionnement et de son paramétrage. - Une dernière solution consistait à paramétrer java depuis une interface graphique. L’idée était d’avoir une configuration optimale afin que les fenêtres de sécurité disparaissent totalement. Cette solution a été retenue. En faisant un certain nombre de tests sur un Windows 7x64 bits, j’ai pu trouver la bonne configuration, il restait malgré tout un message d’exécution à cause de l’absence du certificat de l’applet Java. Les mêmes tests concluants ont aussi été réalisés sur un Windows XP. Vu que tous les postes des écoles sont basés sur des systèmes d’exploitation Windows 7 et XP, les tests étaient primordiaux. Page 1 L’astuce pour avoir une configuration Java identique sur chaque poste est d’avoir un même dossier de configuration commun pour les deux systèmes d’exploitation. Ce dossier de configuration contenait le cache ou était enregistré les applets Java concernées et ses fichiers de paramétrages. Une copie des dossiers en question sur le serveur était nécessaire pour le déploiement (Annexe 6). Pour que les GPO fonctionnent, il fallait mettre en place des scripts en batch. Les cours de cette année mon beaucoup aidés (Annexe 7). A chaque démarrage d’une session, chaque dossier et fichier seront copiés sur les ordinateurs du parc, grâce aux GPO. Les paramètres personnalisés seront ainsi appliqués. Le déploiement des GPO ont commencé par des tests sur les PC d’une seule école. Etant allé sur place, des problèmes ont été identifiés, plusieurs anciennes versions de java sont installées sur les postes, ce qui a pour incidence que les nouveaux paramètres mis en place ne sont pas pris en compte à cause des différentes versions qui rentrent en conflit. Le problème est aussi qu’il n’y avait pas la dernière version de java installée sur les postes. Pour remédier à cela, on a mis en place de nouvelles GPO qui permettront d’installer la dernière version de java au démarrage de la session utilisateur et une GPO qui permettra de désinstaller tous les anciennes versions de Java depuis la version 5. Le déploiement dans les premières écoles ont été concluant, il n’y a plus de fenêtre de sécurité sur Windows XP et plus qu’une seule présente sur Windows 7. Le déploiement se déroulera petit à petit dans les autres écoles le mercredi quand les élèves n’auront pas cour et pendant les grandes vacances. Une dernière chose à distinguer est le suivi des mises à jour Java, car chacune est différentes et peuvent apporter leurs lots de modifications ou de nouveautés aux niveaux des fonctionnalités. A chaque nouvelle version, un employé se chargera de rechercher s’il y a des modifications à faire au niveau des scripts pour que les GPO fonctionnent toujours avec les dernières versions installés. Page 2 Annexe 1 : Page 3 Annexe 4 Page 4 Annexe 6 : Page 5 Annexe 7 : Script pour les systèmes d’exploitations Windows 7 : @echo off xcopy "\\srvec01\SYSVOL\ecoles.aixlesbains\Gpo Java\7\Deployment" "%userprofile%\AppData\LocalLow\Sun\Java\Deployment\" /Y /E Script pour les systèmes d’exploitations Windows XP : @echo off xcopy "\\srvec01\SYSVOL\ecoles.aixlesbains\Gpo Java\xp\cache\Sun" "%userprofile%\Local Settings\Application Data\Sun\" /Y /E xcopy "\\srvec01\SYSVOL\ecoles.aixlesbains\Gpo Java\xp\Proprieties\Deployment" "%appdata%\Sun\Java\Deployment\" /Y /E Page 6