Le 28 octobre entre 11h et 13h environ (voir le statut pour les détails) nous avons procédé à une maintenance sur le serveur principal de JabberFR, ainsi que sur notre serveur de statistiques.
Côté XMPP
Le but premier de cette maintenance était de mettre à niveau prosody pour résoudre les problèmes rencontrés depuis la dernière fois, qui rendaient la vie des utilisateurs assez désagréable :
- La désactivation de FAST pour l’authentification, qui a engendré un nombre incalculable d’erreurs affichées par notamment Conversations, qui avertissait d’un faux problème de sécurité, demandant à confirmer périodiquement des choses dans un sous-menu très peu facilement trouvable.
- La désactivation de smacks (XEP-0198) qui fait que les déconnexions/reconnexions étaient plus coûteuses en batterie et moins « transparentes » pour les clients mobiles.
Ces deux objectifs ont, à priori, été atteints.
Nous avons également purgé l’historique des messages de notre service Biboumi, qui se comptaient dans les dizaines de millions, ce qui n’aidait pas les performances de ce service.
Côté système
Nous en avons aussi bien sûr profité pour faire une mise à jour complète du système, incluant le passage de Linux LTS 5.15 à 6.1, dans l’espoir qu’il corrige l’utilisation mémoire perdue à jamais (ici après 338 jours d’uptime, notre serveur arrivait au bout de sa mémoire disponible, car il ne dispose que de 8 Gio et plus de 3 étaient alloués et non libérables dans le noyau !).
Sans incidence sur les utilisateurs, nous avons également mis à jour la machine de statistiques.
HTTP Upload
Enfin, nous sommes passés au nouveau composant Prosody pour la gestion des envois de fichiers par les utilisateurs, http_file_share plutôt que l’ancien http_upload. Le nouveau module nous permet de tracer quels fichiers ont été envoyés par quel utilisateur, de gérer des quotas, des permissions, ainsi que l’expiration des fichiers.
Le nouveau module garantit donc un quota de 200 Mio par utilisateur et par jour (précédemment illimité), avec des envois limités à 100 Mio (contre 10 précédemment). De plus, les fichiers seront supprimés après deux semaines.
Les fichiers envoyés sur le précédent composant sont toujours accessibles, mais le dossier sera supprimé dans deux semaines, pensez-y si vous avez des fichiers que vous comptez préserver !
Enregistrements CAA
Suite à la découverte d’une attaque MitM (“Machine in the Middle”) sur le serveur jabber.ru, probablement réalisée à la demande d’agences gouvernementales ou de la justice sur leurs divers hébergeurs, nous avons mis en place des enregistrements CAA pour garantir que seul notre compte auprès de Let’s Encrypt a le droit de demander des certificats pour notre domaine.
JabberFR proposait déjà la variante « -PLUS » sur les différents mode d’authentification SCRAM, qui permet d’avoir du « Channel Binding » qui permet de garantir que la connexion est bien faite directement au serveur, et pas à un attaquant qui se placerait entre les deux, même avec un certificat valide.
Nous allons de plus ajouter prochainement des enregistrement TLSA (DANE) afin d’avoir un point de validation supplémentaire pour les clients qui l’implémentent.
Enfin, nous publions déjà depuis longtemps nos certificats actuels sur la page Certificats du site, mais un attaquant avec des certificats valides pourrait facilement la trafiquer au passage, elle n’est donc pas suffisante contre ce genre d’attaques.