Bienvenue dans ce numéro de Brave GNU World. Je vais tout d'abord vous parler de certains projets avant d'aborder une question théorique qui a pris une importance toute particulière lors de ma visite à Systems à Munich (Allemagne). Mais commençons par la partie pratique.
Userv
Userv ("you serve")[5] de Ian Jackson se défini comme "un utilitaire système Unix qui permet à un programme d'en appeller un autre lorsqu'une confiance limitée existe entre eux." Comme cela ne veut probablement pas dire grand chose pour la plupart d'entre vous, voici en quoi cela consiste.
Sur les systèmes Unix, on est souvent dans la situation où un programme a besoin de certain privilèges pour une certaine tâche. Plusieurs solutions existent à ce problème classique, mais presques toutes créent de graves problèmes sur le plan de la sécurité. Ecrire les partie privilégiées en C et les appeller par un "emballage" est une possibilité. Comme le programme hérite tous les droits du programme original, l'original doit être fiable à 100%. Cette méthode est source d'erreurs potentielles: ce que les processus héritent diffère d'un Unix à l'autre. Donc, soit on oublie quelque chose, soit le programme devient non portable.
"Sudo" offre une autre solution, mais elle a l'inconvénient d'exiger d'être "root". C'est pour le moins une violation du principe du privilège minimum qui veut que chaque processus n'aie que les privilèges nécessaires pour accomplir sa tâche. Souvent aussi, les ressources héritées ne sont pas proprement nettoyées et donc l'isolation n'est pas bonne.
Ce sont ces problèmes que userv tente de résoudre. Une utilisation possible serait une version de cron qui ne doit pas être "root". Une brèche de sécurité dans cron donnerait à l'intrus seulement la possibilité de lancer les tâches de cron à des moments différents. Cet intrus ne gagnerait plus le contrôle du système.
C'est également très intéressant pour les serveurs web avec des scripts cgi où une bonne isolation entre l'interface et la partie interne est cruciale. En fait, userv est déjà utilisé dans ce but: L'université de Cambridge l'utilise dans un projet de service web central pour sesdifférentes sections.
La version 1.0 de userv est très proche, et comme il ets sous GNU General Public License, il peut être utilisé librement. Bien que l'auteur admette qu'il faille un certain temps pour apprivoiser la configuration, le projet mérite certainement que l'on y jette un oeil.
Les deux projets suivants sont aussi sous GNU General Public License et sont l'oauvre de Jason Nunn.
Clobberd
Clobberd [6] permet de surveiller l'activité de l'utilisateur et de garder une trace de l'activité sur le réseau. Pour ce faire, le daemon extrait les donnée du fichier utmp et permet à l'utilisateur de visualiser ses statistique via clobbertool sur une page web. L'administrateur peut utiliser clobberedit pour changer la configuration de l'utilisateur.
Le gros avantage de clobberd, c'est la facilité de configuration et d'utilisation. Malheureusement, l'auteur s'attend à des problèmes avec les autres unix que GNU/Linux et clobberd doit toujours être utilisé derrière un pare-feu (firewall).
C'est utile essentiellement pour des réseau avec beaucoup d'utilisateurs: Jason Nunn m'a raconté l'histoire d'un homme qui avait connecté son réseau privé à domicile à internet via un gateway GNU/Linux. Il utilise clobberd pour vérifier que son fils fait ses devoirs plutôt que de surfer sur la toile. Comme quoi, un outils parfaitement innocent peut être utilisé pour de noirs desseins. .-)
La51
La51 [7] est un petit cross-compilateur 8051 (MCS-51) orienté Siemens sab80c537. Le programme en lui-même est minuscule et se fonde sur le livre "The 8051 Microcontroller" 2ème Ed. par IS Mackenzie.
Même si Jason Nunn qualifie le compilateur d'"imparfait", cela l'a aidé dans certains projets, comme par exemple l'écriture d'une émulation terminal VT52. Le seul vrai problème, selon lui, est que le compilateur ne peut créer que des fichier Hex Intel. Par contre, il est parfaitement testé, ce qui compense ce défaut.
Je suppose que cela n'intéresse qu'une minorité de lecteur, donc je passe immédiatement au suivant:
CUPS
CUPS ("Common Unix Printing System"->Système Commun d'Impression sous Unix) [8] d' Easy Software Products est un remplacement possible pour l'ancienne architcture d'impression sous Unix. Ses caractéristiques avancées le rende particulièrement intéressant pour ceux qui ne sont pas satisfaits des services d'impression actuels. CUPS est sous GNU General Public License, donc aucun problème légal ne se pose pour passer à cette nouvelle architecture.
Outre les fonctions traditionnelles, CUPS permet de changer la taille du papier et la résolution depuis la ligne de commande. Mais il y a mieux: des modules "terminaux" qui permettent la communication sur du matériel trsè divers, et une autentification de l'utilisateur en natif. Autre point appréciés des administrateurs de gros réseau: la possibilité de detecter et configurer automatiquement les imprimantes du réseau.
Pour le moment, le plus gros problème est que CUPS ne supporte pas l'interface imprimante générique lpd, donc les clients qui en dépendent auront des problèmes. Cependant, on y travaille.
Les plans pour les versions futures comprennent un traitement plus solide des tâches/utilisateurs et l'encryptage des transmissions.
Au cas où ces sujets seraient trop techniques pour vous, vous préférerez probablement le sujet suivant.
SADP
Comme les autres projets de ce mois, le "Sing Along Disc Player" (SADP)[9] ("Chantez avec le disque") est sous GPL GNU. SADP est un lecteur de CD avec des extras. Il a un analyseur de spectre et un oscillateur qui peut être redimensionné "au vol". Il a aussi un mixeur interne et toutes les autres options que l'on s'attend à trouver sur un bon lecteur de CD.
SADP a une base locale de CD et il peut accéder à des bases externes sur internet. Il supporte heureusement les protocoles CDDB, FreeDB et CD-INDEX; il peut donc accéder directement aux ressources existantes.
L'auteur a souligné combien il est important pour lui que SADP fonctionne correctement dans des environnements très différents. C'est pourquoi SADP peut utiliser internet ou une carte son, mais ne dépend pas d'eux. Il est également compact, stable et convivial. Les plus grands problèmes viennent de pilotes de CD trop "bavards" et de certains bogues dans XForms.
Cet octobre, SADP a reçu un prix de 4Front Technologies, donc vous ne perdrez pas votre temps en y jettant un oeil.
Voilà pour la partie pratique. J'aimerai maintenant aborder quelque chose que j'ai remarqué durant ma participation à Systems '99.
A propos de la GPL GNU
La Licence Générale Publique GNU (GPL) a été taxée de "virale" par ses opposants depuis un certain temps. Il me semble que ce terme dépréciatif a été accepté un peu trop facilement.
Dans ce contexte, on parle de la GPL comme "infectant" le code qu'elle concerne. L'analogie virale implique que la GPL se répand de manière incontrôlée et porte préjudice au grand public.
En parlant de préjudice, il faut peut-être considérer tout d'abord le préjudice de qui on parle. La GPL GNU accorde à chaque utilisateur le droit d'utiliser le programme, de le modifier et de distribuer soit l'original, soit la version modifiée. La seule limitation, c'est que personne ne peut retirer ce droit à quiconque. Donc ceux qui veulent retirer ce droit, subissent peut-être un préjudice.
Le contre-argument habituel est que la GPL GNU est incompatible avec les autres licences de logiciels libres comme la licence FreeBSD. C'est exact. Ce qui est plus important, c'est la source de cette incompatibilité. Chaque fois que deux partie de code sont réunie, il est important que leurs licences ne se contredisent pas.
Théoriquement, du code sous GPL GNU peut être mélangé à du code sous une autre licence. Dans la pratique, la protection spéciale des droits de l'utilisateur conférée par la GPL est tellement unique que la combinaison avec d'autre licences de logiciels libres devient problématique.
Nombreux sont ceux qui soutiennent que la license FreeBSD est "plus libre" que la GPL GNU. La discussion à laquelle cela mène est essentiellement celle de la base de la philosophie de l'état. Cette philosophie traite du paradoxe selon lequel pour arriver à donner la liberté et l'auto-détermination la plus grande possible, il faut ne pas accorder la liberté absolue à l'individu. Via la citoyenneté d'un certain pays, nous consentons à abandonner un certain nombre de libertés au bénéfice de la société. Par exemple, nous avons abandonné la liberté de tabasser quelqu'un parceque nous aimons son ou sa partenaire.
Dans les cas de limitation des droits de l'utilisateur, c'est presque toujours un "tout ou rien". Qui pèse le plus ? La liberté individuelle qui limite la liberté du reste de l'humanité, ou la protection de la liberté pour la majorité ? Il y a de nombreuses réponses à cette question; je pense qu'il faut suffisament de tolérance pour plus d'une seule réponse.
Finalement, l'incompatibilité mentionnnée découle de differentes vues philosophiques. Réagir à une autre opinion en termes injurieux à propos de la GPL GNU est - selon moi - erroné et intolérant. C'est la raison pour laquelle je vous demande de ne pas accepter le terme sans résistance.
Presque fini...
Je suppose que c'était assez indigeste pour ce mois, donc je postpose la deuxième partie de mes réflexions post-Systems '99 jusqu'au mois prochain. Quelques points à mentionner:
Tout d'abord j'ai revu le design de la page "GNU c'est nous" [4] et il devrait être moins gros et plus utilisable; j'espère que les connections plus lentes pourront également y accéder. Il y a aussi de nouveau motifs comme le PenGNUin de Ben Stickan - allez voir !
Des T-shirts "Brave GNU World" semblent susciter un certain intérêt et je pense que nous avons presque atteint la masse critique. J'ai commencé à songer au motif. Une idée, communiquée par courriel, présentait un gnou comme Atlas avec le monde sur ses épaules. Mes talents graphiques ne sont certes pas à la hauteur d'une telle image, mais je trouve que ce serait sympa. Si quelqu'un est intéressé... ?
Voilà pour ce mois-ci. Ne gardez pas vos idées, questions, commentaires et courriels à propos d'autres projets intéressants à l'adresse habituelle. [1].
Info |
[1] Envoyez vos questions, commentaires et idées à Brave GNU World <column@gnu.org>
|
Retour au Site GNU.
Envoyez vos questions sur GNU et FSF à gnu@gnu.org. Il y a aussi d'autres manières de contacter la FSF.
Envoyez vos commentaires sur "Brave GNU World" à column@gnu.org, et les commentaires sur cette page à webmasters@www.gnu.org, les autres questions à gnu@gnu.org.
Copyright (C) 1999 Georg C. F. Greve, Version allemande publiée dans Linux-Magazin
Permission vous est donnée de distribuer des copies exactes de cette page tant que cette note de permission et le copyright apparaissent clairement.
Remise à jour : $Date: 2002/02/13 17:52:13 $ $Author: r4f $ Traduction: Thunus F.