YunoHost 3.4 release / Sortie de YunoHost 3.4

:gb: English version

Hello everyone!

We’re happy to release a new stable version: version 3.4 :partying_face:!

This release includes various highlights :sparkles::

  • YunoHost will now ask confirmation if you attempt to install apps with questionable quality (experimental, low-level or third-party). This change is made to clarify to users what can be expected of such apps, and to avoid inadvertently breaking your system with bad-quality apps. This should also encourage even more packagers to improve the quality of their apps;
  • the SSH configuration has been hardened and should now be handled by YunoHost. A migration has to be ran manually after the upgrade for this change to take effect. Note that after applying this migration you will have to use the admin user (instead of root) when connecting through SSH! You might also encounter this kind of spooky warning and will have to remove the old cryptographic fingerprint in your ssh clients;
  • HTTP2 has been enabled in nginx configurations, which is likely to make browsing faster (though we do not have quantified info about that :stuck_out_tongue_winking_eye: );
  • some other security improvements / fixes (in particular to protect against some CSRF attacks);
  • a few important bugs were fixed, as well as various smaller ones. Namely, the infamous “infinite pacman” bug should happen much less often;

Thanks to all contributors (Aleks, A. Garaialde, A. Pierré, ButterflyOfFire, Bram, irina11y, Josué, J. Meggyeshazi, kay0u, Maniack Crudelis, M. Martin, P. Joelson, Quenti, Sylkevicious, T. Hill, anubis, aleiyer, chateau, frju365, gdayon, liberodark, ljf, randomstuff, nqb, wilPoly)! :heart:

:scroll: Detailed changelog

:rainbow: Highlights

:hammer_and_wrench: Misc fixes / improvements

UI,UX
Core, security
  • [enh] Update spectre meltdown checker (YunoHost#620)
  • [fix] Add libpam-ldapd as dependency to be able to login through SSH with LDAP users (Yunohost#587)
  • [enh] Update ECDH curves recommended by Mozilla, now that we are on stretch (Yunohost#579)
  • [enh] Use more_set_headers in nginx config + fixes for path traversal issues (Yunohost#564)
  • [fix] Explicit dependance to iptables (YunoHost/1667ba1)
  • [fix] Correctly generate DKIM keys for new domains when they are added (Yunohost/0445aed)
  • [enh] Handle apps hosted on GitLab properly (YunoHost#615)
  • [enh] Simplify error management (Yunohost#574, Moulinette#180)
  • [fix] Several issues with bootprompt (YunoHost#609)
  • [fix] Set owner of archives folder to ‘admin’ so that backup archives can be copied out of the server with the admin user (YunoHost#613)
  • [fix] Propagate --no-checks cert-install option to renew crontab (YunoHost#610)
Helpers, app packaging
  • [enh] Add systemd log handling in yunohost service add (YunoHost#624)
  • [enh] Allow to not fail on backup and restore for non-mandatory files (Yunohost#576)
  • [fix] Deprecate the use of separate ini file for php apps (Yunohost#548, Yunohost#627)
  • [enh] Switch to PCRE regex for rules in conf.json (SSOwat#102)
  • [fix] Fix the way change_url updates the domain/path (YunoHost#608, YunoHost#626)
  • [enh] Add reload and restart actions to yunohost service command (YunoHost#611)
  • [enh] Add post_cert_update hook each time certificate is updated (Yunohost#586)
Misc technical fixes and improvements

Yunohost#601, Yunohost#600, Yunohost#593, Yunohost#595, Moulinette#187, Moulinette#182, Moulinette#181, Moulinette#185, YunoHost#607, YunoHost#616, YunoHost#628, YunoHost#632, YunoHost/969577b, YunoHost/51712f9

:arrow_up: How to upgrade

From the web admin

  • Go to “Update system”
  • Then hit the “Update” button in the “System” block.

Or from the command line

$ apt-get update
$ apt-get dist-upgrade

:newspaper: Misc news about the project

This release is a significant step forward, yet the flow of pull request does not stop! There are still quite a lot of importants features and improvements to come, not to mention more technical stuff like the coming release of Debian Buster in a few months :wink:.

In terms of organization, we are still finalizing the bank account opening to finaly open a stable donation mechanism. We are also still attempting to obtain funding to pay for some specific development, via the Support Self-Hosting association :money_mouth_face:.

Finally, a poll was opened to better understand why and how you use YunoHost in everyday life! It would help us if you could take a few minutes to answer :blush: : [Poll] What do you use YunoHost for?


:fr: Version française

Salut tout le monde !

Nous sommes heureux d’annoncer une nouvelle version stable, la version 3.4 :partying_face: !

Cette version intĂšgre plusieurs changements importants :sparkles: :

  • DĂ©sormais, YunoHost demandera confirmation si vous essayez d’installer des applications de qualitĂ© douteuse (expĂ©rimentale, de bas niveau ou packagĂ©es par des tiers). Ce changement est lĂ  pour clarifier le fait que de telles applications peuvent ĂȘtre incomplĂštes et peuvent casser votre systĂšme. En outre, cela devrait encourager encore un peu plus les packageurs Ă  amĂ©liorer la qualitĂ© de leurs applications ;
  • la configuration SSH a Ă©tĂ© durcie et devrait maintenant ĂȘtre gĂ©rĂ©e de maniĂšre standardisĂ©e par YunoHost. Une migration doit ĂȘtre exĂ©cutĂ©e manuellement aprĂšs la mise Ă  niveau pour que cette modification prenne effet. Notez qu’aprĂšs avoir appliquĂ© cette migration, vous devrez utiliser l’utilisateur admin (au lieu de root) lors de la connexion via SSH ! Il est Ă©galement possible que vous rencontriez un avertissement qui fait peur et qu’il vous faille supprimer l’ancienne empreinte cryptographique de vos clients ssh ;
  • HTTP2 a Ă©tĂ© activĂ© dans les configurations nginx, ce qui est susceptible de rendre la navigation plus rapide (bien que nous n’ayons pas d’informations quantifiĂ©es Ă  ce sujet :stuck_out_tongue_winking_eye: ) ;
  • quelques autres amĂ©liorations et correctifs de sĂ©curitĂ© (en particulier pour se protĂ©ger contre certaines attaques de type CSRF) ;
  • plusieurs bugs importants ont Ă©tĂ© corrigĂ©s, ainsi que de nombreux autres, plus petits. En particulier, le cĂ©lĂšbre bug du “pacman infini” devrait se produire beaucoup moins souvent
 ;

Merci à tous les contributeur.ice.s (Aleks, A. Garaialde, A. Pierré, ButterflyOfFire, Bram, irina11y, Josué, J. Meggyeshazi, kay0u, Maniack Crudelis, M. Martin, P. Joelson, Quenti, Sylkevicious, T. Hill, anubis, aleiyer, chateau, frju365, gdayon, liberodark, ljf, randomstuff, nqb, WilPoly) ! :heart:

:scroll: Details des changements

:rainbow: Changements majeurs

  • [enh] Demande de confirmation lors de l’installation d’applications expĂ©rimentales ou de faible qualitĂ© (Yunohost#598,Yunohost-admin#218)
  • [fix] AmĂ©lioration et standardisation de la configuration sshd (Yunohost#518,Yunohost#590)
  • [enh] Protection contre les CSRF (Moulinette#171, Moulinette#174)
  • [enh] Activation de HTTP2 dans les configurations nginx (Yunohost#580, Yunohost#618)
  • [fix] ProblĂšme du pacman qui tourne Ă  l’infini (les erreurs 500 n’étaient pas gĂ©rĂ©es correctement) (Yunohost-admin#220,Moulinette#180)
  • [i18n] AmĂ©lioration des traductions pour l’arabe, le basque, l’occitan, l’italien, l’espagnol, le hongrois, l’espĂ©ranto, l’allemand, le chinois (mandarin) et le suĂ©dois.

:hammer_and_wrench: Correctifs et améliorations diverses

UI,UX
  • [enh] Affichage de dates comprĂ©hensibles par des humains, et clarification de la gestion des fuseaux horaire (Yunohost#552,Yunohost-admin#216,Moulinette#184))
  • [enh] Ajout d’une option pour purger les donnĂ©es de l’utilisateur lors de leur suppression via la webadmin (Yunohost-admin#221)
  • [enh] Supprimer Ă©galement le rĂ©pertoire /var/mail/username lors de la suppression d’un utilisateur (avec l’option --purge) (Yunohost#602))
  • [fix] Ne pas relancer les vĂ©rifications initiales Ă  chaque fois que la page d’accueil est affichĂ©e (Yunohost-admin#217)
  • [fix] Les essages de niveau DEBUG n’apparaissaient pas dans les logs quand les actions sont effectuĂ©es via l’API (Yunohost#603)
  • [enh] Ajouter des boutons “selectionner tout/rien” sur les pages de crĂ©ation et de restauration de sauvegardes de l’administrateur web (YunoHost-admin#224)
  • [fix] “Erreur 500” sur ssowat aprĂšs modification du mot de passe utilisateur (SSOwat#114)
  • [fix] Meilleure gestion de l’erreur super cryptique “error 0” (YunoHost-Admin/4884bff)
    *[i18n] Changements d’orthotypographie (YunoHost#612,YunoHost-admin#223,Moulinette#190)
Core, sécurité
  • [enh] Mise Ă  jour du script de diagnostique pour Spectre/Meltdown (YunoHost#620)
  • [fix] Ajout de libpam-ldapd comme dĂ©pendance pour pouvoir se connecter en SSH avec les utilisateurs LDAP (Yunohost#587)
  • [enh] Mise Ă  jour des courbes ECDH telles que recommandĂ©es par Mozilla, maintenant que nous sommes en stretch (Yunohost#579)
  • [enh] Utilisation de more_set_headers dans les configurations de nginx + corrections pour les problĂšmes de path traversal (Yunohost#564)
  • [fix] DĂ©pendance explicite Ă  iptables (YunoHost/1667ba1)
  • [fix] GĂ©nĂ©rer les clĂ©s DKIM pour les nouveaux domaines lorsqu’ils sont ajoutĂ©s (Yunohost/0445aed)
  • [enh] Gestion des applications hĂ©bergĂ©es sur GitLab (YunoHost#615)
  • [enh] Simplification de la gestion des erreurs (Yunohost#574,Moulinette#180)
  • [fix] Plusieurs problĂšmes avec le bootprompt (YunoHost#609)
  • [fix] Changement de propriĂ©taire du dossier archives en ‘admin’ pour que les archives de sauvegarde puissent ĂȘtre copiĂ©es depuis le serveur avec l’utilisateur admin (YunoHost#613).
  • [enh] Propagation de l’option --no-checks sur le cron de renouvellement de certificat (YunoHost#610)
Helpers, app packaging
  • [enh] Ajout de la gestion des journaux systend via la commande yunohost add (YunoHost#624)
  • [enh] Choisir le shell de connexion lors de la crĂ©ation d’utilisateurs avec ynh_system_user_create (YunoHost#455,YunoHost#629)
  • [fix] Permettre de ne pas Ă©chouer lors de la sauvegarde et de la restauration de fichiers non obligatoires (Yunohost#576)
  • [fix] DĂ©conseiller l’utilisation d’un fichier php-fpm ini sĂ©parĂ© pour les applications php (Yunohost#548,Yunohost#627)
  • [enh] Passage aux regex PCRE pour les rĂšgles du fichier conf.json (SSOwat#102)
  • [fix] Correction de la façon dont change_url met Ă  jour le domaine/chemin (YunoHost#608,YunoHost#626))
  • [enh] Ajouter des actions de restart et reload Ă  la commande `yunohost service’ (YunoHost#611)
  • [enh] Ajout d’un hook post_cert_update Ă  chaque mise Ă  jour du certificat (Yunohost#586)
Autres corrections et améliorations techniques

Yunohost#601, Yunohost#600, Yunohost#593, Yunohost#595, Moulinette#187, Moulinette#182, Moulinette#181, Moulinette#185, YunoHost#607, YunoHost#616, YunoHost#628, YunoHost#632, YunoHost/969577b, YunoHost/51712f9

:arrow_up: Comment mettre Ă  jour

Depuis la webadmin

  • Aller dans “Mettre Ă  jour le systĂšme”
  • Puis cliquez sur “Mettre Ă  jour” dans le bloc “SystĂšme”.

Ou Ă  partir de la ligne de commande

$ apt-get update
$ apt-get dist-upgrade

:newspaper: Autres nouvelles du projet

Cette version est un grand pas en avant, et pourtant le flux de pull requests ne diminue pas ! Il y a encore beaucoup de fonctionnalitĂ©s et d’amĂ©liorations importantes en prĂ©paration, sans parler de choses plus techniques comme la publication prochaine de Debian Buster dans quelques mois :wink:.

En termes d’organisation du projet, nous sommes encore en train de finaliser l’ouverture d’un compte bancaire pour finalement rĂ©ussir Ă  mettre en place un mĂ©canisme stable de rĂ©ception des dons. Nous essayons aussi d’obtenir des subventions pour financer certains dĂ©veloppements, via l’association Support Self-Hosting :money_mouth_face:.

Et pour finir, nous avons ouvert un sondage pour connaßtre un peu mieux les besoins auquels YunoHost réponds dans votre quotidien ! Cela nous aiderait si vous pouviez prendre quelques minutes pour répondre :blush: : [Poll] What do you use YunoHost for?

12 Likes

Thanks for your work :tada:

I just upgraded one raspberry without troubles :slight_smile:

I have two questions :

  • A new line added to /etc/ssh/sshd_config (Banner /etc/issue.net) is printing OS server version in every ssh connexion attempt, which was not the case before.
    I tend to think that this kind of information could help attackers, but maybe there is a good reason to print that ?

  • In the web admin, I have now an error message regarding Meltdown check :

Unable to check for meltdown vulnerability: Command output for failed meltdown check: 'We’re missing some kernel info (see -v), accuracy might be reduced We’re missing some kernel info (see -v), accuracy might be reduced [{“NAME”:“MELTDOWN”,“CVE”:“CVE-2017-5754”,“VULNERABLE”:false,“INFOS”:“your CPU vendor reported your CPU model as not vulnerable”}] ’

Something wrong happened when trying to diagnose Meltdown vunerability, exception: No JSON object could be decoded

Is it normal ?

That’s a good question. I don’t really know about what’s recommended. Though I really doubt that by itself it “help attackers”. Like 
 yeah it leaks some info about the distro / hardware, but if this info is enough for an attacker to compromise your system, I doubt that the issue lies in the banner being displayed :/. Not to mention that this looks like nothing compared to the fact that, currently, you can know the Yunohost version just by going to ip.of.server/yunohost/admin (or there’s an API route for that)

Interestingly, some website recommend to setup a spooky warning for attackers, c.f. : HowTo: Set a Warning Message (Banner) in SSH - ShellHacks

Yes indeed. That’s not something to worry too much about (the message in fact says your hardware aint vulnerable). It just complains about missing some kernel info which might lead to diagnosis innacuracy 
 and turns out YunoHost’s code doesn’t handle the parsing of the whole thing properly. Anyway, I pushed a fix and will release it with a few others :wink:

Edit : released 3.4.2.1

3 Likes

On YunoHost 3.3, if you open a SSH session with the -v, you already see this information:

debug1: Remote protocol version 2.0, remote software version OpenSSH_7.4p1 Debian-10+deb9u4

Hi thanks for the update

during the update I got this:


(
)
Processing triggers for initramfs-tools (0.130) 

Setting up ssowat (3.4.2) 

Session closed.


after a reboot I get now:

apt-get dist-upgrade
E: dpkg was interrupted, you must manually run ‘dpkg --configure -a’ to correct the problem.

Can you help THANKS

Ok

worked

Release is available for docker ! Don’t hesitate to give me comebacks :slight_smile:

2 Likes

Congratulations on the release team :slight_smile: . Upgraded my server to the lastest without issue. Huge thank you for all your work :heart:

Maybe it’s been discussed before, but have you guys thought about accepting donations from users via Liberapay or something?

1 Like

Yes, this has been a recurring topic for more than a year now I think :wink: We are still in the process of finishing to bank account creation to have a true and long-term donation system (obviously it sounds like we’re loosing money in the meantime, but we’re volunteer and this whole bureacratic process is long and boring so that takes time :sweat_smile:)

1 Like

Nice, look forward to seeing what you come up with. :sweat_smile:

1 Like

I’ve been donating via liberapay the past few month, does that mean you don’t get our liberapay’s donations at the moment? :open_mouth:

Thanks for the continued hard work of all the team ! :hugs:

:question: How is the change of SSH port managed ? If I touch the config, will it be preserved or squashed in future updates ? (Maybe a diff message would be nice ?)

We get them don’t worry, but also : thx a lot :heart:

Merci beaucoup pour toutes ces supers avancées :slight_smile:
Concernant le point “AmĂ©lioration et standardisation de la configuration sshd” : y a-t-il un risque que cela casse quelque chose lors de l’upgrade si on a personnalisĂ© en amont la connexion SSH en suivant https://yunohost.org/#/security_fr (authentification par clĂ© & modification du port SSH) ? Merci d’avance pour le retour !!

Salut,

Les changements apportĂ©s Ă  la conf n’arriverons qu’aprĂšs lancement manuel (ou ‘skip’) de la migration, donc tu peux dans tous les cas mettre Ă  jour ton serveur quand mĂȘme.

Le ‘disclaimer’ de la migration t’indiquera les changements importants, notamment si il y a un retour au port par dĂ©faut. Dans ce cas, il faut que le port 22 puisse ĂȘtre accessible 
 A part ça, tu devrais pouvoir te logger en admin (avec le mot de passe correspondant).

Ensuite, tu peux re-changer le port dans la conf si tu le souhaites, ou bien avant tout ça de skip la migration pour garder ta conf en l’état. Dans ces deux cas, si le fichier n’est pas conforme Ă  la recommendation de yunohost, il sera considĂ©rĂ© comme “modifiĂ© manuellement” et donc non mis Ă  jour.

J’espĂšre que ça rĂ©ponds Ă  la question :wink:

Bonjour @Aleks,

Suite Ă  la migration 3.4, je ne pouvais plus me connecter avec ma clef ssh en tant que root ou admin. Pour restaurer l’accĂšs, j’ai dĂ» copier le .ssh/authorized_keys2 de l’utilisateur root vers admin

Voir ce post pour les commandes utilisées:

Super @Aleks pour les explications :slightly_smiling_face:.
Avec ça et tes retours ci-dessus @Gofannon, ça devrait le faire.
Merci Ă  vous !

1 Like

Very great update :smiley:

1 Like

Bonjour tout le monde !

Merci pour cette MĂ J. BĂ©mol, mĂȘme aprĂšs la migration, des fichiers sont toujours la propriĂ©tĂ© de Root, et je ne peux y accĂ©der. Comme des logs, par exemple.

Est-ce normal ? :slight_smile: