Évolutions des projets La Brique Internet et YunoHost des versions 2.2, 2.4 et 2.5

64
8
fév.
2017
Internet

Logo blanc de YunoHost

YunoHost est une distribution basée sur Debian GNU/Linux orientée serveur, ayant pour but de faciliter l’auto‐hébergement.

Dans un premier temps, sera présenté le projet La Brique Internet. Dans un second temps, les améliorations apportées dans les versions 2.2, 2.4 et 2.5 de YunoHost seront passées en revue. Pour finir, seront présentés la nouvelle organisation, les travaux qui ont été menés sur l’infrastructure du projet, les nouveaux outils de développement et les futurs chantiers.

Sommaire

Interface d’administration

La Brique Internet

Photo de La Brique Internet

Le projet La Brique Internet a pour but de fournir une carte ARM (actuellement Olimex, qui est un matériel libre (à l’exception des puces)) avec YunoHost préalablement installé. La Brique Internet est distribuée par les FAI associatifs membres de la Fédération FDN. Les FAI fournissent également un service de réseau privé virtuel (VPN) afin de contourner des barrières du FAI à l’auto‐hébergement et ainsi profiter d’un Internet neutre.

Nouvelles fonctionnalités de YunoHost 2.2

Logo vertical de YunoHost
Sortie le 28 mai 2015, YunoHost 2.2 apporte les modifications suivantes :
Logo Dnsmasq

  • le serveur DNS, BIND a été remplacé par Dnsmasq, plus léger pour La Brique Internet ;
  • un système de quota a été mis en place sur les boîtes de courriel des utilisateurs ;
  • début de prise en charge de Debian Jessie.

Nouvelles fonctionnalités de YunoHost 2.4

Sortie le 20 mai 2016, YunoHost 2.4 met fin à la prise en charge de Debian Wheezy et est uniquement disponible sous Debian Jessie.

Système de sauvegarde et de restauration

Système de sauvegarde et de restauration

L’ajout majeur de la version 2.4 est la possibilité de sauvegarder et restaurer complètement le système :

  • à partir de l’interface Web d’administration et de la ligne de commande avec la commande : yunohost backup -h ;
  • dont, en particulier les comptes utilisateurs, les applications, les courriels, la configuration des services et les données ;
  • pour l’instant, les sauvegardes sont stockées localement, c’est‐à‐dire que l’archive est créée sur le serveur directement, mais le système a été pensé pour gérer à terme, d’autres emplacements ((S)FTP, autre serveur, etc.).

Gestion fine de la configuration des services

Système de configuration
Jusque‐là, l’installation venait avec une multitude de paquets yunohost-config-*. Tout a été rassemblé dans l’unique paquet yunohost !

Ceci a été rendu possible en améliorant la façon dont les différents services gérés par YunoHost (Nginx, Postfix, rspamd, etc.) sont configurés. YunoHost dispose maintenant de modèles de configurations de base (templates) pour les services.

De plus, une nouvelle commande, disponible uniquement en ligne de commande pour l’instant, permet de gérer les différentes configurations :
yunohost service regen-conf.

Cette commande permet de les régénérer et d’afficher les changements en attente. Si vous modifiez les fichiers de configuration, sachez qu’ils ne seront jamais écrasés lors d’une mise à jour. Vous pourrez même afficher les différences entre le fichier de configuration et le modèle de base avec la commande :
yunohost service regen-conf --list-pending --with-diff.

À noter que cette fonctionnalité s’adresse principalement aux administrateurs avancés souhaitant configurer eux‐mêmes les services.

Gestion et intégration des applications

Paquet YunoHost
L’organisation YunoHost-Apps a été créée sur GitHub afin de simplifier la coopération sur l’empaquetage des applications pour YunoHost. C’est aussi un très bon moyen de recenser les applications et d’améliorer leur visibilité.

La façon dont sont gérées les applications multi‐instances (le fait de pouvoir installer une application plusieurs fois) a été revue.

De plus, pour ceux qui maintiennent (ou désirent maintenir !) une application, des commandes pratiques (helpers) en shell sont maintenant disponibles pour faciliter l’empaquetage, notamment dans les tâches courantes (génération d’un mot de passe, création d’une base de données MySQL…). Des exemples sont donnés dans l’application d’exemple.

Pour plus de détails, voir News about apps management and packaging in YunoHost 2.4.

Migration des services

Logo MariaDB
- migration du système de base de données MySQL vers sa divergence (fork) communautaire MariaDB ;
Logo rspamd
- migration du système de suppression du courriel indésirable d’amavis/spamassassin vers l’anti‐pourriel plus léger (pour La Brique Internet) rspamd/rmilter avec l’ajout des configurations courriel DKIM et DMARC par défaut.

Autres fonctionnalités

On peut également noter l’ajout :

  • d’un système de diagnostic qui donne des informations sur l’instance de YunoHost, qui est accessible en ligne de commande (yunohost tools diagnosis) et via l’interface d’administration dans la section Outils. Cet outil remonte les informations suivantes :
    • les versions de Debian, du noyau Linux et des paquets YunoHost,
    • l’espace libre, l’utilisation de la mémoire vive et de la partition d’échange (swap),
    • la liste des services et leurs statuts, la liste des applications installées,
    • les adresses IP et les noms de domaine peuvent également être récupérés en mode privé ;
  • d’une fonction de génération automatique de la zone DNS des noms de domaines qui pourront directement être placés dans la zone DNS de son bureau d’enregistrement. Ils sont accessibles dans la partie Domains de l’interface d’administration et avec la commande : yunohost domain dns-conf exemple.tld.

Organisation du projet

En novembre 2016, suite à de longues discussions, l’équipe a clarifié le fonctionnement, la répartition des rôles et le processus de contribution au sein du projet. L’objectif du projet YunoHost a été défini comme rendre accessible au plus grand nombre l’installation et l’administration d’un serveur, sans délaisser la qualité et la fiabilité du logiciel, ceci grâce à un logiciel libre, entièrement communautaire et reposant sur des applications libres existantes. L’équipe propose de se limiter le projet au simple logiciel et de ne pas gérer les services auxiliaires liés (support payant, DNS, hébergement…). Plus d’informations sont disponibles dans le document de l’organisation du projet YunoHost.

YunoHost 2.5 (Chelsea Manning)

Sortie le 2 février 2017, la version 2.5 a été nommée Chelsea Manning, en hommage à son combat, pour célébrer sa libération prochaine et inciter chacun à agir à sa propre mesure.

Intégration de Let’s Encrypt

Logo de Let’s Encrypt
Let’s Encrypt a été intégré dans le cœur de YunoHost. Il est possible de manipuler le gestionnaire de certificats depuis l’interface d’administration comme depuis la ligne de commande.

Correctifs

Cette nouvelle version a aussi été l’occasion pour nous de corriger un nombre conséquent de bogues, concernant la post‐installation (notamment le trop fameux « admin user doesn’t exist »), la gestion des courriels et des pourriels, la génération de clef DNSSEC, l’installation sur du matériel lent, sur OLinuXino et Raspberry Pi et la prise en compte des délais de chargements que peuvent rencontrer certaines machines de faible puissance ou avec une mauvaise connexion.

Autres

Tous les détails sont disponibles dans la feuille de route de la version 2.5 sur Redmine, dans les notes de version (yunohost, yunohost-admin, moulinette et SSOwat) et dans l’échéancier GitHub.

Pour les empaqueteurs d’applications

Jusqu’à présent, les critères qu’une application devait remplir pour devenir officielle ou être considérée comme étant de qualité étaient un peu flous et informels. Un gros travail a été fait à la fois pour formaliser ces critères et règles, donnant ainsi un chemin à suivre aux empaqueteurs et pour améliorer la qualité en introduisant des tests automatiques :

  • l’introduction de niveaux pour les applications, à la fois pour indiquer, tant aux utilisateurs ce à quoi s’attendre, que pour guider les développeurs et les motiver ;
  • une fois atteint le niveau 6, une application peut être proposée pour devenir officielle ;
  • la conception de tests automatiques pour s’assurer qu’une application fonctionne comme prévu en tout moment et pour pouvoir automatiser le niveau à attribuer ;
  • un gros travail, encore en cours, pour faire un document de référence sur comment bien faire une application (les YEP). Plus de détails dans cette annonce ;
  • migration d’ownCloud vers NextCloud.

Infrastructure du projet YunoHost

Logo de Redmine

Outils de développement

YnH-Dev permet de créer, sur son ordinateur de bureau, une machine virtuelle basée sur Vagrant pour développer et tester la version de YunoHost de votre choix (stable, test, instable).

CI-Apps

CI-Core

Un outil d’intégration continue a été démarré pour le bon fonctionnement du cœur de YunoHost.

Futurs développements

À moyen terme, nous allons bien entendu continuer de corriger les bogues pour améliorer la stabilité de YunoHost, mais aussi travailler sur la documentation et l’internationalisation. La mise en place de tests automatiques est également en cours afin de contribuer aux actions de renforcement de la stabilité. Plusieurs chantiers sont prévus, notamment pour améliorer la gestion des applications, le système de sauvegardes, la configurabilité et mettre en place un système de notifications.

Remerciements

Un grand merci à tous les contributeurs qui continuent de faire vivre le projet. <3

L’équipe de YunoHost, les nombreux empaqueteurs et mainteneurs d’applications, les traducteurs d’interfaces, les testeurs, rapporteurs de bogues, les contributeurs de La Brique Internet et bien d’autres qui ne sont pas cités…

Venez contribuer !

Si vous aimez YunoHost, n’hésitez pas à filer un coup de main ! Il n’est pas nécessaire de coder, ni même de s’investir sur le long terme pour contribuer : le simple fait de parler du projet est une contribution en soi. Vous pouvez partager votre expérience en documentant, aidant les autres ou en rapportant des bogues. Vous pouvez également participer à la traduction !

Pour ceux plus proches de la technique, n’hésitez pas à regarder comment empaqueter des applications ou développer et contribuer sur le cœur de Yunohost. Nous recherchons en particulier des développeurs Python et/ou des personnes familières avec les paquets Debian.

  • # encore bravo

    Posté par (page perso) . Évalué à 10. Dernière modification le 08/02/17 à 15:56.

    Bravo et merci à tous ceux qui proposent des trucs sympa comme ce projet et bien d'autres.
    Est-ce que le projet peut informer des attaques ou tentatives d'attaques?

  • # Bien bien bien :D

    Posté par . Évalué à 6.

    Heureux de voir qu'il y a encore du développement sur Yunohost, que j'utilise depuis cet été.
    J'espère juste que le rajout de LetsEncrypt ne va pas casser ma config LetsEncrypt/certbot déjà existante !
    D'ailleurs j'aimerais voir une gestion des modules (ou surtout de leur configuration au sein de nginx/ssowat) un peu plus simple, ainsi qu'une meilleure flexibilité sur la config déjà existante (site web perso, etc).
    Et j'attends avec impatience (si je ne le fais pas moi-même) l'intégration de Yunohost sous ArchLinux, sous forme de paquets propres à installer avec pacman !

  • # Je ne connaissais pas ! Mai c'est trop cool !

    Posté par . Évalué à 3.

    Je suis passer à côté de cette distribution. Je pensais qu'il n'y avais que Cozy Cloud sur ce domaine. Bon ben faut que je teste de toute urgence ! :)

    • [^] # Re: Je ne connaissais pas ! Mai c'est trop cool !

      Posté par . Évalué à 0.

      Dans les alternatives, il y a aussi OpenMediaVault et FreeNAS.

      Cette signature est publiée sous licence WTFPL

      • [^] # Re: Je ne connaissais pas ! Mai c'est trop cool !

        Posté par . Évalué à 2.

        OpenMediaVault et FreeNas ont l'air d'être plus un système "complet", moins un service d'agrégation d'applis, non ?

        • [^] # Re: Je ne connaissais pas ! Mai c'est trop cool !

          Posté par . Évalué à 1. Dernière modification le 24/02/17 à 19:19.

          Pour FreeNAS si ça n'a pas trop changé depuis que je l'ai testé (2-3 ans) en gros c'est un BSD avec une WEBUI codée par les devs de FreeNAS permettant de tout gérer depuis son navigateur.
          Donc je serais tenté de dire oui ^ ^ (bien que je suppose qu'ils n'ont pas recodé la roue)
          Par contre si je me rappel bien c'est vraiment axé cloud/NAS (je ne me rappel pas d'un serveur mail ou autre, faut checker wikipedia)

          Donation Bitcoin : 1N8QGrhJGWdZNQNSspm3rSGjtXaXv9Ngat

        • [^] # Re: Je ne connaissais pas ! Mai c'est trop cool !

          Posté par . Évalué à 3.

          OpenMediaVault et FreeNas ont l'air d'être plus un système "complet", moins un service d'agrégation d'applis, non ?

          Non, c'est à peu près le même concept que Yunohost.

          OpenMediaVault utilise les dépôts Debian. Il ajoute une interface web pour gérer le système et une collection d'applications. Les applications web sont à peu près les mêmes que Yunohost. Les différences sont que la gestion du système est plus bas niveau (avec par exemple des outils de partitionnement) et des applications pour NAS (Samba, NFS, miniDLNA, etc.).

          Je connais moins FreeNAS mais le principe est le même sur une base FreeBSD. OpenMediaVault est un fork amical de FreeNAS par son principal développeur de l'époque.

          Cette signature est publiée sous licence WTFPL

  • # Conférence YunoHost au FOSDEM 2017

    Posté par (page perso) . Évalué à 9.

    L’édition du FOSDEM 2017 a accueilli dans une dev room les acteurs de la décentralisation d’Internet.
    Voici les vidéos des conférences.

    Vous pourrez y retrouver la conférence de YunoHost et de La Brique Internet.

  • # et on en reviens à la communication

    Posté par . Évalué à -2.

    "dude, Y U NO Host?!"
    "go host yourself!"
    "get off my cloud b*tch!"

    La tyrannie du cool…

  • # A20 dual core

    Posté par (page perso) . Évalué à 0.

    C'est encore un A20 la-dedans? C'est vieux maintenant, plus aucun fondeur de SOCs ne fait de dual core.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.