yunohost

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
yunohost [2019/05/27 21:36]
samvermeulenpro [CHATONS utilisant YunoHost]
yunohost [2020/07/08 00:05] (Version actuelle)
ljf
Ligne 1: Ligne 1:
-La distribution [[https://yunohost.org|YunoHost]] vous facilitera grandement l'administration du serveur de votre CHATON. Cette page présente les fonctionnalités principales de YunoHost (YNH) et suggère certains outils pour vous permettre d'exploiter pleinement son potentiel.+La distribution [[https://yunohost.org|YunoHost]] vous facilitera grandement l'administration du serveur de votre CHATONS. Cette page présente les fonctionnalités principales de YunoHost (YNH) et suggère certains outils pour vous permettre d'exploiter pleinement son potentiel.
  
 ====== Présentation de YunoHost ====== ====== Présentation de YunoHost ======
-YunoHost est une distribution basée sur Debian GNU/Linux composée, essentiellement, de logiciels libres. Plusieurs fonctionnalités la rendent adaptées à un projet CHATON :+YunoHost est une distribution basée sur Debian GNU/Linux composée, essentiellement, de logiciels libres. Plusieurs fonctionnalités la rendent adaptées à un projet CHATONS :
   * **Multi-domaines** (SSL Letsencrypt), **multi-utilisateurs** (LDAP)   * **Multi-domaines** (SSL Letsencrypt), **multi-utilisateurs** (LDAP)
-  * Chaque utilisateur peut disposer d'une **boite mail** (Postfix, Dovecot...) et d'une adresse de **messagerie instantannée** (XMPP Metronome) +  * Chaque utilisateur peut disposer d'une **boite mail** (Postfix, Dovecot...) et d'une adresse de **messagerie instantanée** (XMPP Metronome) 
-  * **Installation d'applications web populaires** en quelques clics (liste ci-dessous) +  * **Installation d'applications** en quelques clics (liste ci-dessous) 
-  * **Identification unique** (Single Sign-On) de vos utilisateurs sur toutes les applications officielles et certaines autres+  * **Identification unique** (Single Sign-On) de vos utilisateurs via un portail sur toutes les applications de niveau 8 
 +  * **Groupes d'utilisateurs**
   * Mise à disposition d'applications privées (uniquement pour vos utilisateurs) ou publiques (NGINX)   * Mise à disposition d'applications privées (uniquement pour vos utilisateurs) ou publiques (NGINX)
-  * Ajout simplifié de nouvelles applications (voir [[https://yunohost.org/#/packaging_apps_fr|documentation]]) +  * Création simplifié de nouvelles applications (voir [[https://yunohost.org/#/packaging_apps_fr|documentation]]) 
-  * Support d'une multitude de hardware (x64, x86, raspberry, ...+  * Support d'une multitude de matériel ([[https://yunohost.org/#/install_iso|x64, x86]][[https://yunohost.org/#/install_on_raspberry|raspberry]][[https://yunohost.org/#/install_on_arm_board|ARM]]
-  * Scripts de **backup/restore** pour toutes les applications officielles et certaines autres +  * Scripts de **sauvegarde/restauration** pour toutes les applications de niveau 4 
-  * **Système d'API** permettant d'aministrer et de monitorer YunoHost intégralement à distance+  * **Système d'API** permettant d'administrer et de monitorer YunoHost intégralement à distance
   * Distribution également utilisée par le projet [[https://labriqueinter.net/|La Brique Internet]] qui promeut un internet libre, neutre et décentralisé et qui s'appuie sur des FAI associatifs (synergies potentielles).   * Distribution également utilisée par le projet [[https://labriqueinter.net/|La Brique Internet]] qui promeut un internet libre, neutre et décentralisé et qui s'appuie sur des FAI associatifs (synergies potentielles).
   * **Communauté de développement dynamique** ([[https://forum.yunohost.org/|forum]], packaging d'applications, labriqueinter.net, ...)   * **Communauté de développement dynamique** ([[https://forum.yunohost.org/|forum]], packaging d'applications, labriqueinter.net, ...)
  
-De nombreuses applications ont déjà été packagées : +===== Les applications =====
-  * [[https://yunohost.org/#/apps_fr|Applications officiellement maintenues]] par l'équipe YNH : Owncloud (et Nextcloud), Wordpress, TinyTinyRSS, Roundcube, Searx, Baikal, Agendav, Wallabag, OpenSondage, Transmission, ... +
-  * [[https://yunohost.org/#/apps_in_progress_fr|Autres applications]] : Rainloop, Diaspora, Etherpad Mypads, Gogs, PluXml, ... +
-  * Une application non officielle permetant d'afficher un menu en haut de chaque service à la place du carré yunohost https://github.com/YunoHost-Apps/menu_ynh+
  
-**La plupart des services Framasoft sont installables via YunoHost** et qui plus est avec une identification utilisateur unique (SSO).+YunoHost propose beaucoup d'applications différentes, et vous pouvez même installer les vôtres sans qu'elles aient étés testées (à vos risques et périls)
 +L'équipe en maintient une dizaine, et les autres sont maintenues par d'autres contributeurs. Certaines proposent des services WEB ou autres, d'autres offrent des options en plus pour gérer votre serveur. 
 +Elles sont triées selon des [[https://yunohost.org/#/packaging_apps_levels|niveaux attribués grâce à des validations de test]] afin de vous proposer la meilleure expérience possible et de diminuer les risques.
  
-Quelques contraintes seraient toutefois à noter pour l'utilisation de YunoHost par un projet CHATON +Voici une liste exhaustive des applications existantes 
-  * Qualité diverses des applications : toutes n'ont pas de backup/restore et de SSO, ... +  * Applications de « haute qualité » (niveau 8) : [[https://github.com/YunoHost-Apps/dokuwiki_ynh|DokuWiki]][[https://github.com/YunoHost-Apps/etherpad_mypads_ynh|Etherpad Mypads]], [[https://github.com/YunoHost-Apps/gitlab_ynh|Gitlab]], [[https://github.com/YunoHost-Apps/hextris_ynh|Hextris]], [[https://github.com/YunoHost-Apps/leed_ynh|Leed]], [[https://github.com/YunoHost-apps/opensondage_ynh|OpenSondage]], [[https://github.com/YunoHost-Apps/piwigo_ynh|Piwigo]], [[https://github.com/YunoHost-Apps/strut_ynh|Strut]], [[https://github.com/YunoHost-Apps/synapse_ynh|Synapse]], [[https://github.com/YunoHost-Apps/wallabag2_ynh|Wallabag]] et [[https://github.com/YunoHost-Apps/wordpress_ynh|Wordpress]] 
-  * SSL Letsencrypt à installer via une application tierce pour le moment +  * Applications de niveau 7 : Bitwarden, Discourse, Drupal, Firefox Sync Server, FreshRSS, Funkwhale, Gogs, Lufi, Mastodon, Nextcloud, PeerTube, Pi-hole, PluXml, PrettyNoemie CMS, Rainloop, Searx, Transmission, Zerobin et d'autres... 
-  * Pas de haute-disponibilité pour le moment (mais [[https://forum.yunohost.org/t/yunohost-high-availability-redundancy/1873|discussions en cours]]) +  * Applications de niveau 4 : I hate money, RSS-bridge, EmailPoubelle 
-  * Impossible pour le moment de faire des backup/restore pour chaque utilisateur (le backup se faisant pour l'intégralité du serveur) + 
-  * Impossible pour le moment de déplacer les utilisateurs individuellement vers un autre serveur YunoHost +**La plupart des services Framasoft sont installables via YunoHost** (environ 60% en haute qualité) et souventavec une identification utilisateur unique (SSO). [[https://yunohost.org/#/apps_framasoft|Voir la liste.]]
-  Du fait de l'utilisation de Nginxil est nécessaire de [[https://yunohost.org/#/packaging_apps_fr|packager une application]] pour la rajouter dans YunoHost (bricolage difficile sinon) +
-  * Difficile pour le moment de déplacer des applications vers d'autres domaines/sous-domaines sans les réinstaller+
  
 YunoHost étant un logiciel libre, ces contraintes sont toutefois corrigeables si vous le souhaitez, et la plupart sont d'ailleurs à l'étude dans le roadmap : https://dev.yunohost.org/ YunoHost étant un logiciel libre, ces contraintes sont toutefois corrigeables si vous le souhaitez, et la plupart sont d'ailleurs à l'étude dans le roadmap : https://dev.yunohost.org/
  
-====== Administrer YunoHost ======+===== L'administration =====
 La documentation administrateur de YunoHost couvrira la plupart de vos questions : https://yunohost.org/#/admindoc_fr La documentation administrateur de YunoHost couvrira la plupart de vos questions : https://yunohost.org/#/admindoc_fr
 Plusieurs détails d'importance pour un projet CHATONS sont toutefois présentés ci-dessous. Plusieurs détails d'importance pour un projet CHATONS sont toutefois présentés ci-dessous.
-===== Administration depuis l'interface web =====+==== Depuis l'interface web ====
 L'administration se fait simplement depuis [[https://yunohost.org/#/admin_fr|l'interface d'administration web]] L'administration se fait simplement depuis [[https://yunohost.org/#/admin_fr|l'interface d'administration web]]
  
-{{::yunohost-manage.png?nolink|}} +{{::yunohost-admin3.7.png?nolink|}} 
- +==== En ligne de commande (CLI) ====
-===== Administration en ligne de commande =====+
 YunoHost est entièrement administrable en ligne de commande si vous le souhaitez. YunoHost est entièrement administrable en ligne de commande si vous le souhaitez.
  
-La liste de commande est accessible ici : https://yunohost.org/#/moulinette_fr+La liste de commande est accessible ici : https://yunohost.org/#/commandline
  
 Quelques exemples : Quelques exemples :
-  * Ajouter un utilisateur avec 500M d'espace mail : yunohost user create -f FIRSTNAME -m MAIL -l LASTNAME -p PASSWORD -q 500M +  * Ajouter un utilisateur avec 500M d'espace mail : ''yunohost user create -f <prénom> -m MAIL -l <nom> -p <mot-de-passe> -q 500M'' 
-  * Installer Owncloud: yunohost app install owncloud_ynh +  * Installer NextCloud ''yunohost app install nextcloud_ynh'' 
-  * Backup : yunohost backup create+  * Faire une sauvegarde ''yunohost backup create'' 
 +  * Créer un nom de domaine : ''yunohost domain create <nom-de-domaine>'' 
 +  * Installer un certificat Let's Encrypt sur un nom de domaine : ''yunohost domain cert-install <nom-de-domaine>''
  
-===== Administration depuis l'API ou une application externe ===== +==== Depuis l'API ou une application externe ==== 
-**Toutes les actions executables en ligne de commande le sont également via une API.**+**Toutes les actions exécutables en ligne de commande le sont également via une API.**
  
 L'API utilise l'adresse https://VOTRESERVEUR/yunohost/api et [[https://github.com/YunoHost/yunohost/blob/1ceb1259bc5f65cc94ce7447aa71117f9ad33dd2/data/actionsmap/yunohost.yml|toutes les actions sont détaillées sur cette page]]. L'API utilise l'adresse https://VOTRESERVEUR/yunohost/api et [[https://github.com/YunoHost/yunohost/blob/1ceb1259bc5f65cc94ce7447aa71117f9ad33dd2/data/actionsmap/yunohost.yml|toutes les actions sont détaillées sur cette page]].
Ligne 60: Ligne 59:
   * GET: //curl -k -i -H "Accept: application/json" -H "Content-Type: application/json" -L -b headers -X GET https://VOTRESERVEUR/yunohost/api/ROUTE | grep }| python -mjson.tool//   * GET: //curl -k -i -H "Accept: application/json" -H "Content-Type: application/json" -L -b headers -X GET https://VOTRESERVEUR/yunohost/api/ROUTE | grep }| python -mjson.tool//
  
-**Pour simplifier l'administration à distance d'une instance YunoHost dans le cadre d'un projet CHATON, des classes API ont été développées** par des utilisateurs.+**Pour simplifier l'administration à distance d'une instance YunoHost dans le cadre d'un projet CHATONS, des classes API ont été développées** par des utilisateurs.
  
 **Par exemple, [[https://github.com/scith/yunohost-api-php|cette classe PHP]] vous permettra d'administrer votre instance YunoHost depuis une application PHP** (site web, outil de provisioning, ...). **Par exemple, [[https://github.com/scith/yunohost-api-php|cette classe PHP]] vous permettra d'administrer votre instance YunoHost depuis une application PHP** (site web, outil de provisioning, ...).
Ligne 91: Ligne 90:
 </code>  </code> 
  
-Un CHATON pourra donc très simplement développer des modules de provisioning permettant par exemple de : +Un CHATONS pourra donc très simplement développer des modules de provisioning permettant par exemple de : 
-  * **Provisioner des utilisateurs** (ajouter/modifier/supprimer) sur une instance YunoHost mutualisée +  * **Provisionner des utilisateurs** (ajouter/modifier/supprimer) sur une instance YunoHost mutualisée 
-  * **Provisioner des instances YunoHost** sur une machine virtuelle (configuration, ajout de domaines et d'utilisateurs, installation d'apps, ...)+  * **Provisionner des instances YunoHost** sur une machine virtuelle (configuration, ajout de domaines et d'utilisateurs, installation d'apps, ...)
  
  
-Il est à noter également que des modules de provisioning pour le panel open source [[http://boxbilling.com/|BoxBilling]] sont en cours de développement chez un CHATON en création. Ce projet permettra du provisioning d'utilisateurs (sur instance YunoHost mutualisée) ou d'instances YunoHost (via Proxmox) dans BoxBilling (documentation à venir) avec facturation des utilisateurs (si vous le souaitez), gestion des tickets, etc ...+Il est à noter également que des modules de provisioning pour le panel open source [[http://boxbilling.com/|BoxBilling]] sont en cours de développement chez un CHATONS en création. Ce projet permettra du provisioning d'utilisateurs (sur instance YunoHost mutualisée) ou d'instances YunoHost (via Proxmox) dans BoxBilling (documentation à venir) avec facturation des utilisateurs (si vous le souhaitez), gestion des tickets, etc ..
 + 
 +==== Utilisation ==== 
 +Les utilisateurs disposent d'un [[https://yunohost.org/#/users|portail]] qui leur permet de s'authentifier une seule fois pour les applications qui le permettent, mais aussi de gérer leur compte (adresse mails, mot de passe...). 
 +Ce portail est [[https://yunohost.org/#/theming_fr|graphiquement personnalisable]] ([[https://github.com/yunohost-themes|quelques contributeurs ont partagés leurs thèmes]]) et donne sous forme de tuiles les accès aux différentes applications qu'ils ont.
  
 ===== CHATONS utilisant YunoHost ===== ===== CHATONS utilisant YunoHost =====
 +//Triés par ordre alphabétique//
  
-  * [[https://www.weblib.re|SAMPROBOX Weblib.re]] - instance et applications auto-hébergés sur un RaspberryPI en mode Brique Internet par [[https://chatons.org/fr/chaton/samuel-vermeulen-internet-libre|SVNET Libre]]+  * [[https://1815.onth.org/|1815]] ([[https://chatons.org/fr/chaton/1815chat|Page du CHATONS]]- instance et applications auto-hébergées sur un **RaspberryPI** en mode //Brique Internet// et connecté au VPN de //FAImaison//
 +  * [[https://tools.animafac.net|Animatools]] ([[https://chatons.org/fr/chaton/animafac|Page du CHATONS]]) instance et applications hébergés sur un VPS OVH. 
 +  * [[https://www.lesamarien.fr|Le Samarien]] ([[https://chatons.org/fr/chaton/le-samarien|Page du CHATONS]]) instance et applications auto-hébergées dans une **machine virtuelle** sur un serveur local de type **ordinateur**. Description de la configuration [[https://www.lesamarien.fr/blog/l-infrastructure.html|ici]] 
 +  * [[https://sans-nuage.fr|Sans-nuage]] ([[https://chatons.org/fr/chaton/sans-nuagefr-arn|Page du CHATONS]]) - instance et applications gérées et hébergées par Alsace Réseau Neutre sur un serveur virtuel redondé sur 2 machines physiques, appartenant à l'association également.
  
 +  * [[https://www.syntax61.fr/|Syntax Informatique]] ([[https://chatons.org/fr/chaton/syntax-informatique|Page du CHATONS]]) - instance et applications auto-hébergées sur un serveur dans leur local de type **ordinateur**. Description de la configuration [[https://www.syntax61.fr/cgu-3615-domfront/|ici]].
 +  * [[https://www.weblib.re|WEBLIB.RE]] ([[https://chatons.org/fr/chaton/svnet-libre| Page du CHATONS]])- instance et applications auto-hébergés sur un **RaspberryPI** en mode //Brique Internet//. Description de la configuration [[https://www.weblib.re/dokuwiki/doku.php|ici]].
 +  * [[https://reflexlibre.net|ReflexLibre]] Plusieurs YunoHost déployés pour différent clients
 +===== Points négatifs =====
  
-<WRAP center round info 60%> +Quelques contraintes seraient toutefois à noter pour l'utilisation de YunoHost par un projet CHATONS : 
-À compléter avec des exemples d'infrastructures de CHATONS s'appuyant sur YunoHost + 
-</WRAP>+  * YunoHost est avant tout un projet dédié à l'auto-hébergement personnel ou de petit groupe. Ceci dit, plus le temps passe, plus il y a des options qui permettent d'envisager des instances accueillant de plus en plus de monde. Par exemple, la gestion des permissions et des groupes avec YunoHost 3.7. Certaines options comme l’accès des utilisateurs en SSH sont déconseillées pour les grosses instances. 
 +  * Pas de haute-disponibilité pour le moment (mais il y a une [[https://forum.yunohost.org/t/yunohost-high-availability-redundancy/1873|discussions en cours]]) et une [[https://github.com/YunoHost-Apps/fallback_ynh|application]] permet de créer un serveur de fallback 
 +  * Impossible pour le moment de faire des sauvegarde indépendamment pour chaque utilisateur 
 +  * Impossible pour le moment de déplacer les utilisateurs individuellement vers un autre serveur YunoHost 
 +  * L'installation d'applications non empaquetées nécessite de savoir ouvrir le SSO (SSOwat) et de connaître nginx (YunoHost est incompatible avec apache)
  • yunohost.1558985772.txt.gz
  • Dernière modification: 2019/05/27 21:36
  • de samvermeulenpro