Seafile

Seafile

Chaque bibliothèque se synchronise et se chiffre à part

Seafile est un serveur de synchronisation et de partage de fichiers à héberger soi-même. Les fichiers y sont rangés en bibliothèques : chacune se synchronise à part sur les ordinateurs et les téléphones, se partage avec des utilisateurs ou des groupes, et peut être chiffrée par un mot de passe. Le cœur du serveur est écrit en C, l'interface web Seahub en Python et JavaScript. Seafile Ltd. publie deux éditions : Community, libre, et Professional, sous licence propriétaire.

Seafile n'a ni agenda ni carnet de contacts, là où Nextcloud ajoute les deux, avec un magasin de plusieurs centaines d'applications.

Le comparatif des clouds personnels auto-hébergés met le chiffrement et les éditions de Seafile face à ceux des autres outils.

Envoi des seuls blocs modifiés et historique façon Git

  • Synchronisation par blocs : Seafile découpe chaque fichier en blocs de taille variable selon son contenu (8 Mo en moyenne d'après la documentation), et le client n'envoie que ce qui a changé. Un transfert interrompu reprend où il s'était arrêté, et les conflits se tranchent sur l'historique de la bibliothèque, pas sur la date des fichiers.
  • Un historique à la manière de Git : chaque envoi crée un commit, instantané de la bibliothèque. Les blocs communs à deux versions d'un fichier ne sont stockés qu'une fois.
  • Synchronisation sélective et lecteur virtuel : n'importe quel dossier se synchronise seul, un client suit plusieurs serveurs, et SeaDrive monte les bibliothèques comme un disque dont les fichiers ne se téléchargent qu'à la demande.
  • Édition dans le navigateur : SeaDoc, l'éditeur collaboratif maison, un wiki, un tableau blanc Excalidraw, et OnlyOffice ou Collabora Online en intégration.
  • Double authentification, LDAP et WebDAV dans l'édition libre : codes TOTP, connexion par LDAP ou Active Directory, serveur WebDAV fourni et désactivé par défaut.

Noms de fichiers en clair, recherche réservée à la Pro

L'édition Community ne s'installe plus qu'en conteneurs. Depuis la 13.0, les paquets binaires sont réservés à l'édition Pro : l'édition Community passe par Kubernetes ou par Docker Compose, dont la pile réunit MariaDB, Redis et Caddy, sur x86 ou ARM64. SQLite n'est plus accepté depuis la 11.0. La documentation demande au moins 2 Go de RAM, 2 cœurs et 10 Go de disque.

Les fichiers ne sont pas stockés tels quels. Sur le serveur, une bibliothèque est une suite de commits, d'objets et de blocs ; la documentation attribue à cette architecture les performances de Seafile. Parcourir le dossier de données ne rend aucun document : seaf-fsck.sh --export reconstruit les bibliothèques dans un système de fichiers ordinaire, mais saute celles qui sont chiffrées. Supprimer un fichier ne libère rien tant que le ramasse-miettes seaf-gc.sh n'est pas passé.

Le chiffrement des bibliothèques laisse les noms en clair. Le contenu est chiffré en AES-256, mais pas les noms des dossiers et des fichiers, ni les tailles, ni l'historique des modifications. Seul le client de synchronisation de bureau chiffre sur le poste. Dans le navigateur, le serveur reçoit le mot de passe et déchiffre lui-même ; les applications iOS et Android le lui envoient depuis leur version 3.0.0, et une bibliothèque créée sur le web fait transiter ses clés par le serveur. Un administrateur peut aussi modifier en partie un fichier chiffré sans que le client s'en aperçoive. Hoodik chiffre au contraire tout dans le navigateur, noms de fichiers compris.

Les anciennes bibliothèques chiffrées gardent une dérivation de clé faible. Jusqu'à la version 12, le mot de passe passait par PBKDF2-SHA256 à 1 000 itérations, « loin d'être sûr » selon la documentation. Argon2id est désormais au choix de l'administrateur, pour les nouvelles bibliothèques seulement. Un mot de passe oublié rend la bibliothèque illisible.

L'édition Pro garde la recherche, le S3 et le cluster. D'après la documentation, elle seule a la recherche plein texte (qui n'indexe pas les bibliothèques chiffrées), les permissions par sous-dossier, les journaux d'audit, le stockage S3, le déploiement en cluster, l'antivirus, SAML 2.0 et la synchronisation des groupes LDAP. Sa licence interdit toute œuvre dérivée : le code source fourni sert à l'audit de sécurité. Elle tourne sans licence jusqu'à trois utilisateurs ; au-delà, l'abonnement annuel coûte 48 $ par utilisateur de 10 à 249 comptes.

Une version majeure par an, la 14.0 encore en test. La 11.0 est passée en version stable en novembre 2023, la 12.0 en janvier 2025, la 13.0 en octobre 2025. L'édition Community a reçu neuf versions correctives de la 13.0 entre février et septembre 2026, la dernière, 13.0.28, publiée sur Docker Hub le 18 septembre. La 14.0 ne circule qu'en images -testing, depuis mai 2026 pour la Pro, et la documentation désigne toujours la 13.0 comme version courante.