SSD Nodes Learn Hosting plans →
Guide Matt ConnorDi Matt Connor · Aggiornato 2026-08-27

Alternative a Dropbox self-hosted: confronto pratico

Confronto tra Nextcloud, Seafile, Syncthing e object storage: topologie di sincronizzazione, costi su un piccolo VPS e perché la sync non è un backup.

Quale alternativa self-hosted a Dropbox dovresti usare?

Quattro alternative self-hosted a Dropbox meritano attenzione: Nextcloud, Seafile, Syncthing e l'object storage con un client. Non sono intercambiabili. Nextcloud è adatto a una famiglia o a un piccolo team in cui altre persone devono ricevere file. Seafile è adatto a una persona o a un team che sincronizza un numero molto elevato di file di piccole dimensioni, quando la velocità di sincronizzazione è più importante di come i dati sono organizzati sul disco. Syncthing è adatto a una persona che sincronizza i propri dispositivi, quando nessuno dall'esterno deve ricevere un link. L'object storage è adatto a un archivio: spazio economico per dati che si aprono raramente.

Prima di confrontare le funzionalità, scegli in base al funzionamento della sincronizzazione. Gli elenchi delle funzionalità sembrano tutti uguali. È la topologia, cioè quale macchina contiene la copia considerata autorevole da tutte le altre, a determinare se tra sei mesi sarai ancora soddisfatto.

Topologia della sincronizzazione: un server autorevole oppure peer senza server

Le opzioni sono due e gran parte di ciò che segue dipende dalla scelta effettuata.

Un server autorevole. Nextcloud, Seafile e l'object storage funzionano in questo modo. Una macchina, di solito un VPS (virtual private server), conserva la copia autorevole. Ogni dispositivo comunica con quella macchina. Il laptop può rimanere spento per un mese e recuperare automaticamente le modifiche al ritorno online. Un telefono con 6 GB di spazio libero può contenere un sottoinsieme dei dati, mentre il server conserva tutto. Un browser può accedere ai file, ed è per questo che i link di condivisione possono esistere.

Peer senza server. Syncthing funziona in questo modo. I dispositivi si individuano e si scambiano direttamente gli elenchi dei file tramite una connessione crittografata. Nessuna copia è autorevole: un file esiste sui dispositivi che lo contengono e in nessun altro luogo. Due dispositivi devono essere online nello stesso momento perché una modifica possa passare dall'uno all'altro. Non esiste un URL da fornire, perché nessuna macchina pubblica una pagina.

Ne conseguono quattro aspetti, che spesso vengono compresi solo in seguito.

  • Per inviare un file a una persona che non installerà software serve un server autorevole. Un link è un URL e un URL richiede un processo in ascolto su una porta.
  • Per raggiungere i propri file da una macchina che non si controlla, ad esempio un laptop aziendale, serve un server autorevole.
  • Un dispositivo rimasto spento per settimane recupera i dati da un server ogni volta che torna online. In una configurazione peer li recupera soltanto quando è online anche un altro dispositivo che contiene quei dati. Per questo molti utenti di Syncthing eseguono un'istanza su un VPS come peer sempre attivo.
  • Lo spazio di archiviazione viene utilizzato in modo diverso. Un server autorevole conserva una copia completa, oltre ai dati che ogni dispositivo mantiene localmente. Quattro peer che condividono una cartella conservano quattro copie complete, perché ogni peer mantiene l'intera cartella.

Nextcloud è un’applicazione web PHP. Memorizza i file come normali file in una directory dati e ne tiene traccia in un database. È possibile condividere una cartella con un utente, con un gruppo oppure tramite un link pubblico protetto da password e con una data di scadenza. La cronologia delle versioni è attiva per impostazione predefinita e i file eliminati vengono spostati prima nel cestino. I client desktop supportano Linux, macOS e Windows; le app per iOS e Android sono ufficiali. Se il motivo per cui vuoi abbandonare Dropbox è che altre persone devono ricevere i tuoi file, questa è la risposta più diretta.

Il costo è la complessità operativa. Un’installazione normale esegue un web server, PHP-FPM (il gestore dei processi PHP), un database come MariaDB o PostgreSQL e Redis per il blocco dei file. Un job in background viene eseguito ogni cinque minuti tramite cron o un timer systemd. Su un VPS da 1 GB si avvierà, ma poi un upload di grandi dimensioni o un comando di manutenzione occ prolungato può causare l’intervento dell’out-of-memory killer. Considera 2 GB come dotazione minima per pochi utenti e prevedi di aver bisogno di 4 GB quando abiliti altre app. L’altro costo riguarda gli aggiornamenti: le app dell’app store vengono compilate per una specifica release del core, quindi verifica che le app da cui dipendi supportino la versione principale successiva prima di procedere.

Nextcloud rallenta quando un account contiene centinaia di migliaia di file piccoli, perché ogni file corrisponde a una riga nella tabella della cache dei file e a un file reale sul disco, mentre il client desktop li elabora uno alla volta. In un ambiente domestico questo problema non si presenta. Dimensionamento, TLS (sicurezza del livello di trasporto) e backup sono trattati in un’installazione di Nextcloud basata su Docker con TLS e backup, a cui puoi fare riferimento dopo aver deciso.

Una precisazione sull’ambito. Nextcloud può gestire anche calendario, contatti, note e raccolta di foto, ma ogni app abilitata aggiunge attività in background e un ulteriore elemento che può bloccare un aggiornamento. Se il problema reale sono le foto, uno strumento dedicato le gestisce meglio: consulta Immich come alternativa self-hosted a Google Photos. Se il problema reale sono documenti e wiki, valuta le alternative self-hosted a Notion invece di aggiungere app al file server. La modifica di questi documenti nel browser richiede un server separato, non un’altra app di Nextcloud; valuta quindi OnlyOffice e Collabora prima di dare per scontato che la dotazione minima di 2 GB sia ancora sufficiente.

Seafile: progettato per un numero molto elevato di file piccoli

Seafile divide ogni file in blocchi e li memorizza in un object store interno indirizzato tramite hash del contenuto, secondo lo stesso principio usato da git per i propri oggetti. L'unità di sincronizzazione e condivisione è una libreria, non un albero di directory. Poiché il client carica i blocchi e un solo commit invece di inviare una richiesta per ogni file, la sincronizzazione di una directory con 100,000 file piccoli termina molto più rapidamente rispetto a un protocollo basato sui singoli file. I blocchi identici vengono memorizzati una sola volta, quindi una seconda copia di un file di grandi dimensioni richiede uno spazio aggiuntivo quasi nullo.

Il compromesso è che i file sul server non sono più file utilizzabili direttamente. Aprendo la directory di storage si trovano file oggetto con nomi esadecimali. Per recuperare i dati servono il client Seafile oppure gli strumenti di export e fsck inclusi in Seafile. I backup continuano a funzionare, perché questi oggetti sono normali file, ma non è possibile ripristinare un singolo foglio di calcolo con cp. Decidi subito se questo comportamento è accettabile, perché è una caratteristica di cui molti si pentono in seguito.

Seafile offre una community edition e una professional edition a pagamento. La distinzione tra le due cambia tra una release e l'altra, quindi leggi i termini aggiornati sul loro sito prima di progettare un'installazione di team basata su una funzione specifica. Sono disponibili client desktop e mobile ufficiali. Le librerie cifrate vengono cifrate sul client, quindi il server memorizza ciphertext che non può leggere. Se perdi la passphrase, la libreria non è più leggibile, nemmeno da te. Aprire una libreria cifrata nel browser significa fornire quella passphrase alla sessione web, quindi la versione più forte di questa garanzia vale per i client desktop e mobile.

Il consumo di risorse è simile a quello di Nextcloud. Devi eseguire un database, una cache in memoria e due processi applicativi, quindi 2 GB è ancora il limite minimo ragionevole.

Syncthing: nessun accesso richiesto

Syncthing è un singolo binario Go. Monitora le cartelle, individua i peer tramite un server di discovery o un relay e sincronizza direttamente i dispositivi. Non esistono account né una pagina di accesso per le persone con cui sincronizzi i dati. Abbini due dispositivi tramite l'ID e accetti la cartella su entrambi. Tra tutte le soluzioni descritte, è quella che richiede meno attività di gestione, perché c'è ben poco da eseguire.

Il compromesso riguarda l'intera funzione di condivisione. La relativa voce è Device pairing only, no links. Non puoi fornire un link a un cliente, a un commercialista o a un familiare. Anche il supporto mobile è limitato: Android app, no official iOS. Le FAQ del progetto sono chiare: "There are no plans by the current Syncthing team to officially support iOS in the foreseeable future", perché iOS limita sufficientemente l'elaborazione in background da rendere difficile una sincronizzazione affidabile. Gli utenti iOS devono quindi ricorrere ad applicazioni di terze parti.

Il consumo di risorse è ridotto, ma c'è un aspetto da conoscere. Syncthing mantiene una voce di indice per ogni file sincronizzato, quindi l'uso della memoria e la prima scansione crescono in base al numero di file, non alla dimensione complessiva. Il primo hashing di una cartella di grandi dimensioni utilizza la CPU per qualche tempo, poi il carico si stabilizza. Anche sul piano VPS più piccolo funziona senza problemi.

I conflitti vengono gestiti conservando entrambe le versioni. Quando due dispositivi modificano lo stesso file mentre non riescono a comunicare, Syncthing rinomina una copia e la conserva accanto all'altra, quindi trovi file come notes.sync-conflict-20260802-141530-K7MB3QT.md. Non viene perso nulla. Tuttavia, non viene eseguito neppure alcun merge: devi risolvere il conflitto manualmente.

Object storage con un client: byte economici, non una cartella di sincronizzazione

Per object storage si intende un bucket compatibile con S3 (simple storage service), ospitato autonomamente con MinIO oppure noleggiato presso un provider. Vi si accede tramite uno strumento: rclone dalla riga di comando oppure un client desktop che presenta il bucket come un'unità. Se preferisci esplorare il bucket da una pagina web invece che dalla shell, diversi strumenti inclusi in questo confronto tra file manager self-hosted usano un bucket S3 come backend e aggiungono i propri link di condivisione. La condivisione avviene tramite un URL presigned, cioè un link generato con una propria scadenza. Il versioning è un'impostazione del bucket: Bucket versioning, off by default, quindi attivalo quando crei il bucket, perché non si applica agli oggetti caricati in precedenza.

Il problema nasce quando tratti un bucket come una cartella di sincronizzazione. Per impostazione predefinita, nessun componente monitora la directory Documents. rclone bisync esegue la sincronizzazione bidirezionale, mentre la documentazione di rclone è chiara sulla cautela necessaria. Il punto di forza dell'object storage è usarlo come livello sottostante: come destinazione di backup oppure come livello di storage per un'applicazione. Object storage S3 compatibile self-hosted con MinIO descrive la configurazione lato server.

Il consumo di risorse è particolare. MinIO è costituito da un singolo binario e, quando è inattivo, consuma poche risorse. Il costo effettivo è quello del disco e, su un VPS, corrisponde a un volume a blocchi noleggiato in base ai gigabyte, oltre alla larghezza di banda utilizzata per trasferire gli oggetti in ingresso e in uscita. Nessuno dei due costi compare in free -h, quindi leggi quanto costa realmente un VPS al mese prima di dimensionare un archivio.

Confronto tra condivisione, client mobili e gestione delle versioni

ChartSharing, mobile clients and versioning, by tool
The data behind this chart
[
  {
    "tool": "Nextcloud",
    "sharing": "Public links, users and groups",
    "mobile": "Official iOS and Android apps",
    "versioning": "On by default, plus trash"
  },
  {
    "tool": "Seafile",
    "sharing": "Public links with password and expiry",
    "mobile": "Official iOS and Android apps",
    "versioning": "Library history and snapshots"
  },
  {
    "tool": "Syncthing",
    "sharing": "Device pairing only, no links",
    "mobile": "Android app, no official iOS",
    "versioning": "Optional per folder, off by default"
  },
  {
    "tool": "Object storage",
    "sharing": "Presigned URLs you generate",
    "mobile": "Third party clients only",
    "versioning": "Bucket versioning, off by default"
  }
]

Tutte le 4 opzioni si distribuiscono lungo una sola linea. Tre permettono di consegnare un file a uno sconosciuto che dispone soltanto di un browser. Una comunica esclusivamente con dispositivi già in tuo possesso. La voce di Seafile relativa alla gestione delle versioni, Library history and snapshots, merita una precisazione: la cronologia viene conservata per libreria, quindi l'eliminazione di una libreria comporta anche l'eliminazione della relativa cronologia.

Recuperare nuovamente i dati

Il costo dell’uscita è semplice da verificare ora, ma costoso da scoprire in seguito. Verificalo prima di impegnarti.

Nextcloud archivia i file reali in directory reali, quindi un tar della directory dei dati ti restituisce i documenti anche se l’applicazione non si avvia più. Syncthing fa lo stesso su ogni peer. È l’opzione con la strategia di uscita più solida: i file si trovano semplicemente su ogni dispositivo. L’object store di Seafile richiede Seafile o i relativi strumenti di esportazione per ricomporre i blocchi in file. Lo storage a oggetti richiede rclone o uno strumento equivalente, disponibile con un solo comando.

La sincronizzazione non è un backup, e questa differenza è il punto in cui si perdono i dati

Tutti gli strumenti descritti in questa guida copiano le modifiche tra i computer. Anche un'eliminazione è una modifica. Se rimuovi una cartella dal laptop, il client informa il server, il server applica la modifica e anche tutti gli altri dispositivi la rimuovono. Il ransomware usa lo stesso percorso: cifra i file localmente, il client rileva i file modificati e carica le versioni cifrate. La sincronizzazione ha funzionato correttamente. I dati sono comunque persi.

I cestini e la cronologia delle versioni riducono il rischio. Tuttavia, scadono, possono essere svuotati dallo stesso account che ha commesso l'errore e risiedono sullo stesso disco della copia attiva. Se un volume si guasta, i file e la relativa cronologia vengono persi insieme.

Un backup è una copia separata, su hardware separato, eseguita secondo una pianificazione e ripristinata almeno una volta. Esegui il backup del database nella stessa operazione dei file. Il ripristino di una directory dati di Nextcloud senza il relativo database produce un'istanza che non sa che quei file esistono; inoltre, un occ files:scan successivo recupera i file ma perde le condivisioni e la cronologia delle versioni memorizzate in quelle tabelle. Backup programmati di restic da un VPS descrive la variante cifrata e deduplicata, incluso come testare un ripristino invece di darlo per scontato.

Cosa sceglierei

Nextcloud, per la maggior parte dei lettori. Dopo aver lasciato Dropbox, ciò che manca è poter condividere un link con qualcuno che non installerà mai nulla e aprire un file sul telefono. Nextcloud offre entrambe le possibilità tramite client ufficiali e senza un piano a pagamento; 2 GB di RAM sono un costo ragionevole per questo. Farei due eccezioni. Se la cartella è esclusivamente tua e si trova sempre su hardware di tua proprietà, usa Syncthing: non dovrai applicare patch ad alcun server né proteggere un accesso web. Se sincronizzi una directory di lavoro con centinaia di migliaia di file, usa Seafile e accetta lo storage opaco in cambio della velocità. Lo storage a oggetti va usato sotto la soluzione scelta, come destinazione dei backup, non davanti a essa come strumento di sincronizzazione.

FAQ

Syncthing è un backup per il mio laptop?

No. Syncthing replica le modifiche tra i dispositivi e una cancellazione è una modifica come le altre. Di conseguenza, un file eliminato per errore scompare da tutti i dispositivi associati nel giro di pochi secondi. Il versioning dei file per cartella è utile, ma rimane disattivato finché non lo abiliti per ogni cartella. Mantieni un backup reale su hardware separato, eseguito secondo una pianificazione, e ripristinalo una volta per verificare che il ripristino funzioni.

Posso eseguire Nextcloud e Syncthing sulla stessa VPS?

Sì, sono in ascolto su porte diverse e non entrano in conflitto. Non configurare una cartella Syncthing come directory dei dati di Nextcloud. Nextcloud tiene traccia di ogni file in un database. Di conseguenza, i file che compaiono sul disco al suo interno rimangono invisibili finché non esegui occ files:scan, mentre i file rimossi al suo interno lasciano righe nel database che puntano a elementi inesistenti. Assegna a Syncthing una directory dedicata oppure collega quella directory a Nextcloud come storage esterno, in modo che Nextcloud sappia di doverla analizzare.

Nextcloud e Seafile creano entrambi link pubblici, con password opzionale e data di scadenza. Lo storage a oggetti fornisce un URL presigned che smette automaticamente di funzionare dopo il periodo impostato. Syncthing non offre questa possibilità. Il suo modello di condivisione si basa sull'associazione dei dispositivi. L'altra persona deve quindi installare Syncthing, comunicarti un device ID e accettare la cartella.

Quanto spazio su disco serve al server?

Per un server di riferimento, prevedi lo spazio necessario per l'intera dimensione dei dati condivisi, oltre allo spazio per la cronologia delle versioni e il cestino, nonché uno spazio operativo per gli upload in corso. La cronologia delle versioni è l'aspetto che viene spesso sottovalutato. Conservare ogni versione di un file da 2 GB che cambia ogni giorno fa crescere rapidamente lo spazio utilizzato, quindi imposta presto una policy di conservazione. Collocare i dati su un volume separato evita che questa crescita interessi il filesystem root. Quando il disco è pieno, infatti, si arresta l'intero server e non soltanto un upload.