La Brique Internet - associaLibre 2021

La Brique Internet

Œuvrer pour un numérique plus respectueux de l’humain, c’est aussi se poser la question de notre dépendance aux grandes plateformes qui hébergent les services que nous utilisons. Alors qu’on fait parfois un potager pour cultiver ses propres légumes, est-il possible de s’approprier l’hébergement de nos outils en-ligne (mails, cloud,…) ?

En parlant du projet « La Brique Internet » et de ce que nous faisons chez Neutrinet, cette présentation donnera quelques pistes pour ajouter sa brique à l’édifice de l’internet.

Texte de la présentation de Célo lors des journées AssociaLibre 2021 par Célo.
Slides (PDF) : Associalibre.pdf (2.0 MB)

Intro

Dans la description de cette présentation…, je fais le paralèlle avec le fait de cultiver ses légumes et d’ajouter sa brique à l’édifice de l’internet.

Vous connaissez sans doute de personnes qui cultivent un potager dans leur jardin pour avoir leurs propres légumes ou salades… Vous connaissez sans doute aussi des personnes qui ne cultivent pas elles-mêmes mais qui s’efforcent de manger local.

Dans le domaine de l’alimentation, c’est une démarche qui est assez fréquente et qui ne pose pas spécialement question. Dans le domaine du numérique, pourtant, c’est beaucoup moins évident. On ne comprend pas toujours comment se configure l’infrastructure sur laquelle se déploient les services que nous utilisons au quotidien…

Et on ne sait pas toujours qu’il est possible de les remplacer par des outils plus éthiques, en recherchant des solutions plus locales.

Durant les journées AssociaLibre, Agnez a présenté Nextcloud et Nubo.

  • Nextcloud est une solution cloud qui peut être hébergée par quiconque a les compétences pour le faire.
  • Nubo s’organise en coopérative pour permettre au plus grand nombre de disposer d’outils libres, éthiques et respectueux de leur vie privée, en bénéficiant d’une boite mail et d’un espace cloud hébergé par un collectif de confiance.

A côté d’une solution comme Nubo, le projet « La Brique Internet » vous propose d’empoigner pelle et rateau pour cultiver votre potager d’internet et héberger vos propres services et vos propres données.

C’est ce qu’on appelle dans le jargon : l’auto-hébergement.

Au-delà d’une démarche qui permet de se réapproprier ses données en assurant leur stockage chez soi (plutôt que sur les serveurs d’une enterprises aux conditions d’utilisation quasi incompréhensibles), c’est une vision de l’internet où chacun va apporter sa pierre, apporter sa « brique », au lieu de dépendre des mêmes grandes plateformes. Auto-héberger ses données, c’est en effet aussi se réapproprier un certain savoir-faire : on ne fait pas qu’être en possession physique de ses données, on est aussi son propre jardinier ! :sunflower:

Apporter sa « brique » à l’internet ?

Différentes typologies de réseaux

Lorsque j’ai commencé à me questionner sur les enjeux liés à mes données personnelles et à m’intéresser à l’auto-hébergement, c’est un schéma de Paul Baran qui m’a mieux fait comprendre les problèmes que posaient les plateformes des GAFAM que j’utilisais au quotidien.

Dans un article déjà « ancien », écrit en 1962 et intitulé « On Distributed Communication Network », Paul Baran, plaide pour un réseau de communication qui ne soit pas centralisé, ni même décentralisé, mais distribué.

upload_0fc7a2653ac87bbac33987fecc551d46

Source : Politique des micro-décisions - Chapitre 2. Un flux lisse : Packet Switching et l’instantanéité de la transmission - Éditions de la Maison des sciences de l’homme

On constate aisément la différence entre les trois figures.

  • Dans le cas d’un réseau centralisé, on a un centre vers lequel convergent toutes les communications. Si une machine située en périphérie veut communiquer avec sa voisine, elle doit passer par cet opérateur central.
  • Dans la seconde figure, cet opérateur central n’existe plus mais on voit que certains noeuds du réseau sont des points de passages obligés de l’information. Il est nécessaire d’être en relation avec un de ces petits centres pour joindre d’autres parties du réseau.
  • Enfin, dans un réseau distribué, aucun noeud ne joue le rôle de point de passage central et tous ont la même importance.

Un réseau distribué échappe au contrôle national d’un Etat et se présente immédiatement comme une infrastructure internationale. C’est aussi un réseau qui va être difficile (voire impossible) à contrôler, et en particulier à monnayer, puisque l’accès au réseau ne passe pas par des points de transit obligatoires mais que les informations peuvent se propager en prenant différents chemins sur le réseau.

L’internet des grandes plateformes

L’internet d’aujourd’hui ne prend pas une forme centralisée. Toutes les connexions échangées n’ont pas l’obligation de passer par le même point de passage central.

Mais, bien qu’international, le réseau internet est loin de s’apparenter à un réseau distribué comme l’imaginait Paul Baran.

Nous avons plutôt quelque chose de l’ordre de la figure B de Paul Baran.

SAUF QUE

Ca ressemble très souvent à ça :

Les communications sur le réseau ne passent pas par un noeud unique, mais certains noeuds prennent beaucoup d’importance et deviennent centraux… Il s’agit de grandes plateformes, qui proposent différents services, aux mains desquelles se concentrent une grande partie de nos usages quotidiens.

Dans le cas d’un réseau centralisé, comme nous l’avons dit, si une entité périphérique veut communiquer avec une autre entité périphérique, on passe par le centre. Ici, lorsqu’on écrit à son meilleur ami ou sa meilleure amie qui vit dans le même ville européenne… on passe souvent par des serveurs qui sont situés de l’autre côté de l’Atlantique…

Evidemment, ce n’est ni rationnel ni écolo… mais c’est à ça qu’on est arrivé !

Ce schéma, je l’ai emprunté à Aleks, avec quelques modifications. Aleks est un des principaux contributeurs de la Brique Internet et du logiciel qui va être utilisé sur la brique : Yunohost. Dans sa présentation, ce schéma apparaît dans une partie de diaporama qu’il intitule « Stratégie pour changer le monde ».

Des briques pour un internet décentralisé

Avec la brique internet (et avec Yunohost, qui peut aussi s’installer sur d’autres matériels comme un vieux PC), l’idée c’est de donner au plus grand nombre les moyens de disposer de son propre serveur et d’héberger ses propres services… chez elle ou chez lui.

Si je reprends encore un schéma d’Aleks, un peu modifié pour cette présentation centrée spécifiquement sur la « Brique Internet », on a alors quelque chose qui ressemble à ça :

Ce faisant, on se passe de certains services en ligne hébergés par des grandes plateformes comme Google, Microsoft ou Facebook… en hébergeant des équivalents sur son propre serveur : la brique internet.

Avec une brique internet, qui n’est pas un matériel des plus performants, l’idée n’est pas de se passer d’un coup de tous les services privateurs qu’on utilise.

On peut néanmoins commencer à remplacer progressivement :

  • sa boîte Gmail ou Microsoft personnelle par une boîte mail auto-hébergée.
  • son cloud OneDrive ou sa Dropbox par un Nextcloud.
  • ses messageries WhatsApp ou Facebook par une messagerie XMPP.
  • Eventuellement héberger son site web, ses galeries photos

… tout cela accessible par un nom de domaine que vous choisirez (votrenom.be, par exemple, mais ça peut être ce que vous voulez).

… Et avec vos données et vos services sur votre brique, chez vous.

Ce sont des exemples, et il n’y a pas d’impératif de tout faire d’un coup. On peut commencer par tester, par diriger d’abord vers la brique une petite partie de son courrier, héberger un site web, etc…

Sur une brique, les performances de certains services seront aussi moindres. Par exemple, la synchonisation de vos fichiers entre différents appareils via Nextcloud s’effectuera correctement, mais il faudra de la patience pour manipuler l’interface web du logiciel, qui mettra du temps à charger. Ca ne conviendra donc pas forcément à tous les usages.

La brique, c’est quoi ?

Jusqu’à maintenant, j’ai plutôt présenté quelques éléments de contexte. Je vais entrer maintenant dans les aspects plus « techniques » et expliquer ce qu’est une brique internet, en quoi ça consiste et comment ça s’utilise.

J’évoquerai aussi la partie réseau, puisque pour avoir votre brique, vous aurez aussi en principe besoin d’un VPN, qu’une association comme Neutrinet (ici en Belgique) pourra vous fournir.

Côté hardware

Côté hardware, la brique internet est un mini-pc, avec une alimentation, une connectique (USB, HDMI), et un port ethernet. Par ce dernier, la brique va être reliée à la box / au modem de votre fournisseur internet.

Il se présente sous la forme d’une petite carte mère, qui a plus ou moins la même taille que celle d’un Raspberry Pi (pour celles et ceux qui connaissent), mais qui est produite par Olimex.

Le choix d’Olimex plutôt que Raspberry Pi est lié au fait les cartes Olimex sont entièrement produites en utilisant du hardware open-source.

Comme je l’ai mentionné, ce mini PC n’est pas très performant.

Dotées d’un processeur ARM dual core, les deux cartes Olimex utilisées, Lime 1 et Lime2, ont respectivment 512 Mo et 1 Go de Ram. En termes de mémoire, c’est moins qu’un smartphone vendu actuellement.

En raison de cette faible mémoire, mais aussi du type de processeur utilisé, il ne sera ainsi pas possible d’installer et de faire fonctionner n’importe quel service.

Mais l’idée derrière La Brique Internet, c’est aussi d’avoir quelque chose qui consomme peu et qui peut convenir à toutes les bourses… Disposer d’un serveur, c’est en effet laisser une machine allumée et connectée en permanence… sinon, il ne pourra pas faire son travail.

La consommation des cartes Olimex est de 2W, ce qui est moins que ce que consomme le modem / la box de votre fournisseur. Le projet « La Brique Internet » propose donc un serveur minimal dont le coût en électricité ne vous ruinera pas.

C’est un choix qui se fait au détriment de certaines performances… mais ce peut également être conçu comme une invitation à réfléchir à ce dont nous avons réellement besoin et à réduire un peu notre empreinte écologique.

Coté réseau

Un VPN

J’ai dit que la brique allait être connectée, par câble, directement à une box internet.

Cependant si c’est votre fournisseur d’accès internet (comme Proxmius, Edpnet ou VOO) qui fournit une connexion à la brique, celle-ci va rencontrer certaines limitations.

  • D’abord, les ports http et https (à comprendre comme des portes d’accès pour des requêtes de ce type, donc celles qui permettent l’accès à vos services web depuis un navigateur comme Firefox), utilisés pour accéder à votre serveur via un navigateur web, seront bloqués par défaut sur votre modem/box. … Il est possible de les débloquer, mais cela va nécessiter certaines manipulations un peu techniques sur votre box internet pour que vos services web soient accessibles de l’extérieur de votre réseau (donc pour que vous puissiez y accéder depuis votre lieu de travail par exemple).

  • Ensuite, les fournisseurs d’accès internet vont souvent bloquer le port d’envoi des mails. Si cette mesure est prise dans le but d’éviter le spams, en empêchant tout un chacun d’installer facilement un serveur mail à des fins potentiellement malveillantes, il rend plus complexe une démarche légitime d’auto-hébergement.

  • Enfin, l’adresse qui sera attribuée à votre serveur changera au cours du temps. Ceci compliquera l’accès à votre serveur de l’extérieur et posera également problème pour vos mails. En effet, même si vous parvenez à convaincre votre fournisseur de vous laisser envoyer des mails, le fait que votre nom de domaine ne soit pas toujours lié à la même adresse apparaîtra comme suspect.

C’est que là que Neutrinet, ou une association similaire, entre en jeu.

Pour contourner ces limitations imposées par votre fournisseur d’accès, Neutrinet va vous permettre de disposer d’un VPN. Celui-ci qui va créer un tunnel chiffré entre votre brique et l’infrastructure serveur de Neutrinet, sans que votre fournisseur d’accès internet habituel ne puisse s’interposer. Bien que votre brique soit toujours physiquement connectée à votre modem (Proximus, VOO, Edpnet…), c’est Neutrinet qui se substituera à votre fournisseur d’un point de vue logiciel.

Sans rien modifier sur votre modem / box, votre brique pourra ainsi être accessible de l’extérieur, pourra envoyer des mails et se verra attribuer une « IP fixe ».

Cette présentation n’a pas pour but d’être une formation technique, je n’entrerai donc pas dans les détails du fonctionnement du VPN et du protocole TCP-IP. Voici néanmoins quelques éléments de compréhension pour celles et ceux pour qui ces concepts sont nouveaux et pour qui « ipfixe » sonne surtout comme un nom de gaulois dans les aventures d’Astérix :

Toutes les machines communiquent entre elles grâce à des adresses IP - elles sont un peu l’équivalent des numéros de téléphone.

Il existe deux formats d’adresses, qui correspondent à deux protocoles différents : l’IPv4 et l’IPv6.

Voici à quoi ressemblent ces adresses pour la machine sur laquelle est hébergé le site web de Neutrinet :

  • 80.67.181.21 (IPv4)
  • 2001:913:1000:11::10 (IPv6)

Lorsque vous cherchez à joindre le site « neutrinet.be », c’est l’une de ces adresses que votre machine cherchera à contacter. Pour la connaître, votre ordinateur fait préalablement une requête auprès d’un système d’annuaire (dans le jargon, ça s’appelle une requête « DNS »).

Si votre serveur dispose d’une adresse IP qui varie dans le temps, il devra donc en premier lieu renseigner l’annuaire pour l’avertir qu’il a changé d’adresse, afin que ce dernier puisse renseigner correctement les futures requêtes… et que vous - ou quelqu’un d’autre - qui souhaite accéder à « votrenom.be », parvienne à bon port.

Ce processus peut être automatisé (via un système qu’on appelle DynDNS pour Dynamic DNS) mais requiert des configurations supplémentaires sur votre serveur ou sur votre box / modem.

En fournissant une adresse IP « fixe » à la brique, le VPN vous évite cette configuration supplémentaire tout comme il vous évite des manipulations sur votre box / modem pour rendre votre serveur accessible de l’extérieur. Il permet donc à votre serveur d’être d’une certaine manière « plug and play » : celui-ci fonctionnera dès qu’il est branché, quels que soient le lieu ou le réseau local sur lequel vous le brancherez.

Ceci rend les choses plus facile chez vous (en cas de changement de fournisseur, de déménagement), mais cela vous permet aussi de brancher votre serveur ailleurs en cas de besoin (chez un·e ami·e, un·e voisin·e, à l’étranger…) sans rien avoir à configurer, par exemple si votre modem / box tombe en panne et que vous souhaitez néanmoins continuer à recevoir vos mails et à accéder à votre cloud, ou si vous partez à l’étranger pour une période prolongée…

Enfin, comme mentionné précédemment, c’est nécessaire si vous souhaitez utiliser votre serveur pour héberger vos mails puisque pour des raisons de sécurité et éviter le spam, les fournisseurs mails de vos destinataires vont vérifier que l’adresse IP qui envoie votre mail est bien liée à votre nom de domaine.

Ce processus, inverse de celui où votre ordinateur fait une requête auprès d’un annuaire pour connaître l’adresse IP associée à un nom de domaine (le DNS), implique de faire une requête sur l’adresse IP d’une machine pour savoir quel est son domaine. (On l’appelle « reverse DNS » ou, en Français, DNS inverse.)

Un accès internet « nettoyé »

Vous l’aurez constaté, la brique se présente avec une antenne wifi, bien qu’elle soit connectée par câble à votre box / modem.

L’utilisation de cette antenne n’est pas obligatoire et n’est pas utile à proprement parler pour l’auto-hébergement. Elle fait néanmoins partie intégrante du projet militant de la Brique Internet.

Si vous vous rendez sur le site labriqueinter.net, vous verrez que la brique ne vous propose pas seulement d’« avoir votre propre bout d’Internet » mais aussi de « nettoyer votre accès à Internet ».

En effet, grâce à l’antenne, votre brique pourra émettre un wifi auquel pourront se connecter vos appareils (ordinateurs, tablettes, smartphones, etc.). Pour acceder à internet, ceux-ci passeront alors par la brique, et donc par son VPN.

L’intérêt ?
Rendre inintelligible votre activité à votre fournisseur d’accès internet.

En effet, lorsque vous surfez sur internet, toute votre activité peut être observée (et conservée) par votre fournisseur et ce dernier peut aussi intervenir sur votre accès internet - par exemple en vous interdisant l’accès à certains sites ou en portant atteinte à la « neutralité du net », c’est à dire en favorisant votre accès à certains sites ou plateformes, au détriment des autres.

Au-delà de l’auto-hébergement, la brique se présente alors comme un outil pour construire un internet neutre respectueux de nos libertés et comme un instrument de lutte contre la surveillance.

Il faut cependant y mettre un bémol dans le contexte belge… en effet, l’Institut Belge des Postes et des Télécoms (IBPT) a récemment rappelé à l’asbl Neutrinet les dispositions qu’elle était légalement tenue de prendre, pour assurer la surveillance de ses membres et collaborer avec la police en cas de requête judiciaires émanant d’autorités compétentes…

Dans tous les cas, il faut aussi toujours garder à l’esprit que le VPN donne une IP fixe à votre briqueC’est donc avec cette IP que vous surferez sur internet… une IP associée à votre nom de domaine et qui restera la même au cours du temps.

Contrairement à la représentation commune où un VPN est un outil apportant de l’anonymat sur internet, le VPN de Neutrinet est bien différent : vous serez clairement identifiable pour les sites que vous fréquenterez (qui étudient également votre activité… et conservent aussi des logs de connexion…).

Par contre, passer par le VPN de Neutrinet vous garantit effectivement un accès internet respectueux de la Neutralité du net.

En résumé… un petit avant après :

Avant… vous vous connectez à vos services en ligne qui sont hébergés par des plateformes comme celles des GAFAMs. Vos données sont dans « le cloud », c’est à dire, « dans l’ordinateur de quelqu’un d’autre » selon une formule bien connue. Par ailleurs, vos appareils sont connectés au wifi de votre fournisseur, qui est susceptible d’observer votre activité sur internet et d’agir pour l’impacter.

Après… vous accédez à vos services en utilisant votre propre nom de domaine et vos données sont stockées chez vous, sur la brique, accessibles de l’extérieur via le VPN de Neutrinet. Vous pouvez y connecter vos appareils pour bénéficier d’une connexion où la neutralité du Net est garantie

Côté logiciel… Yunohost

Une grande difficulté, quand on souhaite s’auto-héberger, c’est d’avoir les compétences techniques pour le faire. Il faut savoir installer et maintenir le service qui nous intéresse… mais aussi installer, sécuriser et maintenir l’ensemble de notre serveur.

Pour faciliter l’auto-hébergement et le rendre accessible au plus grand nombre, la brique internet utilise Yunohost comme système d’exploitation. Il s’agit d’une distribution Linux, basée sur Debian, conçue spécifiquement pour faciliter la gestion d’un serveur. Elle permet en effet de faire toutes les opérations classiques d’administration par l’intermédiaire d’une interface graphique, accessible via le navigateur internet, sans recourir à la ligne de commande.

Le système s’installe également avec des services pré-configurés, comme un serveur mail ou XMPP, de la même manière qu’une distribution Linux arrive avec des logiciels comme LibreOffice ou GIMP.

Il arrive aussi directement avec des configurations nécessaires pour assurer la sécurité de votre serveur, en activant par défaut un pare-feu et en intégrant un logiciel qui bloque les tentatives potentielles d’attaques (fail2ban).

Yunohost se présente comme :

  • Une interface web d’administration
  • Une interface utilisateur de type SSO

L’interface d’administration

L’interface admin se structure en plusieurs catégories :

  • Utilisateurs (gestion des utilisateurs)
  • Domaines (gestions des domaines et des certificats)
  • Applications (gestion des services hébergés sur la brique)
  • Interface de mises à jour (pour mettre à jour le système)
  • Services (les services actifs sur la machine)
  • Outils (accès aux journaux, au pare-feu, possibilité de changement du mot de passe du compte admin et arrêt ou redémarrage de la machine)
  • Diagnosique (un outil de Yunohost qui permet de diagnostiquer les problèmes)
  • Sauvegarde (un outil pour sauvegarder ses données)

L’interface utilisateur est quant à lui une sorte de sésame qui offre l’accès aux services disponibles sur le serveur. Les services apparaissent sous forme de « briques » colorées. En cliquant dessus, on accède au service concerné. Dans l’exemple ci-dessous, cliquer sur la case orange donne ainsi accès au webmail « Rainloop » installé sur la brique.

Coûts

Intéressé par une brique ?
Mais combien ça coûte ? Car bien sûr, si l’on n’est plus « le produit », ça n’est plus « gratuit » non plus

Matériel

Le premier coût est celui de l’acquisition du matériel - de la brique donc.

Respectivement, pour une Lime 1 ou une Lime 2 (prix relevés sur le site de Neutrinet au moment de la présentation) :

  • Lime 1 : 77€
  • Lime 2 : 86€

Ces prix correspondent à l’achat d’une carte Olimex, d’une alimentation, d’un boîter, d’une carte SD et d’une antenne wifi.

VPN

Chez Neutrinet, nous proposons notre VPN à prix libre mais nous avons des coûts de notre côté pour lui permettre de fonctionner (coût de l’IP fixe + ressources pour maintenir l’infrastucture) :

  • Prix libre mais le coût pour Neutrinet est de ±8€/mois
  • Adhésion à Neutrinet comprise…

Nom de domaine

Il s’ajoute aussi, annuellement, le nom de domaine :

  • Payé à l’année, le montant dépend du choix du domaine (env. 15 euros/an pour un .be)
  • Mais Yunohost vous donnera aussi accès, en cas de besoin à un « sous-domaine » gratuit. Il ne s’agira pas d’un domaine sous la forme votredomaine.be mais d’un votredomaine.noho.st ou votredomaine.nohost.me.

Conclusion

A côté d’autres alternatives comme la future coopérative Nubo ou une structure comme domaine public, La Brique Internet vous invite à reprendre le contrôle de vos données d’une manière radicale : en remplaçant un intermédiaire de confiance (pour vos mails, vos services cloud, etc…) par… vous-mêmes !

Lors de la présentation du dimanche 24 octobre, plusieurs questions ont concerné l’intérêt d’utiliser une solution comme celle-ci plutôt que de recourir aux services d’un hébergeur éthique comme Nubo ou Domaine Public.

S’auto-héberger est-il mieux ? Ou moins bien ? Qu’en est-il de la fiabilité d’un tel service ? Compter sur soi-même nous rend indépendant, mais est-ce plus fiable ?

Il serait monsonger de recommander la brique comme une solution meilleure qu’un Nubo ou qu’un Domaine Public… L’indépendance a son revers : à la manière du jardinier qui doit composer avec la météo capricieuse et la qualité de ses semences, héberger ses mails signifie composer avec les aléas du réseau ou des mises à jours pouvant parfois apporter des bugs… et se retrouver à certains moments avec une installation « en panne ».

La panne subie par Facebook récemment a rappelé que même les plus grands pouvaient subir des pannes… Mais lorsque vous auto-hébergez vos données, ce sera à vous-mêmes de vous impliquer pour comprendre d’où vient la panne… et de voir comment y remédier.

Le VPN de Neutrinet peut aussi faire faux bon… Les infrastructures de Neutrinet sont maintenues uniquement par des bénévoles qui peuvent aussi avoir besoin de temps pour intervenir en cas de problème.

Comme la culture d’un potager, s’héberger à l’aide de son propre serveur implique donc un certain travail et certaines incertitudes.

S’auto-héberger, c’est reprendre le contrôle sur ses données, mais, comme je le disais au début de cette présentation, c’est aussi se réapproprier un certain savoir-faire et participer d’une certaine vision de l’internet où chacun devrait avoir le droit et être en capacité de cultiver son petit bout d’internet.

Dans le jargon des informaticiens, c’est aussi avoir son « lab ».

C’est s’éduquer, se former, au fonctionnement de technologies que nous utilisons tous les jours, et qui restent pourtant bien souvent des boîtes noires.

Questions ?

Neutrinet :
https://neutrinet.be/fr
Mattermost : chat.neutrinet.be

Célo :
Mail : celo@ytopia.xyz
Matrix : @celo:chat.brocolis.party
XMPP : celo@pasta.brocolis.party

1 Like