Parcourir le sommaire de "Hackers vaillants" ainsi que tout le livre.
Se jeter dans une nouvelle activité, une nouvelle passion, ça peut sans doute se faire du jour au lendemain. Mais ce n’est qu’avec le temps que les choses prennent vraiment une forme aboutie.
Au début, on débarque dans le milieu de l’informatique libre, chargé de tout son bagage, avec son lot d’ambitions ou de fantasmes, mais aussi de détermination et de convictions politiques. Ça crée dès le départ une orientation spécifique, d’ailleurs pas toujours facile à conjuguer avec les habitudes du milieu.
L’apprentissage technique se fait progressivement, au fil des occasions, des rencontres, mais aussi des bonnes raisons ou des nécessités, qui parfois donnent la force nécessaire à un travail fastidieux.
Exemple : les logiciels de mon serveur enregistrent les adresses IP des visiteurs. Ils font ça comme ça, par défaut. Je ne veux pas ça, je voudrais bien les protéger un minimum, les utilisateurs ; et ça tombe bien, tout ça peut se configurer. Comment ? C’est là que débutent la lecture des tutoriels, des manuels et, si nécessaire, quelques échanges avec des « qui maîtrisent le machin », sur des forums dédiés. Alors la maîtrise s’affine, à coup de tentatives et d’erreurs, ou de découvertes parfois dues au hasard. Et souvent, quand on croit être au bout, on découvre une nouvelle lacune : alors c’est rebelote. Et c’est ça pour un paquet de logiciels !
Puis à un moment, on tombe sur d’autres limites que celles de la configuration : celles de la conception. Tel programme est chouette et bien fichu, mais il ne propose pas d’option pour modifier un paramètre qui m’intéresse. Aïe. Comment on transforme un logiciel libre ? A priori c’est simple, la réponse est dans la question : c’est libre. Il suffit d’aller voir le code et de le modifier. Le reprogrammer, quoi. Oui, mais le code, il faut le comprendre. Encore une technique à découvrir : c’est reparti pour la consultation de quelques bouquins, de quelques forums, et de quelques amis. On avance, on avance. En lisant d’autres programmes, plus simples, on comprend le fonctionnement de base. Parfois on découvre même des erreurs, ou des raccourcis dangereux, dans le code écrit par d’autres. À un moment, on se sent de modifier tout ça, pour voir. Et puis ça marche – ou pas. Ou de travers. Ou alors ça marche mieux à un endroit, mais ça crée des problèmes ailleurs.
Longue marche, joies du marathon. Des heures devant l’écran, obsédé par ce bug qui revient sans cesse, qu’on réussira enfin à débusquer à sept heures du mat’, tremblant de café et d’obstination. Bon an mal an, on avance encore. Le regard s’affine, les réflexes se développent. Et puis on finit par s’attaquer au logiciel du début, celui qui a fait qu’on s’est plongé dans tout ça. On tente une modif, qui marche du premier coup – ben ouais, les heures passées sur des travaux parallèles ne se sont pas perdues.
« Bon cette fois, j’ai ma config, j’ai créé les options dont j’avais besoin, tout fonctionne, je l’ai vérifié plusieurs fois »… Allez, on publie ! Indymedia n’a qu’à bien se tenir, voilà la nouvelle version, adaptée spécialement par mes soins pour les besoins de la maison. Les IP en mémoire dans des coins obscurs, c’est fini ! Fini les informations identifiantes enregistrées par habitude, alors que dans ce cas, on n’en a pas besoin. Et puis les copains ont jeté un œil sur le truc, ils l’ont relu, testé, ils me disent que ça a l’air très bien. Je souffle.
Cela dit, en bossant sur ce machin, j’ai remarqué au passage quelques problèmes de conception dans un autre. Et puis y’a un autre pote, et puis un autre, qui font de la programmation depuis longtemps, ou qui ont commencé avec moi, qui me proposent de participer à leurs travaux du moment. Je pourrais m’y atteler, ça me dit bien. J’apprendrais sans doute encore quelques méthodes, quelques éléments de langage de programmation ?
Nous voilà bientôt avec une demi-douzaine de logiciels « patchés » par nos soins. Quelques modifs mineures, d’autres plus importantes, des corrections de bugs ou de failles. On peut les publier. Et puis, en modifier, en publier d’autres. De fil en aiguille, on reprend la maintenance de logiciels existants, on participe à des logiciels libres, on en écrit quelques autres depuis zéro. Mais ça reste souvent des outils qui servent à faire fonctionner d’autres outils (par exemple des serveurs autonomes), plutôt que des réponses à nos besoins immédiats.
Mais encore une fois, les choses avancent. Plus le temps passe, plus ce qu’on fait se rapproche de nos besoins réels… L’implication dans un système d’exploitation comme Tails peut sans doute être vue comme l’apogée de cette évolution. Ici on ne parle plus d’un logiciel, ou de quelques logiciels, mais d’un système d’exploitation complet – évidemment pas écrit depuis zéro, c’est pas pour rien que d’autres ont créé des bases pour ça. Mais là, en s’appuyant sur un noyau Debian, en mettant en place les configs qui vont bien, en ajoutant ou modifiant les logiciels qu’on estime nécessaires, en écrivant parfois ceux qui manquent… ben on a le sentiment d’avoir donné naissance à un outil complet et solide, dont on a suivi la création d’un bout à l’autre – et qui correspond pile poil à ce que nos obsessions en matière de sécurité informatique ont produit comme exigences.
Tails est « un système Live dont le but est de préserver votre vie privée et votre anonymat. Il vous permet de : utiliser Internet de manière anonyme (presque) partout et avec n’importe quel ordinateur […] ; ne pas laisser de traces sur l’ordinateur que vous utilisez, sauf si vous le demandez explicitement [1] ». Basé sur Debian GNU/Linux et le système d’anonymisation Tor, ce système est apparu publiquement en août 2009, sous le nom d’amnesia. Quelques mois plus tard, suite à des échanges avec le développeur d’un autre système à la vocation similaire (Incognito), nous décidons de fusionner les deux projets : Amnesia et Incognito donnent naissance à Tails, « The Amnesiac Incognito Live System ».
De diffusion modeste au départ, il n’a cessé, depuis, de croître en popularité : aujourd’hui, non seulement Tails est utilisé par des tas de camarades, bien au-delà de l’hexagone, mais il est tout simplement devenu la référence dans son domaine.
Chaque jour, des centaines de milliers de personnes se connectent à Internet via le système d’anonymisation Tor ; avec ces centaines de milliers de personnes inconnues, nous partageons manifestement le besoin d’accéder à Internet plus discrètement.
Chaque jour, des milliers de personnes [2], à travers le monde, utilisent Tails (et donc Tor) ; avec ces milliers de personnes inconnues, nous partageons manifestement, en plus du besoin d’anonymat, le besoin d’utiliser des ordinateurs de façon sûre et discrète.
Les besoins et les outils se sont trouvés, semble-t-il, et c’est heureux ! Mais je vous raconte pas ce que ça demande comme boulot de maintenance… Une fois qu’on y a mis le doigt, on se sent responsable de pas mal de choses. Ne serait-ce que parce que des failles sont découvertes régulièrement dans les logiciels intégrés au système (comme ça arrive dans tous les logiciels – sauf qu’avec les logiciels libres, elles sont rendues publiques pour que la « communauté » puisse les réparer rapidement). À nouveau trou de sécu, nouvelle version du logiciel : adaptations nécessaires de Tails qui devra intégrer les correctifs. Et puis ça ou là, la correction d’un petit bug qui traîne depuis trois versions, pas grave, mais un peu chiant, les « users » s’en plaignent. Et puis l’ajout d’une nouvelle fonctionnalité, qui semblait nécessaire depuis longtemps. Et des séances de travail collectif, des échanges plus ou moins heureux avec la communauté du libre… et le reste des projets de développement qui se poursuivent au fil des semaines.
Tout ça pris dans les turpitudes des collectifs de geeks, des collectifs de vie des un.e.s et des autres, des questionnements sur la spécialisation, sur responsabilités diverses… Bref, comme partout ailleurs, des joies du collectif.
{}
{}
{}
{}
Bloc note
Une idée pour les dix ans à venir :
inviter des camarades en lutte à se former au graphisme, à la programmation, à la traduction, à l’administration de serveurs, pour participer au développement de ce genre de système ; inviter les programmeurs intéressés par la question à faire la démarche symétrique, il semblerait que ça bouge dans le milieu. Et peut-être, un jour, pouvoir quitter nos écrans en toute confiance pendant plus d’une semaine…
[1] Source : site web de Tails, https://tails.boum.org/
[2] Au cours du mois de janvier 2013, toutes les 27 secondes un système Tails était démarré et connecté à Internet quelque part dans le monde – les usages hors-connexion ne sont pas comptabilisés (source : Rapport de Tails pour janvier 2013, https:// tails.boum.org/news/report_2013_01/). En août de la même année, ce chiffre atteignait une connexion toutes 14 secondes, soit un doublement des connexions en six mois...
Il y a deux grandes familles de logiciels : les logiciels « libres », et les logiciels « propriétaires ». Laissons au Guide d’autodéfense numérique (tome 1, 2ème édition) le soin de nous initier à ces deux mondes : Pour comprendre la différence entre ces (...)