Faites tourner vous-même le serveur de synchronisation.
Le serveur de synchronisation stocke des boîtes scellées, tient un compteur pour chaque coffre et vérifie une signature avant d'accepter une modification. Il ne détient jamais de clé et ne voit jamais de nom, faire tourner votre propre copie coûte donc très peu.
Choisissez où il tourne et où vivent les objets. La page écrit la configuration, et vous la collez là où elle doit aller.
Trois endroits où il peut vivre.
Le même code sert les trois. Un Cloudflare Worker ne demande rien de plus qu'un compte ; un binaire ou un conteneur demande une machine que vous avez déjà. Quel que soit votre choix, les clés du coffre restent sur vos appareils.
Cloudflare Worker
L'offre gratuite porte un petit serveur. L'index est une base de données D1 et les objets vont dans un bucket compatible S3, il n'y a donc rien à faire tourner et rien à payer pour un coffre privé.
Un binaire natif
Un processus sur Linux, macOS ou Windows. Il sert du HTTP simple et attend un proxy devant lui pour le HTTPS. Les boîtes sont scellées et signées dans tous les cas, le HTTP simple n'est donc pas une faiblesse ici.
Un conteneur
Le même binaire avec les mêmes réglages, passés comme variables d'environnement. Utilisez-le quand la machine fait déjà tourner des conteneurs et que vous préférez ne pas compiler depuis les sources.
Aucun serveur du tout
La synchronisation est facultative. Un coffre peut rester sur un seul appareil avec une sauvegarde locale, et ne jamais toucher un réseau. Ajoutez un serveur plus tard sans rien changer à l'intérieur du coffre.
Répondez à quatre questions, copiez le résultat.
Les réglages ont une seule forme partout : un champ TOML, ou ce même champ comme variable d'environnement. Le Worker n'accepte que les buckets S3 ; un binaire et un conteneur écrivent aussi dans de simples répertoires et dans un dépôt Git.
Téléchargez et décompressez le ZIP pour l’auto-hébergement. Aucun compilateur Rust n’est nécessaire.
GitHub Releases · self-host ZIP
Configuration mise à jour.
Créez la base de données et le bucket avant le déploiement. Remplacez tous les paramètres fictifs.
Créez les répertoires de stockage et remplacez tous les paramètres fictifs avant le démarrage.
Échec de la copie. Sélectionnez le texte et copiez-le manuellement.
Échec de la copie. Sélectionnez le texte et copiez-le manuellement.
Les secrets restent dans les secrets du Worker, jamais dans le fichier. Le Worker n'écrit que dans un stockage compatible S3.
Le binaire sert du HTTP simple. Mettez un proxy devant lui quand la machine est accessible depuis internet.
Le conteneur écoute sur toutes ses interfaces internes, le port publié l'atteint donc.
Choisissez au moins un emplacement pour les boîtes scellées. Le serveur refuse de démarrer sans cela.
Les valeurs entre chevrons sont à vous de remplir. Rien de ce que vous tapez ici ne quitte la page : le texte est assemblé dans votre navigateur.
Dirigez vos coffres vers lui.
Un nouveau coffre utilise sync.confidex.me. Changer l'adresse est un seul réglage dans l'application, et le coffre continue de fonctionner : l'adresse ne fait partie ni du coffre ni de son identité.
- Dans l'application
- Ouvrez les réglages du coffre et remplacez l'adresse du serveur de synchronisation par la vôtre. Le client ajoute lui-même le chemin de l'API.
- Origine partagée
- L'application et l'API peuvent vivre sur un seul domaine. Routez le préfixe de l'API vers le serveur et tout le reste vers l'application.
- Comptes
- Aucun à créer. Un coffre s'enregistre lui-même en téléversant son verrou signé, et seul le détenteur de la clé de signature peut le remplacer.
- Plusieurs serveurs
- Un coffre parle à un seul serveur à la fois. Passer à un autre est le même réglage unique.
Ce qu'un propriétaire de serveur doit faire.
Très peu, et rien de cela n'implique de secrets. Le serveur détient des boîtes scellées et un index qui y pointe. Une sauvegarde est une copie des deux.
Sauvegardes
Copiez ensemble l'index et le stockage des objets. Les objets sont immuables et nommés par leur empreinte, une copie faite pendant que le serveur tourne reste donc valide.
Mises à jour
Remplacez le binaire ou redéployez le Worker. Le schéma de l'index est appliqué au démarrage pour un index natif et avec un fichier de schéma pour D1.
Accès
Les identifiants de stockage autorisent le serveur auprès de son propre stockage. Ils n'ont rien à voir avec les clés du coffre et ne peuvent ouvrir aucune boîte.
La licence
Le serveur est sous licence GNU AGPL-3.0. Les modifications que vous faites tourner pour d'autres restent ouvertes ; une copie que vous faites tourner pour vous-même ne porte aucune obligation.