12 KiB
title: Duplicati created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, backups, deduplication, encryption, cloud, s3, b2, sftp, webdav, duplicati, snapshot, incremental, versionning, docker, csharp, lgpl] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Backups, https://github.com/duplicati/duplicati]
💾 Duplicati
Le backup « grand public » self-hosted : une interface web simple, un wizard de configuration, plus de 20 backends supportés, et un chiffrement AES-256 natif. Idéal pour un utilisateur qui veut juste que ça marche.
📋 Informations Générales
| Champ | Valeur |
|---|---|
| Site web | duplicati.com |
| GitHub | duplicati/duplicati |
| License | LGPL-2.1 |
| Langage | C# (Mono / .NET) |
| Étoiles GitHub | 14,6k ⭐ |
| Dernière MAJ | 2026-06-05 |
| Catégorie | [[cat-backups |
📝 Description
Duplicati est un client de sauvegarde multi-plateforme (Windows, Linux, macOS) avec une interface web intégrée. Sa philosophie est radicalement opposée à celle de app-restic : là où restic est un outil CLI pur pensé pour des sysadmins, Duplicati vise explicitement l'utilisateur domestique ou la PME qui veut programmer des sauvegardes chiffrées vers le cloud sans toucher au terminal.
Le moteur de Duplicati implémente la déduplication par bloc (taille variable, par défaut 100 KB) couplée à un chiffrement AES-256 côté client. Chaque sauvegarde est découpée en volumes (dlist, dblock, dindex) qui sont envoyés au backend, ce qui permet d'avoir des incréments légers : après le premier full, un ajout de quelques fichiers ne transfère que les nouveaux blocs. Le format de fichier est spécifique à Duplicati (ce n'est pas un format ouvert comme restic ou Kopia), ce qui signifie qu'on ne peut restaurer qu'avec Duplicati lui-même.
Le point fort historique de Duplicati, c'est l'extraordinaire variété de backends supportés : S3, B2, Google Cloud Storage, Azure Blob, WebDAV, SFTP, SSH, FTP, OpenStack Object Storage / Swift, Rackspace Cloudfiles, OneDrive, Google Drive, Dropbox, Hubic, Box.com, Amazon Cloud Drive, S3-compatible (Wasabi, MinIO, Scaleway, OVH…), et même file:// pour un disque local. C'est l'un des rares outils où l'on peut changer de provider cloud sans réécrire sa config.
L'UI web, servie par défaut sur le port 8200, propose un wizard de configuration en 5 étapes : on donne un nom, on choisit le backend, on saisit les credentials, on sélectionne les fichiers source, on fixe la planification, et c'est parti. C'est exactement la cible que vise Duplicati : « backup en 5 minutes pour quelqu'un qui ne connaît rien à Linux ».
Le revers de la médaille : Duplicati est écrit en C# et tourne sur Mono (anciennement) puis sur .NET (depuis la v2). Il a souffert pendant plusieurs années d'un ralentissement de la cadence de release et d'une équipe principale en sous-effectif. La v2 stable a longtemps tardé, et l'écosystème est moins dynamique que celui de app-restic ou app-kopia. Le projet reste fonctionnel et maintenu, mais il est raisonnable de le considérer comme en perte de vitesse par rapport à des alternatives plus modernes.
Comparé à ses principaux rivaux :
- vs app-restic : restic est un outil CLI plus minimaliste, avec un format ouvert, plus rapide, plus léger (un seul binaire Go). Duplicati gagne sur l'UI web prête à l'emploi et la variété de backends.
- vs app-kopia : Kopia est plus jeune, propose une UI desktop (pas web), un format de repo plus moderne, et une cadence de release plus soutenue. C'est aujourd'hui le principal challenger dans la même catégorie.
- vs app-duplicacy : Duplicacy mise sur une déduplication globale multi-utilisateur (lock-free) qui permet de mutualiser un backend entre plusieurs clients ; Duplicati est mono-tenant.
Public cible : débutant à intermédiaire. Parfait pour un homelab qui veut une UI web sans se battre avec un cron et un binaire CLI.
🚀 Installation
Option 1 : Docker Compose (recommandé)
# docker-compose.yml
version: '3.8'
services:
duplicati:
image: lscr.io/linuxserver/duplicati:latest
container_name: duplicati
restart: unless-stopped
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Paris
- CLI_ARGS=
volumes:
- duplicati-config:/config
- /mnt/data:/source/data:ro
- /mnt/backups-local:/backups
labels:
- "traefik.enable=true"
- "traefik.http.routers.duplicati.rule=Host(`duplicati.example.com`)"
- "traefik.http.routers.duplicati.entrypoints=websecure"
- "traefik.http.routers.duplicati.tls.certresolver=letsencrypt"
volumes:
duplicati-config:
Note
: l'image
linuxserver/duplicatiest recommandée car elle inclut Mono et toutes les dépendances système correctement configurées, là où l'image officielleduplicati/duplicatireste plus austère.
Option 2 : Natif (Windows / Linux / macOS)
# Linux : .deb / .rpm disponibles sur duplicati.com
wget https://updates.duplicati.com/beta/duplicati_2.0.8.1-1_all.deb
sudo dpkg -i duplicati_2.0.8.1-1_all.deb
# Ou en mode headless
mono Duplicati.CommandLine.exe backup "sftp://user@host//path?auth-username=user&auth-password=pass" \
/source/path --encryption-password="change-me"
# macOS / Windows : installer graphique depuis le site officiel
⚙️ Configuration Initiale
- Accéder à l'UI web sur
https://duplicati.example.com(ouhttp://IP:8200). - Configurer un premier backup via le wizard :
- General : nom du backup, encryption passphrase (AES-256).
- Destination : choix du backend (S3, B2, SFTP, local…) + credentials.
- Source data : sélection du dossier à sauvegarder (avec ou sans filtres d'exclusion).
- Schedule : planification (manuel, daily, weekly, custom cron).
- Choisir la politique de rétention : combien de versions garder, supprimer automatiquement les sauvegardes de plus de X jours/semaines/mois.
- Tester un premier run : bouton Run now et inspecter les logs (
Show log → Verbose). Vérifier la taille transférée (au moins aussi grosse qu'attendu pour le premier, puis faible pour les incréments). - Activer les notifications : onglet Settings → Notifications → e-mail, Sentry, ou webhook générique.
- Tester une restauration : onglet Restore, choisir une sauvegarde, sélectionner un sous-ensemble, et restaurer dans un dossier temporaire. Indispensable : un backup non testé n'est pas un backup.
🔄 Alternatives
Open Source
- app-restic — Standard CLI, format ouvert, plus rapide, plus moderne.
- app-kopia — UI desktop + CLI, snapshot policies riches, format propriétaire moderne.
- app-backrest — UI web au-dessus de restic, l'alternative moderne à Duplicati pour qui aime les UIs.
- app-borg — Pour les backups locaux rapides, format fermé mais éprouvé.
- Bacula — La référence entreprise, mais complexité bien supérieure (catalogue, directeur, storage daemon…).
Comparaison des outils à UI web / desktop
| Critère | Duplicati | app-kopia | app-backrest | app-duplicacy |
|---|---|---|---|---|
| Interface | Web | Desktop (Win/macOS/Linux) | Web | CLI + GUI (payant) |
| Multi-plateforme | ✅ | ✅ | ✅ | ✅ |
| UI web self-hosted | ✅ | ❌ (desktop) | ✅ | ❌ |
| Licence | LGPL-2.1 | Apache-2.0 | MIT | Custom (propriétaire) |
| Cadence de release | Lente (en perte de vitesse) | Active | Active | Commercial |
| Backends | 20+ | 8+ | Repos restic natifs | 10+ |
| Format de repo | Spécifique Duplicati | Kopia (propriétaire) | = restic (ouvert) | Duplicacy (propriétaire) |
Verdict : Duplicati reste un excellent choix si on veut une UI web prête à l'emploi et qu'on ne veut pas apprendre la CLI. Pour un homelab neuf en 2026, on lui préférera souvent app-kopia (plus moderne, UI desktop) ou app-backrest (UI web au-dessus de restic, plus rapide).
Propriétaires (ce que Duplicati remplace)
- CrashPlan for Small Business — Backup cloud illimité, ~10 $/mois/poste. E2E, mais fermé.
- Backblaze Personal — 7 $/mois/poste, illimité, mais pas self-hosted.
- Carbonite Safe — Backup cloud grand public, fermé.
- iDrive — 60 $/an pour 5 To, multi-poste, mais chiffré côté serveur par défaut.
- Acronis True Image — Référence, mais licence fermée et chère.
Backends de stockage
| Service | Coût (~$ / To / mois) | Egress | Idéal pour |
|---|---|---|---|
| Backblaze B2 | 6 $ | 10 $ / To | Homelab, illimité en egress raisonnable |
| Wasabi | 7 $ | 0 $ | Lecture fréquente, EU |
| Scaleway Object Storage | 7,5 $ | 0,01 € / Go | EU, souverain |
| OVH Object Storage | 7,2 € | trafic sortant | EU |
| Hetzner Storage Box | ~3,5 € / To / mois (forfait) | 0 | EU, SMB |
| MinIO (self-hosted) | Coût serveur | 0 $ | 100% on-prem |
🔐 Sécurité
- Chiffrement AES-256 natif : activé par défaut dans le wizard, protège chaque bloc avant envoi. Le mot de passe de chiffrement doit être stocké séparément (gestionnaire de mots de passe, KeePassXC, vault papier).
- Règle 3-2-1 : Duplicati ne fait pas la politique à votre place — c'est à l'utilisateur de prévoir 2 supports différents minimum (ex. : B2 + disque USB local) et 1 copie offsite (cloud ou autre site physique).
- Test de restauration régulier : restaurer manuellement au moins un fichier arbitraire tous les 30 jours. Les backups non testés ne sont pas des backups. Penser aussi à tester la restauration sur une machine neuve (pas celle de production) pour valider que le moteur Duplicati + Mono + .NET est bien autoportant.
- Rançongiciels : un Duplicati qui tourne en root sur le serveur de prod est une cible de choix pour chiffrer et les données et les backups. Idéalement :
- Sur un serveur dédié aux backups, isolé du LAN principal (VLAN backups).
- Avec les credentials S3 stockés dans un secret (Vault, Bitwarden) et non en clair dans l'UI.
- Avec un air-gap : déconnecter le backend B2/S3 entre deux fenêtres de backup (ou utiliser un compte B2 avec MFA + IP allowlist).
- Vérification d'intégrité : activer l'option
no-backend-verification=truenon, et activerbackup-test-samples=5pour que Duplicati télécharge et vérifie aléatoirement des blocs après chaque run.
📚 Ressources
- Site officiel duplicati.com
- Documentation utilisateur
- GitHub duplicati/duplicati
- Forum officiel
- Wiki technique
Pages Liées
- cat-backups — Catégorie Backups
- strategie-backup-321 — La règle 3-2-1 expliquée
- app-restic — Concurrent CLI, format ouvert
- app-kopia — Concurrent moderne, UI desktop
- app-backrest — UI web moderne au-dessus de restic
- app-duplicacy — Concurrent propriétaire avec dédup globale
- app-borg — Concurrent pour backups locaux rapides
- app-portainer — Visualiser les conteneurs
- app-traefik — Reverse-proxy HTTPS
- securisation-home-lab — Bonnes pratiques de sécurité
- glossaire-homelab — Définitions