Nous sommes Charlie

Des solutions francophones pour la liberté de l'Internet ?

Par le Temps de lecture estimé : 35min 6 Commentaires

Quoi que vous ferez, ce sera insignifiant, mais il est très important que vous le fassiez.[Whatever you do will be insignificant, but it is very important that you do it.] - Mahatma Gandhi
Internet va mal. De nombreux projets existent pour essayer de le sauver, dont plusieurs libres. Isolés, ils n'y peuvent rien, mais ensemble, ils peuvent faire de grandes choses. Voici un état des lieux.

ODDNS, l'avenir des DNS ?


Un jour, je suis tombé sur le blog ingnu.fr, et je fus séduit par l'un de ses projets, ODDNS. Je l'ai donc interviewé pour l'Étudiant-Libre.
Avant de commencer, peux-tu te présenter ?
Je m'appelle Jimmy Rudolf, je suis un passionné autodidacte depuis l'âge de cinq ans (j'ai commencé sur Amstrad, et j'approche des trente ans). Mon parcours est classique pour un autodidacte qui ne rentre pas dans le moule (je n'ai pas un cursus scolaire classique justement !). Je suis Analyste Programmeur et Développeur NTIC de formation, et j'ai fais l'École Ouverte Francophone, uniquement des formations à distance.

Peux-tu présenter en quelques mots ton projet ? Existe-il un équivalent, libre ou propriétaire ?
Aucun équivalent à ODDNS n'existe à l'heure actuelle. On a entendu parlé de quelques projets visant à contourner la censure par DNS, mais rien qui approche le fonctionnement d'ODDNS, et aucun ne s'est concrétisé. ODDNS, c'est ce qui va nous permettre de nous réapproprier (nous, les Internautes) le système de noms de domaine (ndlr : par exemple "example.org"), et de ne plus craindre la censure par DNS.

Comment ça fonctionne ?
Un client contacte un serveur pour obtenir des informations sur un domaine, qui seront publiées par le mainteneur du serveur, et non pas par un registrar (ndlr : un bureau qui gère les enregistrements des domaine). Le client peut devenir son registrar pour le domaine en question, en fournissant à ses propres clients directement les informations qu'il a obtenues, ou en leur transmettant l'adresse du serveur qui les fournit. Il n'y a plus de registrar, plus d'ICANN (ndlr : la haute autorité qui gère tous les noms de domaines à l'échelle internationale).

Dans un second temps, si ODDNS est massivement adopté, il remplacera le protocole DNS (ndlr : les noms de domaines), et de facto, les serveurs DNS racines, ainsi que les serveurs DNS des fournisseurs d'accès à Internet. Mais dans un premier temps, ODDNS fonctionne en surcouche de DNS, en fabriquant des fichiers de configuration pour les serveurs DNS les plus répandus. Je travaille actuellement sur un wrapper (ndlr : patron de conception, qui sert à résoudre un problème de conception) pour le serveur BIND (ndlr : logiciel qui gère les noms de domaines) par exemple.

L'intérêt est de "délocaliser" les informations relatives aux noms de domaines, pour les placer au plus près de l'utilisateur : sur un serveur DNS de son réseau local.

Concrètement, le client ODDNS va par exemple chercher auprès de mon serveur ODDNS les informations relatives au domaine ingnu.fr. Le serveur ODDNS les lui envoit, et le client ODDNS fabrique un fichier de configuration pour le serveur BIND installé sur la même machine. Quand quelqu'un sur son réseau va chercher à contacter ingnu.fr, au lieu de passer successivement par un serveur racine, puis un serveur qui gère le .fr, avant aboutir enfin à mon propre serveur DNS, il contactera directement le serveur DNS local. Il n'y a plus d'intermédiaire.

C’est sous quelle(s) licence(s)?
GNU GPLv3.

Quels sont les technologies employées ?
100 % PHP pour le client/serveur. Un choix qui peut sembler étrange, mais qui s'explique : ODDNS peut tourner sur n'importe quelle plateforme capable d'utiliser du PHP, PHP offre toutes les bibliothèques dont j'ai besoin, le code est concis, simple et léger, bref, c'est un choix que j'ai estimé légitime.

Je rajoute cependant que puisque tout est ouvert, y compris le protocole, et que les messages transmis entre un client et un serveur ne font appel à aucune transformation par PHP, il est possible de rédiger des clients et des serveurs dans n'importe quel langage.

Enfin, développer l'ensemble en PHP me permet de me reposer sur les mêmes briques logicielles pour créer le client, le serveur, mais aussi des annuaires, des portails, des interfaces de gestion, etc..

Quels sont ses points forts et ses points faibles ?
Deux points faibles : la nécessité d'installer conjointement au client ODDNS un serveur DNS, et la nécessité d'informer le client des domaines à consulter.

Pour palier au premier point faible, le protocole d'ODDNS est ouvert, par conséquent, on peut l'étendre, et donc lui rajouter les fonctionnalités du protocole DNS pour supprimer la dépendance au serveur DNS.
Pour palier au second point faible, je compte sur la communauté pour créer des annuaires. Je mettrai à disposition des outils pour créer facilement un annuaire à partir d'une installation locale de ODDNS.

Les points forts consistent en sa capacité à supporter le chiffrement des connexions (via GNUPG) et un système d'hôtes de confiance (empêchant que quelqu'un écoute les messages entre le client et le serveur, en se substituant à l'un ou l'autre pour obtenir ou diffuser de mauvaises informations), sa rapidité d'exécution (cela étonnera les réfractaires au PHP en CLI (ndlr : interface en ligne de commande)  :) ), et sa simplicité de prise en main.

Il y a il un "business model" ? Une feuille de route ?
Pas de business model. ODDNS n'existe pas pour se faire de l'argent. ODDNS existe pour libérer les peuples, en attendant un nouvel Internet (http://ingnu.fr/2012/03/11/lavenir-dinternet/). ODDNS permet de rendre caduque la censure par DNS, il est hors de question de gagner de l'argent avec.

Par contre, les dons sont acceptés. Notez que la nuance consiste dans le choix, qui est une prérogative pour tous mes projets à venir. Laisser le choix et la liberté aux gens.

En ce qui concerne la roadmap, terminer le wrapper pour BIND, diffuser une première version du bundle (ndlr : du logiciel), et l'étendre ensuite avec d'autres fonctionnalités sympas dont je ne parlerai pas encore. J'attends de voir ce que la première version publique va donner avant de faire des plans.

Combien il y a ils de contributeurs autours ?
Pour le moment, je suis le seul développeur, et je suis accompagné d'un webdesigner qui a créé un second thème pour l'interface de gestion.

Comment est né le projet ?
Du printemps arabe, du DPI, de Amesys/Bull, de l'Hadopi, de la Chine, et surtout, de mon engagement pour 2012 à faire quelque chose, devenir quelqu'un. Je suis motivé par le Libre, Richard Stallman est mon mentor. ODDNS est né de l'idée que je me devais de suivre mes principes, pas que dans l'utilisation de l'informatique, mais aussi dans mes actes. Le premier acte, c'est ODDNS.

Comment a-t-il évolué ? Quels sont les faits marquants ? Quels problèmes avez-vous rencontrés ?
Ça fait deux semaines que je suis a temps plein sur le projet, et ça doit faire un mois que j'avais lancé l'idée. J'ai pris un coup de fouet lorsque j'ai appris que la radio Ici et Maintenant avait parlé de mon projet il y a 15 jours. Je n'ai pas rencontré de problème, au contraire. Tout "marche comme sur des roulettes" : j'ai trouvé un contributeur pour m'aider dans certains choix esthétiques et concevoir des éléments graphiques avec plus de talent que moi (qui n'en ai aucun !), les technologies dont j'ai besoin existent (notamment dans les librairies PEAR), et ce dont j'ai besoin et qui n'existe pas est relativement simple à coder. C'est maintenant que le projet est bien lancé que je vais rencontrer des difficultés : trouver des contributeurs et des mécènes notamment. Et bien sûr, je m'attends à ce que personne n'installe ODDNS de peur de modifier l'existant qui fonctionne.

Que faire pour contribuer au projet ?
Je réponds à cette question sur la nouvelle page du projet que je viens de mettre en ligne : http://oddns.ingnu.fr/fr/. En substance, j'ai besoin de traducteurs, de gens capables de coder les wrappers pour d'autres serveurs DNS, et de quelqu'un pour rédiger la documentation.

Quand sortira la première version publique ?
J'ai annoncé sur RIEM que j'espérais sortir une pré-version dans les deux semaines. Pour le moment, je pense tenir le délai. Ce ne sera pas exactement une version "grand public", mais ce sera une version fonctionnelle destinée à être testée en environnement réel.

Ingnu.

MOVIM, où comment quitter Facebook


En recherche d'un réseau social décentralisé, je suis tombé sur MOVIM, qui m'a séduit ! Je suis donc le projet de près.

Avant de commencer, peut-tu te présenter ?
Je te donne directement la page À propos de mon blog tu y trouvera tout ce qu'il faut à propos de moi :)
http://framabearn.tuxfamily.org/index.php?pages/%C3%80-propos-de-l-auteur
(ndlr : défenseur du modèle libre dans le monde de l'informatique mais plus généralement de la culture dans son ensemble. Je suis contre le système de brevets (ça c'est dit) qui, selon moi, empoisonne l'innovation. J'adore aussi m'amuser à détourner et optimiser tout ce que j'ai autour de moi […] . Je n'aime pas me sentir contraint par le matériel que j'achète et je n'apprécie pas les personnes ayant une attitude consumériste, au contraire je fais tout pour faire durer les objets que j'ai).
Peut tu présenter en quelques mots ton projet ? Existe-il un équivalent, libre ou propriétaire ?

Movim est un projet qui vise à la création d'un réseau social libre et décentralisé fondé sur le respect de ses utilisateurs et de leurs contacts. Pour quelques informations en plus, je t'invite à visiter la page "Qu'est ce que Movim" sur notre Wiki officiel ;)
http://wiki.movim.eu/fr:whoami .
Au niveau des équivalents, oui il y a plusieurs projets "similaires", mais nous sommes les seuls à utiliser à 100 % le protocole XMPP pour nos communications; nous n'avons aujourd'hui que Diaspora, un projet "open-source" américain qui pourrait s'approcher de notre concept, même si celui- (ndlr : phrase coupée dans le mail).

Comment ça fonctionne ?

Movim fait office d'intermédiaire entre le serveur XMPP et l'utilisateur, en proposant une interface simple et conviviale à travers le navigateur pour la gestion de son compte. Il se base sur un système de modules (appelés widgets) qui permettent de rendre l'interface totalement malléable, une API complète permet aussi aux développeurs en herbe de créer un nouveau module très facilement sans trop de connaissances en programmation.
Il se base sur Datajar, un projet lancé en paralèlle avec Movim, un ORM lui permettant alors de s'installer sur de multiples systèmes de bases de données (Mysql, Sqlite et MongoDB pour le moment, Postgresql est en cours de port). Movim manipule énormément de données (session, cache, messages, etc.).

C’est sous quelle(s) licence(s)?
http://movim.eu/, page d'accueil section "Libre !"
(NDLR : Movim est un projet entièrement libre sous licence AGPLv3 à l'exception d'un élément sous licence LGPLv3 et de la GNU FDL pour la documentation.)

Quels sont les technologies employées ?
Essentiellement du PHP, un peu de Javascript, XML, CSS et HTML5 :)

Quels sont ses points forts et ses points faibles ?
Points forts :
\n— XMPP est déjà beaucoup utilisé, donc vous avez déjà potentiellement des milliers de contacts avec qui discuter sans avoir à les inviter sur Movim.
\n— Technologies très courantes, installable facilement sur quasiment tout les serveurs Web récents
\n— Déjà fonctionnel et prometteur, de nombreux modules existant
\n— L'interface se rafraichit instantanément, flux compris, par un système de push du serveur
Points faible :
\n— Encore de très (trop ?) nombreuses choses à faire
\n— Des bugs persistants et gênants
\n— Une communauté un peu faiblarde, assez peu de retour, surtout en aide pour le développement.

Il y a il un "business model" ? Une feuille de route ?
Méthode Agile, ou plus communément appelée méthode La Rache, non je rigole, on pose une roadmap à peu près tout les 6 mois avec une version mineure à la clef. Les feuilles de route sont ici http://wiki.movim.eu/roadmaps. Quand on aura déterminé que la 0.x sera "sortable" on la passera en 1,0 puis on sortira une 1.x, etc.. Voir http://blog.movim.eu/la-numerotation-de-movim.

Combien il y a-t-il de contributeurs autour ?
2 développeurs "actifs" + une personne s'occupant de faire un peu de pub, gérer le salon, le wiki (c'est un boulot énorme).

Comment est né le projet ? Comment a-t-il évolué ? Quels sont les faits marquants ? Quels problèmes avez-vous rencontrés ?
Le projet s'est forgé petit à petit, d'un petit bout de code PHP fait à l'arrache pour afficher 2/3 informations sur moi. Il a été réécrit 2 ou 3 fois depuis. Puis, début 2010 nous avons fait un méga brainstorming qui résultera de l'architecture actuelle (qui, globalement, a assez peu changé). Etenil (l'autre contributeur) a rejoint le projet l'été 2010 et a énormément travaillé sur le coeur, j'ai de mon coté appris progressivement à programmer grâce à lui (et à mes cours en IUT).

Les problèmes se résument bien souvent en une simple phrase : XMPP et PHP ne vont pas ensemble, PHP est un langage de type asynchrone alors que XMPP fonctionne en synchrone. Notre librairie XMPP en PHP est complexe et nous avons encore de grosses difficultés pour maintenir une session stable entre l'utilisateur et le serveur XMPP en PHP.

Que faire pour contribuer au projet ? Quand sortira une version publique ?
Si vous souhaitez venir contribuer, commencez par nous contacter via la mailing list/le salon de discussion (tout est sur la page d'accueil).
Pour la version "grand public", c'est comme pour Debian, ça sortira quand ça sera prêt :p. En attendant, des versions mineures peuvent être testées, installées, et améliorés. Tout est libre ;).

Jaussoin Timothée aka edhelas

VroumVroumblog, la Ferrari de l'autoblog


Le problème de censure est de plus en plus présent. VroumVroumblog permet donc de faire des sites miroirs rapidement et automatiquement !

Avant de commencer, peut-tu te présenter ?
Je suis un ingénieur de 38 ans qui travaille dans l'informatique. Mon site (ndlr : sebsauvage.net) existe depuis 13 ans. C'est un site "perso", avec diverses rubriques (dont un blog). J'ai environ 20 000 visiteurs par jour (statistiques de mars 2012).
J'ai également été modérateur pendant une dizaine d'années sur Commentcamarche.net.

Comment est né le projet ?
Sur mon blog, j'avais critiqué les actions d'une société (Tuto4pc, ex-eoRezo) avant leur introduction en bourse. J'ai été menacé de procès et j'ai dû retirer mon article.
A cette époque le logiciel VroumVroumBlog est "apparu", publié par un anonyme. Ça tombait à point nommé.

De nombreux internautes ayant utilisé ce logiciel pour faire des miroirs de mon site, j'ai trouvé juste d'aider en retour en reprenant VroumVroumBlog pour continuer à le faire évoluer.

Le concept d'autoblog avait été émis par Mitsukarenai (le webmaster de fansub-streaming.eu) il y a longtemps, mais à l'époque je n'avais pas vraiment saisi l'intérêt de la chose. C'est devenu évident avec l'affaire qui m'a occupée.


Comment ça fonctionne ?
Le principe est très simple: Il lit le flux RSS (ou ATOM) d'un site, garde une copie des articles (avec les images) et les re-publie. Il y a une navigation simple par pagination et un petit moteur de recherche.
Cela fait en quelque sorte une copie automatisée d'un blog. Si le blog d'origine supprime un article, ou même si le blog disparaît en entier, les articles restent lisibles sur l'autoblog.

C'est un outils anti-censure, mais ça sert aussi comme copie de secours.

Existe-il un équivalent, libre ou propriétaire ?
Il me semble qu'il existe un plugin pour WordPress qui fait la même chose. J'ai préféré VroumVroumBlog car il est nettement plus simple à mettre en place que WordPress.


C’est sous quelle(s) licence(s)?
Il est dans le domaine public. On peut en faire ce qu'on veut, sans aucune restriction.
D'ailleurs BohwaZ l'a repris aussi et en a fait une version un peu différente (utilisant SQLite).


Quels sont les technologies employées ?
VVB est techniquement très simple: C'est un script php monolithique de seulement 400 lignes, sans dépendances. Il n'utilise aucune librairie javascript, aucune lib php externe, aucune base de données.

L'extrême dépouillement technologique est une volonté. Non seulement cela permet de le faire tourner chez un maximum d'hébergeurs différents, mais surtout cela simplifie l'installation: Il n'y a que 2 fichiers à copier pour mettre en place un autoblog (le script php et un fichier de configuration).

Il n'y a également aucune maintenance à effectuer. Une fois que c'est en place, on a plus à s'en occuper.

Cela abaisse la barrière d'entrée et permet donc d'inciter les webmasters (ou même les internautes avec un petit espace d'hébergement gratuit fourni par leur FAI) à participer à la lutte contre la censure avec un effort à fournir minimal (2 fichiers à envoyer par FTP).


Quels sont ses points forts et ses points faibles ?
Points forts:
\n— très simple à mettre en place.
\n— peu de dépendances.
\n— aucune maintenance nécessaire.

Points faibles:
\n— Ne peut s'alimenter qu'avec les flux RSS ou ATOM.
\n— Si le flux n'est pas complet (articles tronqués), les articles ne pourront pas être répliqués en intégralité.
\n— Ne supporte pas les flux qui sont en HTTPS.
\n— Les images dans les articles doivent être sur des domaines qui ne varient pas tout le temps.
\n— Ne marche pas chez les hébergeurs qui bloquent l'envoie de requêtes HTTP depuis PHP (typiquement : free.fr).


Il y a il un "business model" ?
Il n'y en a aucun.
Le seul but est de lutter contre la censure en répliquant tellement les articles qu'il devient impossible de les censurer tous.


Que faire pour contribuer au projet ? Quand sortira une version publique ?
VVB est déjà disponible.

Comme vous pouvez le remarquer, chaque autoblog possède en bas de page un lien donnant le fichier de configuration, la base des articles et le programme, ce qui permet à n'importe quel lecteur d'avoir immédiatement ce qu'il faut pour mettre en place un autoblog identique.

J'héberge sur mon site l'autoblog de 25 autres sites. Le fichier de configuration est disponible pour chacun d'entre eux. Mon propre blog est répliqué sur une trentaine d'autres sites.


Combien il y a ils de contributeurs autour ?
Je suis le seul à travailler dessus. Quelques internautes m'ont soumis des corrections.
Il n'y a pas vraiment de communauté soudée autour du projet, juste quelques bonnes volontés qui font des améliorations de leur côté (version de BohwaZ, fermes d'autoblog, etc.).


Que faire pour contribuer au projet ?
Les internautes peuvent m'envoyer des patches, ou reprendre le logiciel de leur côté pour en faire quelque chose de totalement différent.

Mais VVB est un projet avec une vision volontairement très restreinte et aux possibilités limitées. Ce n'est pas un mal en soit: Il remplit très bien sa mission. Mais maintenant il faut voir au delà.


Une feuille de route ?
Je ne pense pas continuer à faire évoluer VVB.

Je réfléchis à un successeur qui aurait quelques propriétés intéressantes qui manquent à VVB:
\n— possibilité pour les auteurs de continuer à publier même si leur site disparaît ou leur nom de domaine saisi (puisque c'est la mode actuellement). En fait, cela permettrait à quelqu'un sans site web de publier des articles et de les voir répliqués sur les autoblogs.
\n— possibilité de publication anonyme, mais permettant de s'assurer qu'un article a bien été écrit par un auteur précis (identité numérique anonyme).

J'ai beaucoup d'idées, mais il y a encore beaucoup de réflexion à apporter, beaucoup de problèmes à résoudre, et divers points techniques à explorer. C'est un projet à long terme (auquel je ne peux pas consacrer assez de temps pour le moment, d'ailleurs).


Soyons clair: VVB (ou ses successeurs) ne sont pas des armes anti-censure absolues. D'autres logiciels, comme Freenet, vont bien plus loin et gèrent des problèmes qui ne sont pas pris en compte par VVB (comme le DPI). Mais ils sont souvent lourds et difficiles à comprendre (Typiquement: Le principe des clés CHK/SSK/USK de Freenet n'est pas facile à comprendre).
Il y a donc une place pour un successeur de VVB.

Sebsauvage.

Comment rendre LiVID les censeurs


LiVID permet de faire des sites miroirs de The Pirate Bay.
Avant de commencer, peut-tu te présenter ?
je suis un blogueur, libriste (militant en faveur des logiciels libres), sympathisant du Parti Pirate et à ce titre militant en faveur d'une réforme du droit d'auteur à l'ère du numérique, je verse aussi de temps en temps dans le cyber-activisme quand ça touche à la liberté d'expression (effet Streisand, effet Flamby).

Peut tu présenter en quelques mots ton projet ? Existe-il un équivalent, libre ou propriétaire ?
LiVID / Magnetik est typiquement le genre de projets perso faits pour le fun tout en ayant un intérêt certain, prendre une problématique et y trouver des réponses. J'ignore si des projets similaires ont été faits précédemment, le code a beau être simple c'est quand même peu "grand public" et plutôt tourné vers les webmasters, donc moins connu.

Comment ça fonctionne ?
À l'origine, il y a eu ça: http://thepiratebay.se/torrent/7016365/ (fichier d'ailleurs exploité pour alimenter la version 1).
Alors j'ai voulu voir comment on pourrait utiliser ça pour faire une "copie" de The Pirate Bay. Le projet vise à retourner des informations pour un BitTorrent infohash spécifique : le nom, la taille, le nombre de seeders et de leechers au moment du contrôle, et la date de ce contrôle. La recherche d'un torrent par son nom étant laissée à un moteur de recherche externe, ou avec un moteur de recherche intégré dans la version 3. En gros, une version "light" d'une pléthore de sites qui existent déjà, comme BitSnoop.

C’est sous quelle(s) licence(s)?
Creative Commons by-sa 3,0. Oui je sais c'est pas super adapté aux logiciels, mais philosophiquement c'est plus proche d'une licence BSD que d'une licence GPL (je ne tiens donc pas rigueur si du code est repris sans paternité, je suis content si ça peut inspirer des développeurs en herbe).

Quels sont les technologies employées ?
PHP pour la version 1, PHP + SQLite3 pour les versions 2 et 3. Mais il ne doit pas être trop compliqué de faire un portage pour MySQL ou PostGreSQL :). À ceci près que c'est moins facile à sauvegarder, export de base oblige.

Quels sont ses points forts et ses points faibles ?
Mmmh..
Points forts: simple, portable, performant, code compréhensible (je pense ^^), conforme aux normes HTML5, libre, ça a été fun à faire et ça peut énerver les majors…
Points faibles: indéniablement artisanal, bidouilles et compagnie, méthodes d'ajouts et mises à jours contraignante, SQLite3 est peu souvent présent sur les hébergements mutualisés, centralisé, de nombreux sites déjà existants qui font la même chose…

Il y a il un "business model" ? Une feuille de route ?
Business model ? Feuille de route ? Tout dépend de ce que chacun veut en faire, mais pour ceux qui veulent voir disparaitre des sites comme The Pirate Bay, c'est une épine dans le pied. De mon côté, j'estime être parvenu à mes objectifs au moment du lancement du projet, j'ai appris pas mal de choses mais je ne ressens pas le besoin de replancher sur le projet, qui reste avant tout une démo technique :). J'offre donc le code "en pâture" à ceux qui veulent y apporter des évolutions (c'est ce qui est génial avec le logiciel libre: on peut faire des forks, adapter le code à ses besoins, etc.).

Combien il y a-t-il de contributeurs autour ?
L'uploadeur du torrent cité ci-dessus (allisfine), qui m'a donné l'idée en publiant son fichier d'archive de The Pirate Bay, et les contributeurs à la documentation de http://php.net/ (sans les exemples d'utilisation de fonctions PHP, je n'aurais pas pu avancer). Le projet, je l'ai fait en solo.

Comment est né le projet ? Comment a-t-il évolué ? Quels sont les faits marquants ? Quels problèmes avez-vous rencontrés ?
(répondu en 3e, oops).
Que faire pour contribuer au projet ? Quand sortira une version publique ?
Mais… il est public, le projet :D. Ceux qui veulent contribuer, c'est alors plutôt contribuer à l'idéologie plutôt qu'au code, vu que je ne ferai sans doute plus évoluer le projet :). J'invite donc tous ceux qui veulent s'amuser dessus à le faire et publier le résultat sur leurs blogs. Qui sait ? Peut être qu'un jour il faudra monter une fondation à la Mozilla au sein de laquelle tous ceux qui ont du code à partager peuvent le mettre en commun dans un truc hyper-puissant-qui-déchire-et-qui-emmerde-bien-les-censeurs, mais actuellement c'est vraiment pas l'objectif ^^. Et puis moralement, je suis bien plus favorable aux technologies décentralisées, donc je surveille de très près des projets prometteurs comme Tribler (logiciel P2P BitTorrent qui inclut un moteur de recherche décentralisé à la Exeem, je trouve ça super bien).

Mitsu'.

Vodstok, le freenet en PHP


En me baladant sur la grande toile, je suis tombé sur Vodstok, un projet bien sympathique de partage collaboratif !

Avant de commencer, peux-tu te présenter ?
Je m'appelle Damien Cauquil, plus connu sous le pseudonyme "Virtualabs", je fus un temps rédacteur dans la presse spécialisée, et actuellement consultant en sécurité informatique chez Sysdream. Je suis de nature curieuse, geek depuis tout petit :).

Peux-tu présenter en quelques mots ton projet ? Existe-il un équivalent, libre ou propriétaire ?

Je traîne ce projet depuis plusieurs années déjà, en réalité il était développé en grande partie mais le contexte ne se prêtait pas à sa diffusion. Pour faire simple, il s'agit d'un outil permettant de créer un réseau de partage basé sur des ressources peu chères et désormais accessibles à tous : les espaces de stockage et d'hébergement web. L'idée de ce projet, nommé "Vodstok", repose sur la mise à disposition volontaire d'une partie de l'espace de stockage d'un serveur par son propriétaire. L'ensemble de ces espaces de stockage constituent un gros support de stockage virtuel, et plus il y a de monde y participant, plus la capacité augmente, et plus le système sera fiable. L'idée fédératrice de ce système est de pouvoir combattre la censure, et promouvoir le libre échange.

Comment ça fonctionne ?
Le projet est constitué de deux parties. La première est diffusée sous forme de mini-site en PHP, très simple à installer et qui ne requiert pas de base de données, qui permet de mettre à disposition une partie d'un espace de stockage web. La seconde se présente sous forme de logiciel écrit en Python, qui se sert de cet espace de stockage et assure le chiffrement et la répartition sur les multiples espaces partagés. La partie lourde du projet repose dans le client, et non pas côté serveur.

Ce système permet d'uploader un contenu, d'obtenir un lien référençant ce contenu, que l'on peut communiquer à une autre personne, puis de télécharger le contenu à partir du lien. Un genre de MegaUpload communautaire en version beaucoup plus stable, car l'arrêt d'un ou de plusieurs serveurs ne peut pas empêcher le réseau de partage de fonctionner. Le système est basé sur une architecture décentralisée, donc aucun serveur crucial n'est présent, contrairement à Bittorrent (les trackers) ou à MegaUpload.


C’est sous quelle(s) licence(s)?
C'est prévu sous GPL, pour l'instant.


Quels sont les technologies employées ?
La partie serveur est développée en PHP, le client en Python. Pour le moment celui-ci n'est compatible qu'avec Linux, mais avec des efforts il devrait pouvoir être porté sous Windows :).

Quels sont ses points forts et ses points faibles ?
Les points forts de Vodstok:

\n— la décentralisation du stockage
\n— le chiffrement AES avec une clef aléatoire
\n— la stabilité du système

Les points faibles:

\n— Impossible de savoir ce que l'on stocke réellement sur l'espace de stockage partagé (c'est chiffré, mais cela peut aussi être considéré comme un point fort)

Il y a il un "business model" ? Une feuille de route ?
Pas de "business model", le tout est libre et librement améliorable/adaptable. J'ai rédigé une feuille de route, mais vu que je suis le seul développeur sur le projet, elle n'a pas été rendue publique.

Combien il y a-t-il de contributeurs autours ?
Je suis le développeur principal de ce projet, mais certains de mes amis et membres de la communauté HZV (ndlr : https://www.hackerzvoice.net/) m'aident dans mes tests et participent à la première version du réseau (Sorcier_FXK, Vorex, y0no, notamment).

Comment est né le projet ? Comment a-t-il évolué ? Quels sont les faits marquants ? Quels problèmes avez-vous rencontrés ?
Le projet est né il y a de cela plusieurs années, mais a repris du poil de la bête lors de la fermeture de MegaUpload. J'ai enfin pu trouver une utilité à celui-ci, et un contexte dans lequel sa publication serait favorable. Le code est en évolution constante, je travaille actuellement à la première version publique de celui-ci, utilisable par tous (et il y a encore du boulot). En ce qui concerne les problèmes, rien de bien bloquant, si ce ne sont les bugs habituels et la joie du déploiement d'applications écrites en Python.

Que faire pour contribuer au projet ? Quand sortira une version publique ?
Je vais très bientôt mettre le projet sur GitHub, dès lors n'importe qui pourra demander à y participer. Une version bêta publique est disponible sur http://virtualabs.fr/vodstok/, elle est fonctionnelle mais sujette à des modifications.

Virtualabs.

BeedBox, l'abeille qui fait du bruit !


C'est bien beau d'avoir de belles applications mais où les mettre ? Sur un serveur bien sûr ! Et c'est encore mieux s'il est auto-hébergé ! Et Beedbox nous propose justement de faire cela !

Avant de commencer, pouvez-vous vous présenter ?
billux : Romain Dessort de mon vrai nom, 22 ans. Brièvement, je suis administrateur système dans une SSLL depuis bientôt 2 ans, chose que j'adore faire. Depuis plusieurs années, je m'intéresse aux problèmes d'Internet d'aujourd'hui à un gros, le manque de plus en plus important de décentralisation des services et des données sur le réseau.
Sinon, sur mon temps libre (pas beaucoup ;-) ), j'aime bien faire de la randonnée, particulièrement en montagne.
Dudumomo: Pour ma part, Dudumomo, je travaille en finance/management mais je suis depuis bien longtemps un libriste. J'ai rejoins le projet apres m'être auto-hébergé pendant plus d'un an afin de participer a son developpement.
Pouvez-vous présenter en quelques mots le projet ? Existe-il un équivalent, libre ou propriétaire ?
billux : Le but de Beedbox est de rendre le moins complexe possible l'auto-hébergement de ses données et services (blog, mails, galeries photos, etc.) pour encourager les gens à s'auto-héberger. Beedbox sera une distribution GNU/Linux, que l'on pourra également proposer pré-installer sur du matériel basse consommation et compact (comme les classiques box des FAI, voir probablement plus !).
Dudumomo : Il existe différentes solutions d'hébergement simplifiées, je pense notamment aux différents panels libres comme ISPConfig, Webmin, etc., qui aident a configurer son système mais qui malheureusement se prêtent très mal à de l'auto-hébergement. Ces solutions-là sont encore bien trop compliquées et sont souvent des usines a gaz, inutile pour le particulier.
Du côté propriétaire, c'est le même constat.
billux : je rajouterai qu'il y a notamment un gros projet ayant le même but d'encourager l'auto-hébergement, FreedomBox. Globalement, on se rejoint énormement, même si FreedomBox s'étale pas mal en plus sur le chiffrement et l'anonymisation de ses données. (PEUT ETRE INDIQUER NOS DIFFERENCES DU COUP? je n'en vois pas tellement en fait…)
Comment ça fonctionne ?
billux : Le projet se décompose principalement en 3 grandes parties :
la moulinette
le server-manager
les paquets Debian spécifiques pour Beedbox
Le server-manager est une interface web qui permet à l'utilisateur de gérer simplement l'administration de Beedbox : configuration des paramètres de base du système, installation/désinstallation de modules, configuration simplifiée de ceux-ci. Le server-manager communique avec la moulinette, un ensemble de scripts Python, complètement indépendants du server-manager, qui se chargent de modifier le système en fonction des choix de l'utilisateur.
Chaque module Beedbox est en fait un paquet Debian contenant diverses données nécessaires à Beedbox (fichiers de configurations adaptés à Beedbox, règles iptables à ajouter, pages du module à ajouter au server-manager, etc.), et inclut en dépendance le paquet Debian « officiel ».
La modification de la configuration de chaque service par la moulinette est compliquée, étant donné que chaque fichier de conf a une syntaxe différente. On a donc opté pour un système de templates et de fichiers de valeurs : le template est en fait le fichier de configuration auquel les valeurs sont remplacées par des variables, et le fichier de valeurs contient la correspondance variable = valeur. Ce dernier fichier est donc facilement parsable et modifiable par un script Python (format .ini). Le fichier de configuration est ensuite généré par la fusion du template et du fichier de valeur.
C’est sous quelle(s) licence(s)?
Dudumomo : Le projet et ses publications sont sous licence libre GPLv3.
Quelles sont les technologies employées ?
Debian GNU/Linux dans sa version stable est utilisé comme base pour Beedbox. Plusieurs services nécessaires sont installés de base, notamment le serveur web Lighttpd, OpenLDAP pour gérer les comptes utilisateur, un résolveur DNS, etc..
Au niveau de la moulinette et du server-manager, nous utilisons le langage Python, en suivant le modèle de développement MVC (http://fr.wikipedia.org/wiki/Mod%C3%A8le-Vue-Contr%C3%B4leur). Javascript sera également beaucoup utilisé pour la partie web.
Quels sont ses points forts et ses points faibles ?
Dudumomo : Le projet est encore tout jeune et la simplification nécessaire pour que le projet réussisse n'est…pas simple.
Ses points forts sont cependant une grande transparence des actions et décisions, une forte implication de chacun des membres, des idées simples, et un objectif clair.
Ses points faibles sont principalement liées à sa jeunesse et à son manque de maturité. Prenons-nous les bonnes décisions de développement ? Développons-nous correctement ?
De plus, le projet étant communautaire, chacun participe selon ses disponibilités et il arrive parfois que nous ne pouvons passer autant de temps qu'il le faudrait pour faire avancer le projet et respecter nos délais.
Il y a il un « business model » ? Une feuille de route ?
Dudumomo : Concernant un « business model », aucun, mais je dirais que nous avons plutot un « community model » (Le projet n'a évidemment aucun but lucratif).
Nous avons mis en place une feuille de route accessible sur notre redmine http://dev.beedbox.org/projects/beedbox/roadmap et tâchons d'effectuer les taches à faire dans les délais établis.
Combien il y a-t-il de contributeurs autours ?
billux : Nous sommes un noyau dur de 3 personnes : Dudumomo, responsable de tout ce qui touche à la communication et l'internationalisation du projet, Alouette qui s'occupe principalement du développement Python, et moi, qui gère la partie sysadmin et un peu le développement.
D'autres contributeurs occasionnels ou un peu plus réguliers participent au projet suivant leurs possibilités.
Comment est né le projet ? Comment a-t-il évolué ? Quels sont les faits marquants ? Quels problèmes avez-vous rencontrés ?
Notre article wikipedia (http://fr.wikipedia.org/wiki/BeedBox) résume bien les débuts de notre projet:
Suite a la conférence "Internet libre ou Minitel 2,0" de Benjamin Bayart en 2007, bon nombre de personnes ont ouvert les yeux sur l’orientation que prenait internet ainsi que les libertés individuelles, principalement en raison de la centralisation de nos données, détenus bien souvent par des sociétés commerciales. Plusieurs projets ont donc fleuri pour redonner aux utilisateurs le contrôle de leurs données via la promotion de l’auto-hébergement.
BeedBox est né de la fusion de deux projets, "Beelive" du site Generation-Linux et "Machinbox". Le but principal de cette fusion était de mutualiser les travaux entrepris, de relancer les deux projets initiaux en sommeil et d'être soutenu par une plus grande communauté, toujours en pleine croissance.
Concernant notre évolution, le projet monte petit a petit en puissance grâce à ses participants et avons mis en place des réunions régulières sur notre salon Jabber (http://www.beedbox.org/communication) afin de garder une certaine dynamique.
Afin de rendre le projet durable, nous avons créé une association loi 1901 pour s'occuper de la représentation et du financement du projet.
Nous rencontrons évidemment des problèmes notamment sur l'aspect développement (technologies employées, etc.), mais également sur l'ouverture du projet (communauté dynamique et ouverture internationale).
Que faire pour contribuer au projet ? Quand sortira une version publique ?
Il y a différentes façons de contribuer au projet, que ce soit techniquement, humainement, mais également financierèment (dons).
Cependant, nous sommes activement à la recherche de contributeurs sur plusieurs points:
1) Développeurs Python et Javascript;
2) Designers pour revoir nos principaux outils ainsi que l'interface web de Beedbox;
3) Rédacteurs de la documentation, communication et internationalisation de notre projet;
4) Ainsi que des "Promoteurs", des personnes et sites comme le tien, l'Étudiant-Libre, qui relaient notre appel à contribution.
Pour plus d'information sur les contributions possibles, je vous invite a lire notre page : Comment contribuer ? http://www.beedbox.org/comment-contribuer.


Voilà donc un joli tour d'horizon de projets francophones. Espérons qu'ils puissent continuer à s'améliorer et être utilisés par un grand nombre de personnes ! Car le plus important, par ses projets, ce n'est pas seulement l'outil, mais aussi la volonté de changer le monde !
Qwerty

Cet article a été gracieusement corrigé par Scout123.
Gravatar @Silversthem
Très très bon article mais un peu trop long, pour un article ça fait beaucoup
Gravatar @H3
Impressionnant tout ces projets… Les mecs sont bons, très bons…
Gravatar @Baronsed
Problème dans le lien vers scout123.net : un "t" en trop dans http://
Gravatar @qwerty
Merci Baronsed ;) !
Gravatar @buzut
moi je ne trouve absolument pas que ça fasse long ! Je connaissais déjà le projet, je traine pas mal sur le blog d'ingnu. Un type très bien, avec des idées et qui les mets à exécution ! Chapeau bas. Je souhaite à son projet une grande réussite (autant pour lui que pour le net, donc pour nous tous).

Très bon article soit dit en passant
Gravatar @scout123
Si, si, c'est très long, vous ne l'avez pas corrigé, cet article, vous ;).
Le site fait de la modération a priori : votre commentaire apparaîtra après validation.