Gérer vos salles de cours avec iTALC

Magazine
Marque
Linux Pratique
Numéro
63
Mois de parution
janvier 2011
Spécialité(s)


Résumé

Vous en avez assez que vos élèves passent leur séance de Travaux Pratiques à jouer en réseau ? Marre qu'ils préfèrent surfer sur le Web plutôt que de lever le nez pour suivre votre démonstration au tableau ? Fatigué de vous déplacer pour la énième fois expliquer le fonctionnement d'une commande ! Ne cherchez plus, vous avez besoin d'un outil pour gérer les postes de travail. iTALC [1], gratuit et libre, avec toutes ses fonctionnalités, est plus qu'une alternative et s'impose comme un concurrent de choix face aux logiciels propriétaires comme MasterEye et NetSchool Support.


Body

1. Aperçu

Avec iTALC (Intelligent Teaching And Learning with Computers), vous pouvez superviser l'activité des postes étudiants, partager n'importe quel écran avec toute la classe, ou une partie seulement, pour une démonstration, prendre la main sur un poste étudiant pour l'assister ou encore lui bloquer complètement le poste pour qu'il concentre son attention sur vos explications au tableau.

1italc

Figure 1 : Aperçu de l'interface d'iTALC

Le logiciel se base sur le protocole Remote Frame Buffer [2], en mode client/serveur : une partie en mode serveur est à installer sur tous les postes (que nous appellerons le Client pour respecter la terminologie iTALC, et qui correspond au binaire ica) ; le client graphique iTALC est à installer seulement sur le poste du professeur pour se connecter aux différents postes (appelé Maître, toujours suivant la terminologie). Nous allons procéder à l'installation du client par paquet et par compilation, l'installation d'un poste maître et la génération des clés de sécurité, puis à la prise en main et la configuration du logiciel. Tout ça sous Debian 5 et Fedora 11/12/13.

2. Installation

La prochaine version 1.0.10 est (toujours) en phase de test. La dernière version stable est la 1.0.9 et dépend fortement de QT4 (>= 4.3). Vous pourrez donc l'installer sous différents environnements graphiques, mais c'est son installation sous Gnome que nous allons aborder ici.

2.1 Partie Client

2.1.1 Paquetage sous Debian

La version 1.0.9 est disponible sur les dépôts officiels, un simple :

$> aptitude install italc-client

installera le client et les dépendances requises.

2.1.2 Compilation sous Fedora

Il n'existe pas de paquet rpm sous Fedora, rendez-vous sur Sourceforge et téléchargez la dernière version stable 1.0.9 [3]. Une fois l'archive décompressée, il vous faut modifier le fichier lib/include/types.h : la version de GCC 4.4 utilisée par Fedora n'inclut pas les bibliothèques attendues par iTALC, censé être compilé avec GCC 4.3 [4] :

$> make

...

./include/types.h:33: erreur: 'uint32_t' does not name a type

In file included from ./include/isd_base.h:37,

                 from ./include/local_system.h:31,

                 from ./src/dsa_key.cpp:47:

./include/italc_rfb_ext.h:55: erreur: 'Q_UINT32' does not name a type

./include/italc_rfb_ext.h:56: erreur: 'Q_UINT32' does not name a type

...

On ajoute l'include manquant pour la bonne compilation, à la ligne 27 du fichier lib/include/types.h :

...

#ifndef _TYPES_H

#define _TYPES_H

#include <stdint.h>

...

On peut compiler et installer après avoir récupéré les dépendances :

$> sudo yum -y install qt-devel libXtst-devel openssl-devel

$> wget http://downloads.sourceforge.net/project/italc/italc/1.0.9/italc-1.0.9.tar.bz2?use_mirror=ovh&ts=1279777801

$> tar xjf italc-1.0.9.tar.bz2

$> cd italc-1.0.9

$> sed -i "27i\#include <stdint.h>" lib/include/types.h # Pour les feignants administrateurs systèmes qui se respectent

$> ./configure --with-qtdir=/usr

$> make

$> sudo make install

2.1.3 Test et lancement du client

Pour les deux types d'installation, vous pouvez tester l'application en lançant :

$> ica

qui va lancer le client en écoute sur le port 5900, et vous devriez voir apparaître son icône dans le tableau de bord.

2italc_tourne

Figure 2 : ça tourne !

Pour lancer automatiquement les clients iTALC et y accéder, aussi bien avant que pendant la connexion d'un utilisateur, il faut éditer /etc/gdm/PreSession/Default et /etc/gdm/Init/Default en ajoutant les lignes suivantes en début de fichier :

...

killall ica #on tue au préalable toute session existante,

/usr/bin/ica & #pour n'en avoir qu'une seule de démarrée.

...

2.2 Partie Maître

2.2.1 Binaire

Sous Debian, lancez :

$> sudo apt-get install italc-master

Sous Fedora, le binaire a été installé dans /usr/local/bin/italc : effacez-le si la station de compilation n'est qu'un poste client, bien sûr.

2.2.2 Génération des clés

Pour sécuriser les communications entre poste client et poste maître, on génère une paire de clés : la clé publique doit être présente et lisible sur tous les postes, la clé privée n'a besoin d'être accessible que par le poste maître et lisible seulement par les enseignants et personnes pouvant lancer l'interface iTALC. Depuis le poste maître, exécutez :

$> ica -role teacher -createkeypair

Ce qui générera les clés privée et publique dans les répertoires /etc/italc/keys/private/teacher et /etc/italc/keys/public/teacher respectivement. Pour protéger l'utilisation de l'application maître, nous allons créer un groupe italc et y ajouter les utilisateurs autorisés à accéder aux clés :

$> sudo groupadd italc

$> sudo usermod -a -G italc prof

$> sudo usermod -a -G italc admin

$> sudo chgrp -R italc /etc/italc/keys/private/

$> sudo chmod -R 640 /etc/italc/keys/private/

Il ne vous reste plus qu'à copier la clé publique dans le répertoire /etc/italc/keys/public/teacher (le créer au besoin) de chaque poste client.

3. Configuration commune

Cette partie est facultative, mais si vous préférez stocker les clés sur un répertoire partagé en NFS, par exemple, vous pouvez indiquer leur chemin dans le fichier iTALC.conf , situé dans /etc/iTALC Solutions sous Fedora, et /etc/xdg/iTALC Solutions sous Debian (attention à l'espace). Ces dossier et fichier de configuration ont été créés àl'exécution d’ica, sinon créez-les.

#chemin vers la clé publique

[keypathspublic]

teacher=/chemin/vers/dossier/nfs/ou/local/public/key

#chemin vers la clé privée à ne préciser que sur la configuration du poste maître

[keypathsprivate]

teacher=/chemin/vers/dossier/nfs/ou/local/private/key

La directive [keypathspublic] est la seule nécessaire et suffisante pour les postes clients, le poste maître doit également spécifier la directive [keypathsprivate].

4. L'interface

4.1 Premier démarrage

Lancer l'application (menu Education > italc ou italc en ligne de commandes). Le dossier .italc est automatiquement créé dans votre dossier personnel, et iTALC va se plaindre de ne pas y trouver de fichier globalconfig.xml, qui contient les Salles/Postes que vous voulez référencer dans le logiciel.

3erreur

Figure 3 : Ajout d'un poste maître

Ce fichier va être créé dès que nous effectuerons des modifications dans la configuration du programme. Commençons donc par ajouter une salle contenant le poste maître : dans le bandeau vertical de gauche, cliquez sur l'icône représentant un ordinateur avec une loupe, ce qui ouvrira le panneau latéral Gestionnaire de Salle. Créez une première salle, comme indiqué, clic droit sur cette salle, Ajouter un ordinateur et procédez aux réglages comme suit :

4ajout

Figure 4 : Ajout d'un poste maître

Double-cliquez sur le poste ajouté, vous devriez obtenir l'affichage de votre propre poste. Continuez la procédure pour toutes vos salles et tous vos postes. C'est long ? Oui, vous n'allez donc pas demander à chaque enseignant, déjà débordé par les élèves, de se taper à la mimine cette configuration redondante et rébarbative : déplacez le fichier globalconfig.xml depuis votre répertoire personnel .italc vers un répertoire accessible par tous les utilisateurs depuis le poste maître, puis ajoutez la directive suivante dans iTALC.conf :

[paths]

globalconfig=/chemin/vers/dossier/nfs/ou/local/globalconfig.xml

Cette configuration deviendra ainsi globale à tous les utilisateurs. Désormais, c'est le fichier ~/.italc/personalconfig.xml qui contiendra les modifications d'utilisation d'iTALC propres à chaque utilisateur, que nous abordons dans la partie suivante.

Avant, tout comme la clé privée, on fixe les permissions du fichier (on en profite pour fixer celles du fichier iTALC.conf au passage) :

$> chown root:italc /chemin/vers/dossier/nfs/ou/local/globalconfig.xml /chemin/vers/iTALC.conf

$> chmod 640 /chemin/vers/dossier/nfs/ou/local/globalconfig.xml /chemin/vers/iTALC.conf

4.2 Prise en main

5interface

Figure 5 : Interface

L'interface est composée de la barre verticale de menu (orange), son panneau d'information associé (turquoise), de la barre d'outils (vert) et du panneau de travail (rouge). Par le menu, vous pouvez accéder à la gestion des salles vue précédemment, aux captures d'écran des clients effectuées, ainsi qu'à certains paramètres de l'interface.

C'est dans la barre d'outils que l'on trouve la plupart des fonctionnalités d'iTALC, à savoir, dans l'ordre : Salles pour afficher les salles paramétrées, Aperçu vous ramène à l'affichage par défaut en mode visionnage pour sortir des modes de prise de contrôle, etc. Démo plein écran affiche le poste maître sur tous les clients, idem pour Démo fenêtre, sauf que dans ce mode, le client peut suivre la démonstration dans une fenêtre et continuer à travailler à côté. Tout verrouiller bloque les postes clients pour que les élèves écoutent l'enseignant. Message texte envoie une message texte (sic !) à l'écran des clients, même si aucun utilisateur n'est connecté. Allumer (par Wake On Lan) nécessite que votre carte réseau soit compatible, correctement paramétrée et que vous ayez rentré son adresse MAC lors de la configuration du poste client. Éteindre, sans commentaire, les deux derniers boutons permettant d'aligner les affichages des postes dans la zone de travail. Depuis cette zone, vous pouvez effectuer ces mêmes opérations individuellement par un clic droit sur un poste, ainsi que d'autres opérations, comme redémarrer une machine, se connecter avec un utilisateur, afficher en plein écran le poste client sélectionné, prendre la main dessus façon VNC ou encore effectuer une démonstration à partir de ce poste.

Conclusion

À ce jour, les seules difficultés rencontrées concernent l'affichage de session graphique faisant tourner des applications 3D, avec lesquelles le logiciel doit être redémarré.

Le corps enseignant est satisfait du logiciel : de prise en main intuitive, les professeurs constatent plus d'interactivité et moins de dilettantisme pendant les TPS. Notre installation comporte plusieurs salles hétérogènes (l'installation d'iTALC sous Windows est laissée comme exercice au lecteur), avec chacune un poste maître, et nous, administrateurs, pouvons également surveiller l'activité de nos petits étudiants pendant les heures en accès libre.

J'espère que cette présentation vous donnera envie d'ajouter iTALC à votre boîte à outils pédagogique, surtout si vous n'avez pas de vidéo-projecteurs dans vos salles !

Travaux Pratiques avec Screen

Présentation

Sans fournir les fonctionnalités d'iTALC, bien sûr, voici un moyen simple de reproduire le même type d'environnement d'assistance utilisateur avec l'outil screen, si vous ne travaillez pas en interface graphique, en utilisant sa possibilité d'ouvrir une session en mode partagé (option -S), de se reconnecter à une session sans déconnecter la précédente (option -x), en ayant au préalable donné les permissions à sa session dans le mode ligne de commandes screen (pour entrer dans ce mode, une fois dans screen, tapez [Ctrl]+[a] suivi de :, un prompt apparaît en bas à gauche, tapez votre commande puis [Entrée]).

Chacun des étudiants et l'enseignant auront plusieurs sessions screen en cours :

  • Chaque étudiant (utilisateur « etudiantX » sur poste « poste_etudiantX ») ouvrira une session, accessible en écriture par le professeur, dans laquelle il travaillera.
  • L'enseignant (utilisateur « prof » sur le poste « poste_prof ») se connectera aux sessions des élèves pour surveiller leur travail et, au besoin, les assistera.
  • Ce dernier démarrera une seule session screen accessible en lecture seulement.
  • Chaque étudiant connecte une session screen à la session précédente du professeur pour suivre ses explications.
Prérequis

Il faut donner les droits suid au binaire screen, et changer les permissions du dossier contenant les sessions, sur chaque poste :

$>sudo chmod +s /usr/bin/screen

$>sudo chmod 755 /var/run/screen

Très léger niveau sécurité, n'oubliez pas de faire la procédure inverse à la fin de la séance.

Session screen étudiant

On crée une session partagée accessible en écriture uniquement par le professeur :

etudiant1@poste_etudiant1:$> screen -S session_etudiant1

etudiant1@poste_etudiant1:$>[Ctrl]+[a] :multiuser on

etudiant1@poste_etudiant1:$>[Ctrl]+[a] :acladd prof

Le professeur n'a plus qu'à se raccrocher à la session :

prof@poste_etudiant1:$>screen -x etudiant1/session_etudiant1

Session screen enseignant

prof@poste_prof:$> screen -S session_prof

prof@poste_prof:$> [Ctrl]+[a] :multiuser on

prof@poste_prof:$> [Ctrl]+[a] :acladd etudiant1,etudiant2 #il faut préciser les utilisateurs un à un, séparés par une virgule

prof@poste_prof:$> [Ctrl]+[a] :aclchg * -w "#" #pour la modification des permissions, on peut ici utiliser le joker * pour spécifier tous les utilisateurs

les élèves se connectent à la session prof comme précédemment :

etudiant2@poste_prof:$>screen -x prof/session_prof

Je vous renvoie vers la page de manuel de screen pour connaître toutes les options de la commande aclchg.

Liens

[1] http://italc.sourceforge.net/

[2] http://en.wikipedia.org/wiki/RFB_protocol

[3] http://sourceforge.net/projects/italc/files/italc/

[4] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=504970



Article rédigé par

Par le(s) même(s) auteur(s)

Proxmox Backup Server : liberté, efficacité, intégrité

Magazine
Marque
Linux Pratique
Numéro
139
Mois de parution
septembre 2023
Spécialité(s)
Résumé

Dans un précédent hors-série [1], nous avons exploré en détail Proxmox Virtual Environment (ou Proxmox VE ou PVE) [2]. Puis nous avons consacré la première partie [3] de cette série d’articles à la présentation de Proxmox Backup Server (ou PBS) [4]. Nous avons examiné la manière de sauvegarder des machines virtuelles individuellement et d’intégrer des sauvegardes basées sur PBS dans un environnement PVE. Dans cette deuxième et dernière partie, nous allons approfondir la gestion de vos sauvegardes en mettant l’accent sur des aspects essentiels tels que leur intégrité, la synchronisation entre différentes instances de PBS, ainsi que la planification du nettoyage et de la purge des sauvegardes. Tout cela afin de vous aider à maintenir un processus de sauvegarde optimal et à protéger vos machines virtuelles en toute confiance.

Débuter avec Proxmox Backup Server : les sauvegardes c’est pas du virtuel

Magazine
Marque
Linux Pratique
Numéro
138
Mois de parution
juillet 2023
Spécialité(s)
Résumé

Dans un monde numérique où la protection des données est primordiale, les solutions de sauvegarde et de restauration sont nombreuses. Si certaines d’entre elles sont performantes, elles sont bien souvent coûteuses et peu flexibles. Face à cette problématique, Proxmox Backup Server se démarque en proposant une alternative libre et innovante. En combinant déduplication, compression et chiffrement et grâce à une interface web conviviale, elle assure une sauvegarde efficace et sécurisée de vos machines virtuelles, conteneurs et machines physiques.

Proxmox VE : démarrez avec l’hyperviseur alternatif libre

Magazine
Marque
Linux Pratique
HS n°
Numéro
57
Mois de parution
avril 2023
Spécialité(s)
Résumé

VMware domine largement le marché de la virtualisation avec son hyperviseur de type 1, VMware ESXi. Mais vous n’êtes pas obligé de succomber au grand capital, et d’utiliser une solution propriétaire et payante pour virtualiser votre infrastructure. Dans cet article, nous allons découvrir Proxmox VE, une solution libre et gratuite de virtualisation pour votre installation personnelle comme pour vos besoins professionnels.

Les derniers articles Premiums

Les derniers articles Premium

La place de l’Intelligence Artificielle dans les entreprises

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

L’intelligence artificielle est en train de redéfinir le paysage professionnel. De l’automatisation des tâches répétitives à la cybersécurité, en passant par l’analyse des données, l’IA s’immisce dans tous les aspects de l’entreprise moderne. Toutefois, cette révolution technologique soulève des questions éthiques et sociétales, notamment sur l’avenir des emplois. Cet article se penche sur l’évolution de l’IA, ses applications variées, et les enjeux qu’elle engendre dans le monde du travail.

Petit guide d’outils open source pour le télétravail

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Ah le Covid ! Si en cette période de nombreux cas resurgissent, ce n’est rien comparé aux vagues que nous avons connues en 2020 et 2021. Ce fléau a contraint une large partie de la population à faire ce que tout le monde connaît sous le nom de télétravail. Nous avons dû changer nos habitudes et avons dû apprendre à utiliser de nombreux outils collaboratifs, de visioconférence, etc., dont tout le monde n’était pas habitué. Dans cet article, nous passons en revue quelques outils open source utiles pour le travail à la maison. En effet, pour les adeptes du costume en haut et du pyjama en bas, la communauté open source s’est démenée pour proposer des alternatives aux outils propriétaires et payants.

Sécurisez vos applications web : comment Symfony vous protège des menaces courantes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les frameworks tels que Symfony ont bouleversé le développement web en apportant une structure solide et des outils performants. Malgré ces qualités, nous pouvons découvrir d’innombrables vulnérabilités. Cet article met le doigt sur les failles de sécurité les plus fréquentes qui affectent même les environnements les plus robustes. De l’injection de requêtes à distance à l’exécution de scripts malveillants, découvrez comment ces failles peuvent mettre en péril vos applications et, surtout, comment vous en prémunir.

Bash des temps modernes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les scripts Shell, et Bash spécifiquement, demeurent un standard, de facto, de notre industrie. Ils forment un composant primordial de toute distribution Linux, mais c’est aussi un outil de prédilection pour implémenter de nombreuses tâches d’automatisation, en particulier dans le « Cloud », par eux-mêmes ou conjointement à des solutions telles que Ansible. Pour toutes ces raisons et bien d’autres encore, savoir les concevoir de manière robuste et idempotente est crucial.

Les listes de lecture

8 article(s) - ajoutée le 01/07/2020
Découvrez notre sélection d'articles pour faire vos premiers pas avec les conteneurs, apprendre à les configurer et les utiliser au quotidien.
11 article(s) - ajoutée le 02/07/2020
Si vous recherchez quels sont les outils du DevOps et comment les utiliser, cette liste est faite pour vous.
8 article(s) - ajoutée le 02/07/2020
Il est essentiel d'effectuer des sauvegardes régulières de son travail pour éviter de perdre toutes ses données bêtement. De nombreux outils sont disponibles pour nous assister dans cette tâche.
Voir les 60 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous