Sortie de YunoHost 4.2

76
30
mai
2021
Distribution

La sortie de YunoHost 4.2 est l’occasion de rappeler l’existence de ce projet et de tenir au courant de ses dernières évolutions. On note la réécriture en Python 3, et en Vuejs pour l’interface web.

Interface utilisateur de Yunohost

YunoHost est une distribution basée sur Debian qui facilite l’auto-hébergement en fournissant une interface conviviale pour installer et administrer des applications serveurs. Le catalogue d’applications gérées par YunoHost est de plus en plus fourni et propose des logiciels pour gérer ses courriels, son nuage de données, son serveur média, le partage de fichiers, l’agrégation d’informations, etc.

Les nouveautés de cette version

Outre Vue.js et Python 3 — indispensable pour la transition vers la nouvelle Debian Stable 11.0, dite « Bullseye » (travail soutenu par Code Lutin), l’autorisation d’accès SSH est maintenant gérée par le web, les backups et mises à jours sont plus sûrs, et le nettoyage de code se poursuit.

Les notes de version sont publiées en français sur le forum de Yunohost, avec procédure de mise à jour et remarques de vieux combattants.

YunoHost au jour le jour

L’interface web dédramatise : elle est simple avec des explications très courtes et si l’action en cours dure longtemps, ce qui se passe est annoncé soit par des résumés successifs, soit par un « pacman » indiquant que ce n’est pas fini. On sent immédiatement que tout est simplifié et que l’administrateur aura la tâche facile. Par exemple, la configuration automatisée du serveur de courriel est très complète, ou encore une surveillance vous rappelle comment bien configurer votre DNS.

La documentation

La documentation du projet est de plus en plus fournie, sans être verbeuse et rébarbative. Elle répondra à vos questions en ce qui concerne l’installation de la distribution et les étapes les plus courantes de son administration. En ce qui concerne les applications serveurs, il faudra évidemment se reporter aux documentations des projets.

L’interface d’administration

Yunohost propose une interface d’administration agréable à utiliser et très efficace pour gérer les tâches les plus courantes liées à la configuration et l’entretien du serveur.

En tant qu’administrateur du serveur, voici l’écran que nous voyons apparaitre :
Interface d’administration de Yunohost 4.1

Il est aussi possible de naviguer parmi les applications qui ont été empaquetées pour Yunohost :

Interface pour installer des applications sur Yunohost 4.1

Les applications sont classées de plusieurs manières :

  • selon des catégories thématiques : Synchronisation de données, Publications, Communications, etc.
  • selon la qualité du paquet (voir une description plus détaillée) : notée de 0 à 10, zéro correspondant à ne fonctionnant pas du tout, 5 qui ne déclenche pas d’erreurs (oui, cette définition est également présente pour le niveau 7…), 9 haute qualité bien intégré dans Yunohost. La qualité 10 n’est pas encore définie.

Un autre point important est la maintenance du système. L’interface web distingue la mise à jour du système, qui se fait tout d’un bloc, de la mise à jour des applications, où l’administrateur peut choisir de faire la mise à jour application par application ou toutes d’un coup.

Interface de mise à jour de Yunohost 4.1

Il est évidemment possible de gérer le serveur via la ligne de commande. Un outil en ligne de commande, yunohost, permet de faire les mêmes tâches que l’interface en ligne, voire avec quelques options en plus. À noter que lorsque Yunohost est installé via l’image officielle, l’utilisateur root n’est pas accessible via ssh.

Enfin, Yunohost reste une distribution Debian : ce qui est disponible pour Debian est disponible pour Yunohost, si vous souhaitez installer des logiciels qui n’ont pas été empaquetés pour Yunohost mais qui sont disponibles pour Debian, il est toujours possible de le faire. L’interface Web permet même de créer des applications virtuelles pour faciliter l’installation par l’administrateur d’applications non gérées par Yunohost.

Les logiciels

Contrairement à FreedomBox, le projet YunoHost a préféré ne plus utiliser les paquets Debian et implémenter son propre système (voir la dépêche sur la création du paquet Pétrolette pour plus de détails). Le catalogue est plus limité, mais ça lui permet plus d’auto-configuration et d’automatisation. L’administrateur n’a souvent rien à faire.

Rien n’empêche un administrateur compétent d’installer des paquets Debian via le terminal, cependant ils ne seront pas gérés ni auto-configurés par Yunohost et vous devrez corriger les éventuelles interférences.

En cas de pépin

Le salon IRC de YunoHost est actif et les développeurs ou utilisateurs répondront, dans la mesure de leur disponibilité évidemment. Il y a également un forum pour poser ses questions.

Aller plus loin

  • # Chouette découverte

    Posté par  (site web personnel, Mastodon) . Évalué à 10.

    Merci pour la dépêche. J'entends un peu partout parler de YunoHost et je ne comprenais pas trop ce que c'était faute de prendre du temps pour ça. Du coup, maintenant je sais.

    L'interface me plaît vraiment beaucoup.

    « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

    • [^] # Re: Chouette découverte

      Posté par  . Évalué à 2.

      Oui, un grand merci pour cette découverte, je n'en avais pas encore entendu parler et je suis bluffé. L'outil de diagnostique est vraiment très pédagogique.
      Du coup, je vais changer de distribution pour mon hébergement maison.

  • # typo ?

    Posté par  . Évalué à 5.

    Merci pour la dépêche,

    Un autre point important est la maintenant du système

    Est-ce que ce ne serait pas plutôt "la maintenance du système" ?

    Les vrais naviguent en -42

  • # Bravo et merci

    Posté par  . Évalué à 9. Dernière modification le 01 juin 2021 à 16:06.

    J'utilise Yunohost depuis plusieurs années et je recommande.
    J'ai même basculé dessus plusieurs autres services que j’hébergeais séparément avant: une instance matrix-synapse, FreshRSS, site web static, …
    Même si ce n'est pas forcément trivial (ce n'est pas forcément prévu dans le processus d'installation de récupérer des données d'une instance auto-hébergé), j'ai pu le faire et maintenant ça fonctionne

    Bien sur c'est perfectible, mais je voie et apprécie aussi aussi les progrès régulier. J'ai un certain nombre d'idées d'améliorations plus ou moins simple, mais je n'ai pas pris le temps de faire des demandes/proposition :(. Désolé
    J'apprécie notamment le faite d'unifier les procédures : installation, gestion des utilisateurs, sauvegarde, etc

    Bravo, merci et bonne continuation.

    • [^] # Re: Bravo et merci

      Posté par  . Évalué à 10.

      Même expérience, YunoHost n’est pas (toujours) parfait (mais souvent!) mais ça facilite tellement la maintenance d’un serveur auto-administré, que j’ai moi aussi basculé sur YunoHost des services que j’hébergeais auparavant « à la main » (notamment courrier électronique, Nextcloud, forge Git). Les outils d’installation et d‘administration sont un vrai confort et la gestion centralisée des utilisateurs (🖤 SSOwat) apporte la dernière touche dont je ne saurai plus me passer.

      • [^] # Re: Bravo et merci

        Posté par  . Évalué à 8.

        En plus, je pense que Yunohost (avec d'autre) peut aider à uniformiser voir externaliser la gestion des utilisateurs/connections des "logiciels" de services, ou au moins que ça soit une options fréquente.

        En effet, imaginons que j'ai une nouvelle idée "révolutionnaire" de service en ligne. Si je veux créer un logiciel qui met en pratique cette idée, j'aurais probablement besoin d'une gestion d'utilisateur.
        Mais je n'ai pas forcément l'envie et les compétences pour le faire. Autant m'appuyer sur d'autre outils/services pour gérer la partie identification, gestion des droits, sécurité, etc.

        Et on retrouverais là le principe : une fonctionnalité (au sens service) → un outils.

      • [^] # Re: Bravo et merci

        Posté par  . Évalué à 4.

        oui pareil, ça m'a changé la vie aussi, je ne pourrais plus m'en passer, c'est tellement pratique et bien conçu…

        « Le pouvoir des Tripodes dépendait de la résignation des hommes à l'esclavage. » -- John Christopher

        • [^] # Re: Bravo et merci

          Posté par  . Évalué à 3.

          Ideme, c'est vraiment pratique, bien foutu et personnellement, je n'ai presque jamais eu de problème avec (et aucun dernièrement).

      • [^] # Commentaire supprimé

        Posté par  . Évalué à 0. Dernière modification le 26 juin 2021 à 15:50.

        Ce commentaire a été supprimé par l’équipe de modération.

  • # Paquet pour les interfaces ?

    Posté par  . Évalué à 2.

    J'autohéberge à la mano depuis toujours mais à la lecture des commentaires, ça donne envie d'essayer YunoHost.

    Seulement je n'ai pas envie d'installer entièrement un système d'exploitation et je tiens fermement à mes serveurs sous Arch. Est-ce que les interfaces admin/user existent sous forme de paquets (ou seraient empaquetables ?).

    La majeure partie des morts l'était déjà de son vivant et le jour venu, ils n'ont pas senti la différence.

    • [^] # Re: Paquet pour les interfaces ?

      Posté par  . Évalué à 4. Dernière modification le 24 juin 2021 à 13:56.

      les interfaces admin/user existent sous forme de paquets

      Oui, la distribution YunoHost est une Debian tout ce qu’il y a de plus classique avec un dépôt en plus qui ne contient que les paquets de YunoHost (dont moulinette et ssowat).

      je tiens fermement à mes serveurs sous Arch

      Ça, ça va être plus difficile, YunoHost est vraiment lié à Debian. En caricaturant vraiment YunoHost c’est avant tout un gestionnaire d’installation et des recettes toutes prêtes et mutualisées pour installer et administrer des services usuels (mais non disponibles de base) sur une Debian. Il y aurait beaucoup de boulot pour refaire la même chose sur Arch en partant de YunoHost, et ce serait un nouveau projet à part entière.

      • [^] # Re: Paquet pour les interfaces ?

        Posté par  . Évalué à 2.

        Ça, ça va être plus difficile, YunoHost est vraiment lié à Debian. En caricaturant vraiment YunoHost c’est avant tout un gestionnaire d’installation et des recettes toutes prêtes et mutualisées pour installer et administrer des services usuels (mais non disponibles de base) sur une Debian. Il y aurait beaucoup de boulot pour refaire la même chose sur Arch en partant de YunoHost, et ce serait un nouveau projet à part entière.

        Merci c'est un peu ce que je craignais. Je voulais surtout profiter des interfaces et des configurations prédéfinies. Il faudrait que j'aille jeter un oeil au repo pour voir comment tout ça est organisé et à quel point la dépendance à Debian est forte.

        La majeure partie des morts l'était déjà de son vivant et le jour venu, ils n'ont pas senti la différence.

        • [^] # Re: Paquet pour les interfaces ?

          Posté par  . Évalué à 2.

          Pour te dire, je suis bloqué sur une Ubuntu, et j'installe tout à la main.
          Je n'ai pas trouvé comment porter Yunohost dessus (mais bon, j'ai gratté sommairement).
          Et hors de question de virtualiser. Pourtant…

          • [^] # Re: Paquet pour les interfaces ?

            Posté par  . Évalué à 2.

            Et hors de question de virtualiser.

            Pourquoi ? Même moi qui l’utilise sur Debian, je l’utilise dans un conteneur LXC avec une autre Debian. Qu’est-ce qui t’empêche d’adopter une telle solution ?

            • [^] # Re: Paquet pour les interfaces ?

              Posté par  . Évalué à 2.

              La charge finale du système, et l'existant (backups, partage des bases mysql…)

              Je vais quand même préter plus d'attention à ta solution, merci :)

            • [^] # Re: Paquet pour les interfaces ?

              Posté par  . Évalué à 2.

              Pour être trés clair je trouve que SSOwat et vraiment une bonne idée.
              Tu aurais de la documentation sur l'installation de Yunohost dans un container LXC ?
              Merci !

              • [^] # Re: Paquet pour les interfaces ?

                Posté par  . Évalué à 3. Dernière modification le 27 juin 2021 à 12:19.

                Attention, toutes les commandes présentées ici le sont depuis un hôte Debian, il peut y avoir des variations subtiles sur une autre distro.

                Pour créer le conteneur :

                lxc-create -n moncontenur -t debian -- -r buster

                Chez moi, j’utilise une partition /var/lib/lxc formatée en BTRFS, par défaut la racine du conteneur /var/lib/lxc/monconteneur/rootfs est créée dans un sous-volume, ce qui facilite les instantanés en cas de grosse tuile.

                Tu peux éditer le fichier /var/lib/lxc/monconteneur/config, le miens ressemble à ça pour mon conteneur YunoHost :

                # Template used to create this container: /usr/share/lxc/templates/lxc-debian
                # Parameters passed to the template: -r stretch # Oui, mais le conteneur a été mis à jour depuis.
                # Template script checksum (SHA-1): 5a35ad98c578f5487dc5712a1c7d38af399be813
                # For additional config options, please look at lxc.container.conf(5)
                
                # Uncomment the following line to support nesting containers:
                lxc.include = /usr/share/lxc/config/nesting.conf
                # (Be aware this has security implications)
                
                ##lxc.net.0.type = empty
                lxc.net.0.type = veth
                lxc.net.0.flags = up
                lxc.net.0.link = bridge0 # Attention, le pont doit être configuré sur l’hôte pour que cela fonctionne, sinon il faudra utiliser une autre méthode de partage du réseau. Il faut aussi régler le réseau dans le conteneur, via le fichier /etc/network/interfaces ou NetworkManager.
                lxc.net.0.name = eth0
                lxc.net.0.ipv4 = [Mettre ici l’adresse IPv4 souhaitée ou rien si le DHCP du réseau s’en occupe] # Pareil pour IPv6 d‘ailleurs, mais chez moi les réglages réseau dans le conteneur s’en occupent.
                lxc.net.0.hwaddr = [Choisir ici une adresse MAC]
                lxc.net.0.veth.pair = veth01
                
                lxc.apparmor.profile = generated
                lxc.apparmor.allow_nesting = 1 # Important au cas où un paquet YunoHost décide de créer un conteneur dans le conteneur, je n’en ai pas d’exemple mais ça pourrait arriver. Une partie est peut-être redondante avec la ligne lxc.include = /usr/share/lxc/config/nesting.conf plus haut.
                lxc.rootfs.path = dir:/var/lib/lxc/monconteneur/rootfs
                
                # Common configuration
                lxc.include = /usr/share/lxc/config/debian.common.conf
                
                # Container specific configuration
                lxc.tty.max = 4
                lxc.uts.name = monconteneur
                lxc.arch = armhf # À adapter évidemment, mais normalement ces lignes sont de toutes façons générées automatiquement par la commande lxc-create.
                lxc.pty.max = 1024
                
                # Mount points
                lxc.mount.entry = /mnt/userdata/mail var/mail none bind 0 0 # Là c’est au choix, mais j’enregistre les données des utilisateurs en dehors du conteneur.
                lxc.mount.entry = /mnt/userdata/home home     none bind 0 0
                
                # Auto-start
                lxc.start.auto = 1
                lxc.start.delay = 120

                Ensuite, tu le démarres et t‘y connectes si tu veux :

                lxc-start -n monconteneur
                lxc-attach -n moncontenur

                puis Ctrl-D pour sortir.

                À partir de là, tu as un conteneur LXC avec une Debian à la vanille, reste à installer YunoHost :

                echo deb http://forge.yunohost.org/debian/ buster stable > /var/lib/lxc/monconteneur/rootfs/etc/apt/sources.list.d/yunohost.list
                lxc-attach -n moncontenur
                apt update
                apt upgrade
                apt install curl
                curl https://install.yunohost.org | bash # On peut aussi télécharger le script et regarder ce qu’il fait avant de le lancer aveuglément.

                Et tadaaaaaa ! Une fois que tu as finis d‘installer YunoHost, tu peux même désactiver la connexion en SSH dessus puisque ton conteneur est accessible depuis l’hôte. Enfin, de toute façon à partir de là, on fait ce qu’on veut, on est chez soi, et puis y’a toujours les instantanés BTRFS qu’on peut faire à tout moment pour garder un filet de sécurité.

                Note: toutes ces commandes ont été retranscrites de mémoire, il ne faut pas les recopier aveuglément mais elles devraient bien décrire la démarche générale.

                Plus d’infos sur https://yunohost.org/fr/install/hardware:vps_debian.

        • [^] # Re: Paquet pour les interfaces ?

          Posté par  . Évalué à 3. Dernière modification le 25 juin 2021 à 14:55.

          La dépendance n'est pas si forte que ça, en ce sens que Yunohost a son propre format de paquets pour l'installation des applications. Seul le coeur utilise les paquets Debian (serveur web, ldap, etc.). Ça doit pouvoir se porter. Mais dans l'esprit de Yunohost tu n'est pas censé toucher au serveur, donc un portage a peu d'intéret. Si tu veux Yunohost avec autre chose que Debian, un conteneur dans Arch est la meilleure solution. De la sorte tu toucheras au serveur Arch sans toucher à Debian.

          • [^] # Re: Paquet pour les interfaces ?

            Posté par  . Évalué à 3.

            Mais si tu y tiens regarde «hooks et templates» dans https://yunohost.org/fr/dev?q=%2Fdev

          • [^] # Re: Paquet pour les interfaces ?

            Posté par  . Évalué à 4. Dernière modification le 25 juin 2021 à 16:06.

            Yunohost a son propre format de paquets pour l'installation des applications

            Oui, mais ces paquets gèrent leurs dépendances en supposant qu’ils tournent sur une Debian. Par exemple Nextcloud créé un métapaquet Debian “nextcloud-ynh-deps” qui tire ses dépendances depuis les dépôts Debian. Bien que le format de paquet de Yunohost ne soit pas spécifique à Debian par construction, les paquets eux-mêmes le sont, c’est pourquoi j’écrivais que « refaire la même chose sur Arch en partant de YunoHost […] serait un nouveau projet à part entière ».

  • # yunohost

    Posté par  . Évalué à 2.

    Facilement 5 ans que j'utilise Yunohost pour mon nextcloud, qlqs sites et Kanboard, utilisation professionnelle sur VPS. Aucun soucis, aucune perte de donnée, une communautée ultra efficace. Je ne peux que recommander.

Suivre le flux des commentaires

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