Plongée dans l’infrastructure technique de La Contre-Voie
Technique, partie 1 : Retours sur l’autohébergement de nos serveurs
Dans cet article, nous vous proposons un petit tour en coulisses pour découvrir le matériel informatique que nous utilisons pour vous fournir nos nouveaux services numériques.
Cet article spécial sera donc rédigé dans un jargon technique incompréhensible pour le commun des mortels… mais vous pouvez retrouver nos autres articles sur les accompagnements numériques ou notre nouvelle offre de services si ce n’est pas le genre de contenu qui vous intéresse.
Au lancement de notre feuille de route, nous avons fait la promesse de développer notre autonomie numérique avec des serveurs autohébergés à petite échelle, et de lancer notre programme d’accompagnement numérique − ce qui implique de décupler notre arsenal technique. Au cours de l’année 2024, nous avons entrepris d’installer nos premiers serveurs en autohébergement et d’y configurer nos premiers services.
Initialement, cet article devait présenter nos serveurs, notre SSO et les logiciels que nous utilisons, mais l’article étant devenu beaucoup trop long, nous avons fait le choix de le scinder en trois.
Ce premier article traitera donc de l’autohébergement de nos serveurs.
À la fin de l’année 2023, nous n’en avions que trois… mais aujourd’hui, notre infrastructure est composée de huit serveurs répartis comme suit :
L’ensemble de ces serveurs communiquent à travers un réseau privé WireGuard, à l’exception de sarus, notre machine de supervision.
🔗Les serveurs virtuels
Nous avons quatre petits VPS chez PulseHeberg :
- balearica et antigone sont nos serveurs historiques, mis en service en 2022 ; balearica (8 Go de RAM, 50 Go de SSD) héberge une grande partie de nos services et antigone (2 Go de RAM, 250 Go de HDD) sert de machine de stockage.
- griza, mis en service au début de l’année 2024, héberge notre service mail, et stanley est un nouveau serveur qui héberge un service mail secondaire. Les deux disposent chacun de 2 Go de RAM et 250 Go de HDD, comme antigone.
- Initialement, tous les mails étaient hébergés sur balearica, mais nous avons décidé de dédier un VPS entier au mail pour des raisons d’espace de stockage et de stabilité.
Ensuite, nous avons également un serveur virtuel offert gracieusement par l’association Picasoft depuis 2022 (si vous nous lisez, merci à vous !), nommé sarus, qui nous sert de machine de supervision interne et externe.
Comme il s’agit de VPS, nous n’avons pas grand-chose à raconter sur les conditions d’hébergement physiques de ces serveurs. Le reste de cette section se concentrera donc sur les serveurs que nous hébergeons nous-mêmes.
🔗Les serveurs autohébergés
Enfin, nous allons pouvoir vous parler de notre petit bricolage.
Le Bêta, tiers-lieu associatif à Angoulême que nous vous présentions dans notre article précédent, héberge deux de nos serveurs depuis début 2024 :
- pavonina, un micro-ordinateur de marque Odroid (modèle H3), architecture 64 bits, doté de 64 Go de RAM et 2 TB de stockage SSD, héberge sans broncher tous nos services à la carte pour le moment (dont quatre Nextcloud) et consomme une dizaine de watts en moyenne.
- monacha, un vieil ordinateur portable de récupération, 4 Go de RAM et 128 Go de SSD, nous sert de machine de CI/CD et de tests. Il consomme 15 watts en moyenne.
Et depuis à peine quelques semaines, la Maison des Peuples et de la Paix (MPP), un deuxième tiers-lieu associatif angoumoisin et notre siège social, héberge un serveur :
- demoiselle, un autre micro-ordinateur Odroid (modèle HC4), architecture ARM, 4 Go de RAM et 128 Go de SSD, 8 watts de consommation moyenne, nous servira bientôt de machine de stockage.
Nous avons la chance d’avoir reçu fin 2023 un généreux don de 12b du Distrilab, des deux ordinateurs Odroid qui servent maintenant à faire fonctionner la nouvelle génération de notre infrastructure, à travers nos deux serveurs pavonina et demoiselle. (12b, si tu nous lis, sache que sans ta contribution, ça nous aurait pris un an de plus. Merci à toi !)
🔗Autres caractéristiques matérielles
Le réseau : Le Bêta est équipé d’une Freebox (fibrée) qui était déjà là avant notre arrivée, sur laquelle nos machines sont connectées. La MPP, quant à elle, dispose d’une fibre Aquilenet.
L’électricité : nous avons fait l’acquisition d’onduleurs (UPS) pour alimenter nos serveurs et le réseau Internet en cas de pannes ou de micro-coupures. Il s’agit de simples onduleurs domestiques de marque Eaton, modèle 3S, à capacité de 550 VA, pilotables par USB.
La sécurité incendie : nous avons dû faire face à des inquiétudes de la part de nos hébergeurs quant au risque d’incendie de nos machines ou nos batteries… Au vu de l’électricité consommée (moins de 200 watts, et moins de 50 watts par appareil), ce matériel de faible tension n’est pas bien plus dangereux qu’un radio-réveil sur piles, mais il est si facile de prendre quelques précautions supplémentaires que nous avons pris l’initiative de répondre à ces préoccupations :
- en investissant dans deux détecteurs de fumée, un pour le Bêta et un pour la MPP, gentiment disposés près des batteries ;
- en achetant un thermomètre USB (marque Elitech) pour mesurer en temps réel la température du local (il nous reste encore à le connecter à notre outil de supervision…).
🔗La sécurité des locaux
Les tiers-lieux qui nous hébergent accueillent du public ; parfois plus d’une centaine de personnes au cours de soirées animées. Il va de soi que nous ne pouvons pas juste disposer un serveur dans un lieu fréquenté, et que les prises électriques et Internet ne doivent en aucun cas être accessibles au public.
Pour sécuriser notre installation, nous avons établi des critères basés sur le référentiel SecNumCloud (page 28, chapitre 11), qui définit trois types de zones :
- les zones publiques, qui sont celles accessibles par n’importe qui ;
- les zones privées, qui peuvent correspondre aux locaux administratifs de l’établissement, dans lesquels le public ne peut pas entrer sans être accompagné ;
- les zones sensibles, qui sont destinées à héberger les serveurs et qui ne doivent pas être en contact direct avec une zone publique.
Bon, c’est très grossièrement résumé, car le référentiel est très verbeux et exigeant. Nous n’avons bien évidemment pas les moyens de le respecter dans son intégralité, mais c’est une ressource utile pour établir les critères de base d’une infrastructure sécurisée. Par exemple, nous n’avons pas encore installé de borne d’identification biométrique pour l’accès à nos serveurs et ce n’est pas encore prêt d’arriver…
Ainsi, au Bêta comme à la MPP, nos serveurs se situent dans une armoire fermée à clé accessible uniquement depuis une zone privée (locaux administratifs, bureaux dans lesquels le public est interdit d’accès). La box Internet et l’onduleur sont tous les deux entreposés dans l’armoire avec les serveurs.
En bref : on fait de notre mieux, on prend la sécurité du matériel au sérieux avec les petits moyens que nous avons, bien que ça ne soit pas tout à fait conforme aux plus grands standards d’hébergement de serveurs en datacenter.
🔗La sécurité des données hébergées
Même si nous prenons soin de sécuriser l’accès physique à nos serveurs, que se passe-t-il en cas d’intrusion réussie par une personne malveillante (ou pire, en cas de perquisition) ?
Nous avons un remède simple, bien qu’il soit assez peu commun sur les serveurs : le chiffrement complet des disques. Nous avons donc installé un serveur SSH dans la partition de démarrage de nos machines, nous permettant de déchiffrer le serveur à distance. Seul couac : si le serveur redémarre pour une raison quelconque (panne électrique, freeze…), une intervention humaine (à distance) est nécessaire pour déchiffrer les disques et démarrer les services.
Pour les machines x86, nous avons suivi le tutoriel de TeDomum ; pour notre machine ARM tournant sur Armbian, nous avons approximativement suivi ce tutoriel.
De cette manière, si une personne réussit à entrer dans les locaux privés de nos hébergeurs, à ouvrir l’armoire fermée à clé et à récupérer nos disques durs, elle ne pourra rien en faire sans en connaître le mot de passe de déchiffrement. Dans le cadre d’une perquisition, cela nécessitera à la police d’obtenir l’accord d’un·e juge et de solliciter notre équipe technique.
🔗Des engagements contractuels
Et enfin, comme dernière mesure essentielle dans le cadre de ce partenariat avec ces deux tiers-lieux, nous avons mutuellement signé une convention d’hébergement.
Cette convention, rédigée par nos soins, formalise les engagements mutuels de notre part, et de la part des structures qui nous hébergent.
Dans les grandes lignes, voilà les engagements du Bêta et de la MPP :
- Nous prêter un espace clos de petite taille, alimenté en électricité et connecté à Internet ;
- Ne pas déconnecter les machines sans bonne raison (urgence, force majeure, risque quelconque pour les biens et les personnes…) ;
- Ne pas intervenir sur les machines ou les disques durs sans autorisation de notre part ;
- Nous laisser la possibilité d’intervenir ponctuellement à des fins de maintenance ou en cas de panne des machines ;
- Nous autoriser l’accès aux paramètres de la box Internet à des fins de configuration et de supervision ;
- Veiller à la sécurité du local ;
- En cas de rupture de la convention, nous laisser deux semaines pour déménager le local sauf en cas de force majeure.
Et voilà nos engagements :
- Mettre en pratique notre programme d’accompagnement numérique expérimental auprès du Bêta et de la MPP dans son intégralité ;
- Mettre à disposition de ces structures un niveau de service correspondant à leurs besoins techniques (espace disque, capacité de machines…), dans la limite du raisonnable et proportionnellement au service d’hébergement rendu ;
- Ne pas dépasser 200 W de consommation électrique, sans compter la box Internet ;
- Assumer à la place du Bêta et de la MPP toute responsabilité juridique qui pourrait leur être imputée concernant les données hébergées, sauf les données mises en ligne par ces structures elles-mêmes ;
- Prendre soin du local.
Vous l’aurez compris, cette convention est un échange de bons procédés, non pécunier, qui nous a permis de bêta-tester nos accompagnements numériques et de faire héberger gracieusement nos serveurs.
Nous ne payons pas l’électricité ni le local, on peut intervenir sur nos serveurs n’importe quand en cas de besoin, et en échange, nous accompagnons le Bêta et la MPP à nos frais et maintenons gracieusement leurs services numériques.
🔗Les améliorations à venir
Pour l’instant, nous envisageons plusieurs évolutions pour nos serveurs, à venir d’ici l’année prochaine ou plus tard, selon nos priorités.
Augmenter nos capacités de stockage. Nous avons utilisé des SSD de faible capacité pour commencer, mais si nous sommes amené·es à conserver plus de données, nous devrons augmenter les capacités de ces disques. Nous aimerions aussi créer de la redondance de données au niveau des disques durs (avec un RAID 10, par exemple), en plus de la redondance et des sauvegardes que nous réalisons déjà au niveau logiciel.
Décommissionner certains VPS. Maintenant que nous avons nos serveurs autohébergés, nous allons pouvoir transférer certains services sur ces serveurs. Nous prévoyons notamment de résilier l’hébergement de balearica et antigone, en louant un plus petit serveur VPS pour accueillir les services que nous ne préférons pas transférer (mail, raccourcisseur de liens, etc). Cela devrait également alléger nos frais techniques.
Accueillir de nouveaux serveurs. Nous allons accueillir au moins un serveur de plus pour réaliser de l’encodage pour les vidéos PeerTube, puis nous aviserons en fonction de nos besoins. Il est envisageable que nous séparions les serveurs de calcul et de stockage pour nous faciliter la maintenance, et que nous investissions dans des serveurs de stockage décents pour nos besoins (un micro-ordinateur pourrait faire l’affaire).
Mais avant cela, nous tâcherons de consolider notre infrastructure, y compris la partie logicielle et supervision (température, mesures de consommation, alertes…).
Voilà pour la présentation de notre matériel ! Dans l’article suivant, nous parlerons de notre solution d’authentification unifiée, ou SSO.
Et n’oubliez pas : nos actions dépendent directement de votre soutien. Si vous appréciez ces retours d’expérience, que vous souhaitez voir notre association exister à l’avenir et que vous en avez les moyens, vous pouvez faire un don !
À très vite !