Linux Terminal Serveur Project

Avant de commencer, notons Frenchkiss qui est une solution “clé en main” basée sur un LTSP amléioré et une Ubuntu LTS livrée avec des personnalisations spécifiques à l'éducation. À découvrir !

Selon Wikipédia : “Le projet LTSP, Linux Terminal Server Project est un ensemble de programmes permettant à plusieurs personnes d'utiliser le même ordinateur. Cela est réalisé par la mise en place d'un réseau informatique composé d'un serveur sous Linux et de clients légers.” Mise en place d'une solution de type LTSP …

La documentation officielle : https://help.ubuntu.com/community/UbuntuLTSP

Des mises en places déjà effectuées dans des établissements

En quelques mots, LTSP permet de faire fonctionner des clients légers en utilisant un serveur, concrètement, on peut utiliser comme clients légers:

  • Des clients légers constructeurs
  • Des machines obsolètes (à partir de pentium100MHz )

Si la machine est vraiment trop ancienne et que sa carte réseau ne peut pas booter en PXE (via F12 en général), il faut alors faire une disquette de boot ou utiliser Grub

Comment cela fonctionne ?

Plutôt que de rentrer dans des détails techniques dans cet article, vous pouvez consulter le linux magazine numéro 102 (Février 2008) qui est très complet sur le sujet, ainsi que le numéro 104 (Avril 2008) qui parle de la sécurisation et du cryptage des échanges entre le client et le serveur.

Vous pouvez aussi consulter ce pdf :ltsp2.pdf

Ce lien doit être intéressant pour l'intégration d'un LTSP sur un sambaedu : http://193.49.66.139/se3wpkg/ltsp_peter_boireau.pdf

A noter que dans ces articles il est fait référence à nfs qui ne semble plus être utilisé dans la version ltsp5

De quoi ai-je besoin ?

Il faut une machine pour faire serveur (une machine relativement moderne avec 1Go de RAM par exemple. Des clients légers ou des machines obsolètes. Un réseau pour que le tout communique.

Configuration rapide de LTSP (une carte réseau)

Matériel utilisé

Une machine faisant office de serveur avec edubuntu 8.10 ou Ubuntu 8.10. Un machine faisant office de client léger (céléron 400MHz) ou de vrais clients légers que l'on trouve dans le catalogue de l'UGAP par exemple. Un réseau.

Installation rapide pour paresseux et pressés

  • Télécharger l'alternate CD d'ubuntu
  • Appuyer sur F4 lors du choix des options
  • Sélectionnez LTSP
  • Paramétrez le DHCP (voir plus bas)

Télécharger et installer les paquets

En premier lieu on choisit les paquets via synaptic, une petite recherche sur ltsp s'impose. Cocher le stand-alone. Cela sélectionnera tout le reste (y compris le serveur dhcp)

Les paquets suivants permettent de gérer les utilisateurs un peu comme la console enseignant : ecrannoir, envoyer un message aux stations, déconnecter et en plus, possibilité de faire éxécuter un logiciel à distance.

sudo apt-get install thin-client-manager-gnome ltspfsd

Construction du chroot

Il s'agit ici de faire télécharger et construire par le système un sous-système d'exploitation (chroot) auquel vont se connecter les clients. Simple, dans une console, faire :

sudo ltsp-build-client

À partir de là , cela peut-être assez (voire très) long, il faut une bonne connexion internet entre autre et une machine assez puissante.

Pour information, la console affiche alors des messages du type :

bill@privaticielbox:~$ sudo ltsp-build-client 
Note : ajout des distributions et des composants par défaut au miroir sécurité :
http://security.ubuntu.com//ubuntu intrepid main restricted universe multiverse
I: Retrieving Release
I: Retrieving Packages
I: Validating Packages
I: Resolving dependencies of required packages...
I: Resolving dependencies of base packages...
I: Checking component main on [url=http://archive.ubuntu.com/ubuntu...]http://archive.ubuntu.com/ubuntu...[/url]
I: Retrieving adduser
I: Validating adduser
I: Retrieving apt
I: Validating apt
I: Retrieving apt-utils
I: Validating apt-utils
I: Retrieving base-files

etc etc

Paramétrage du DHCP

Paramétrer le fichier dhcp.conf :

sudo gedit /etc/ltsp/dhcpd.conf

en fonction des particularités de votre réseau. Dans mon établissement, nous l'avons configuré ainsi :

#
# Default LTSP dhcpd.conf config file.
#

authoritative;

subnet 10.33.1.0 netmask 255.0.0.0 {
    range 10.33.1.2 10.33.1.15;
    option domain-name "example.com";
    option domain-name-servers 10.255.25.156;
    option broadcast-address 10.255.25.255;
    option routers 10.255.25.156;
#    next-server 192.168.0.1;
#    get-lease-hostnames true;
    option subnet-mask 255.0.0.0;
    option root-path "/opt/ltsp/i386";
    if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
        filename "/ltsp/i386/pxelinux.0";
    } else {
        filename "/ltsp/i386/nbi.img";
    }
}

Le SLIS est 10.255.25.156 Les machines de la salle ont des IP sous Windows dans le sous-réseau : 10.33.1.0

Pour terminer, relancer le serveur DHCP avec la commande suivante :

 sudo /etc/init.d/dhcp3-server restart

La console devrait afficher :

* Stopping DHCP server dhcpd3                                                                            [fail] (ou [OK])
* Starting DHCP server dhcpd3                                                                            [ OK ]

Utilisation

Connecter un client

Presser F12 au démarrage de la machine pour booter sur le réseau (PXE).

  • Veiller à ce qu'aucun autre serveur DHCP ne tourne sur votre réseau (votre BOX ou autre). S'il y en a plusieurs sur le réseau, c'est le premier des deux qui répondra qui donnera une adresse… On peut configurer le serveur afin qu'il y ait plusieurs services DHCP, c'est possible. Si vous savez faire, indiquez le en partie “approfondissement”
  • Attention au pare-feu du serveur qui peut bloquer le TFTP (en gros le boot PXE). Voir avec Firestarter.

Si lors de la connection sur le client, vous obtenez le message “no response from server….”, il faut refaire les clés ssh (qui sécurisent la connection) et l'image (le noyau envoyés aux clients). C'est le cas si vous avez faits une mise à jour de votre système. Pour cela :

sudo ltsp-update-sshkeys
sudo ltsp-update-image

Gérer, contrôler le travail des élèves

Gestionnaire de clients légers par défaut

Le thin-client-manager que nous avons installé est minimaliste mais permet déjà de :

  • Éteindre l'écran à distance (EcranNoir) (testé ok)
  • Rallumer l'écran à distance (testé ok)
  • Envoyer un message à une station ou un groupe de stations (testé ok)
  • Voir le bureau des stations
  • Lancer un programme à distance sur les stations ! (testé ok)
  • Déconnecter les clients (testé ok)

Ce qui couvre déjà beaucoup de nos besoins si tant est que vous utilisez ce genre de fonctionnalité. La pratique montre que peu de collègues l'utilise.

Pour la lancer, aller dans : Système/Administration/ThinClient Manager

Remarque : pour voir le bureau des clients et pouvoir en prendre le controle total, il faut installer x11vnc sur les clients. Où sont les clients ? Dans le chroot :

sudo cp /etc/apt/sources.list /opt/ltsp/i386/etc/apt/sources.list
sudo chroot /opt/ltsp/i386
apt-get update
apt-get install x11vnc
...

Suite de la configuration ici : http://doc.ubuntu-fr.org/clientleger_x11vnc

iTALC, ControlAula

Il existe des consoles bien plus complètes comme iTALC http://italc.sourceforge.net/ ou la console développé par la région d'Extrémadure (Espagne) qui a passé toutes ses écoles sous GNU/Linux : http://www.itais.net/2005/10/30/nueva_version_de_controlaula_controlaula/ ou encore : http://www.gnomefiles.org/app.php?soft_id=1010

Il y a d'autres outils analogues…

Configuration rapide (deux cartes réseaux)

Configuration avancée

Notes: La majorité des informations citées ici proviennent du magazine hors-série linux-magazine n°102

Le fichier lts.conf

Attention, depuis la version 5 de LTSP, ce fichier doit être placé ici: /var/lib/tftpboot/ltsp/i386/lts.conf

Et non plus ici /opt/ltsp/i386/etc/lts.conf

Options de configuration

Le fichier lts-parameters.txt proposé avec la documentation est ici :

lts-parameters.txt.tar.gz

Cas où un serveur DHCP existe déjà sur le réseau

[title=1]Problèmes éventuels [/title]

Cette section est en cours de rédaction (toute contribution bienvenue) permettra de remédier à quelques problème qui pourraient survenir/

Le seul problème à mon avis, c'est le serveur DHCP qui peut entrer en conflit

Donc quelques pistes à fouiller au moment :

Changer le port du serveur et fabriquer la disquette qui va avec

Configurer les serveur dhcp pour qu'il n'accepte que certaines adresses MAC

Fabriquer une disquette avec l'adresse en statique

Se connecter en console au client

Il peut être intéressant de se connecter au client en console en root pour étudier les modules chargés.

Le fichier concerné est situé sur le serveur ici :

/opt/ltsp/i386/etc/shadow

La ligne root est ici

root:!:14236:0:99999:7::1:

il faut supprimer le 1 en fin de ligne qui interdit la connexion en root

root:!:14236:0:99999:7:::

Il faut aussi donner un mot de passe à root.

sudo su
chroot  /opt/ltsp/i386/
passwd
exit

exit permet de sortir du chroot

 
clientleger/accueilltsp.txt · Dernière modification: 2014/10/23 08:30 (modification externe)
 
Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : GNU Free Documentation License 1.3
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki