Nessun documento all'iscrizione · Storage VPS da 500 GB a 8 TB · Pagare in BTC, USDT, USDC, ETH, SOL, LTC, XMR
Lingua: Italiano
Ottieni storage

restic · rest-server contro SFTP

Restic: REST server o SFTP per i backup su un storage VPS?

Entrambi i backend archiviano lo stesso repository cifrato nella stessa struttura di cartelle. La differenza è chi può eliminare cosa, quante persone condividono il server e quanto costa il protocollo sulla rete.

Ultimo aggiornamento: · 7 min di lettura

Risposta rapida

Restic: REST server o SFTP per i backup su un VPS?

Per i backup restic su un VPS, usa rest-server quando i client non devono poter eliminare gli snapshot: la sua modalità --append-only rifiuta le cancellazioni e --private-repos mantiene ogni utente nella propria cartella. Usa SFTP quando fa il backup una sola macchina fidata e non vuoi altro che SSH. Su un Coffervale storage VPS, 1 TB costa $1.66 al mese su 12 mesi (2 November 2026).

Qual è la differenza tra il REST server di restic e i backend SFTP?

FunzionalitàSFTPrest-server
Software sul VPSOpenSSH, già installatorest-server (pacchetto Debian 13 restic-rest-server, o l'immagine Docker restic/rest-server)
TrasportoSSHHTTP o HTTPS, porta 8000 per impostazione predefinita
LoginChiavi SSH per account UnixUtente e password HTTP da un file htpasswd (bcrypt o SHA)
Il client può eliminare i vecchi snapshotSìNo, con --append-only
Utenti tenuti separatiAccount Unix e permessi delle cartelle--private-repos: ogni utente solo sotto /<user>/
Struttura del repository su discoCome un repository localeCome un repository locale
Cifratura del repositoryrestic, sempre attivarestic, sempre attiva

rest-server è più veloce di SFTP?

Il progetto rest-server dice di sì: rispetto a SFTP, il backend REST offre prestazioni migliori e scala di più. Il suo README ne spiega il motivo: SFTP trasferisce i dati in blocchi di al massimo 32 KiB e il server conferma ogni pacchetto, mentre REST invia file interi su HTTP. Il semplice HTTP elimina anche l'overhead di TLS, dato che restic cifra già tutto ciò che invia; il README aggiunge che HTTPS serve poi soprattutto a proteggere il login. È un'affermazione del progetto stesso, non un benchmark che abbiamo eseguito noi. Su un VPS di storage con dischi rigidi, spesso sono i dischi e la tua banda in upload a dettare il passo prima del protocollo.

Lato client, SFTP ha un fastidio noto: la documentazione di restic segnala che i server SFTP chiudono le connessioni quando non ricevono nulla per un po', cosa che le scansioni lunghe di file invariati possono innescare.

Quando è meglio il semplice SFTP?

Quando una macchina di cui ti fidi esegue il backup sul proprio account e non vuoi servizi aggiuntivi, porte aggiuntive né nulla di nuovo da aggiornare. restic ha bisogno solo di restic -r sftp:user@host:/path init e di una chiave SSH senza richiesta di passphrase, dato che un backup automatico non può fermarsi a chiederla. La debolezza è quella che conta di più contro il ransomware: chi controlla il client può anche eseguire restic forget --prune ed eliminare ogni snapshot, perché SFTP non ha una modalità append-only.

Per impedire a ogni account SFTP di curiosare nel resto del server, OpenSSH può confinarlo nella propria cartella senza shell:

/etc/ssh/sshd_config.d/restic-sftp.conf, then sshd -t && systemctl reload ssh
Match User restic-laptop
    ForceCommand internal-sftp
    ChrootDirectory /srv/restic-sftp/%u
    AllowTcpForwarding no
    X11Forwarding no
Account, chroot e repository, come root sul VPS; il client poi usa sftp:[email protected]:/repo
useradd --no-create-home --home-dir /srv/restic-sftp/restic-laptop --shell /usr/sbin/nologin restic-laptop
install -d -m 755 -o root -g root /srv/restic-sftp/restic-laptop
install -d -m 700 -o restic-laptop -g restic-laptop /srv/restic-sftp/restic-laptop/repo
install -d -m 700 -o restic-laptop -g restic-laptop /srv/restic-sftp/restic-laptop/.ssh
echo 'ssh-ed25519 AAAA...client-key... laptop' > /srv/restic-sftp/restic-laptop/.ssh/authorized_keys
chown restic-laptop:restic-laptop /srv/restic-sftp/restic-laptop/.ssh/authorized_keys
chmod 600 /srv/restic-sftp/restic-laptop/.ssh/authorized_keys

Come eseguo rest-server con repository append-only e privati?

Su Debian 13, installa restic-rest-server, puntalo a una cartella dati fuori da /home e passa --append-only --private-repos più TLS nel suo file dei default. Il servizio del pacchetto gira come utente restic-rest-server, legge BACKUP_DIR, LISTEN e ARGS da /etc/default/restic-rest-server, rifiuta di avviarsi finché BACKUP_DIR non è impostato e nasconde /home al demone. Con --private-repos, l'utente laptop può aprire solo repository sotto /laptop/, così più persone possono condividere un unico VPS di storage senza vedere gli snapshot altrui. Un certificato autofirmato basta, perché il client lo fissa con --cacert.

Sul VPS di storage, come root (Debian 13)
apt install restic-rest-server apache2-utils openssl
install -d -m 750 -o restic-rest-server -g restic-rest-server /srv/restic

openssl req -x509 -newkey rsa:3072 -nodes -days 3650 \
    -keyout /etc/restic-rest-server/key.pem -out /etc/restic-rest-server/cert.pem \
    -subj '/CN=coffer-backup' -addext 'subjectAltName=IP:203.0.113.10'
chown root:restic-rest-server /etc/restic-rest-server/key.pem
chmod 640 /etc/restic-rest-server/key.pem

cat > /etc/default/restic-rest-server <<'EOF'
BACKUP_DIR=/srv/restic
LISTEN=:8000
ARGS="--htpasswd-file /etc/restic-rest-server/users.htpasswd --append-only --private-repos --tls --tls-cert /etc/restic-rest-server/cert.pem --tls-key /etc/restic-rest-server/key.pem"
EOF

htpasswd -B /etc/restic-rest-server/users.htpasswd laptop
chown root:restic-rest-server /etc/restic-rest-server/users.htpasswd
chmod 640 /etc/restic-rest-server/users.htpasswd
systemctl enable restic-rest-server
systemctl restart restic-rest-server
Sul client: credenziali in un file privato, non nell'URL
mkdir -p ~/.config/restic
scp [email protected]:/etc/restic-rest-server/cert.pem ~/.config/restic/coffer.pem

cat > ~/.config/restic/coffer.env <<'EOF'
RESTIC_REPOSITORY=rest:https://203.0.113.10:8000/laptop/
RESTIC_REST_USERNAME=laptop
RESTIC_REST_PASSWORD=the-htpasswd-password
RESTIC_PASSWORD_FILE=/home/me/.config/restic/repo-password
RESTIC_CACERT=/home/me/.config/restic/coffer.pem
EOF
chmod 600 ~/.config/restic/coffer.env

set -a; . ~/.config/restic/coffer.env; set +a
restic init
restic backup ~/Documents ~/Pictures

Come faccio il prune degli snapshot quando rest-server è append-only?

Esegui forget --prune da una macchina admin fidata su un percorso che non è append-only, e scrivi la policy con --keep-within. rest-server mantiene il repository nella stessa struttura di un repository locale, quindi SFTP come root raggiunge la stessa identica cartella e la password del repository non va mai digitata sul VPS.

La parte --keep-within conta. La documentazione di restic descrive un attaccante che aggiunge snapshot vuoti a un repository append-only così che una policy come uno snapshot a settimana elimini quelli veri; una policy basata sul tempo conserva sia i rifiuti sia gli snapshot autentici. Aiuta solo se l'orologio di sistema è corretto quando gira forget, e non è un motivo per saltare un'occhiata a restic snapshots prima.

Dalla macchina admin, mai dal client
restic -r sftp:[email protected]:/srv/restic/laptop snapshots
restic -r sftp:[email protected]:/srv/restic/laptop forget --keep-within 90d --prune
restic -r sftp:[email protected]:/srv/restic/laptop check --read-data-subset=5%

Quale backend scelgo?

Scegli rest-server ogni volta che la macchina di cui fai il backup è esposta a internet; scegli SFTP per un'unica macchina ben curata dove vince la semplicità. Un target append-only non può essere svuotato dall'attaccante che cifra il tuo server, e questa sola proprietà vale più del demone in più.

La tua situazioneBackendPerché
Un solo laptop o desktop, un solo accountSFTPNiente da installare, nessuna porta nuova
Server pubblici che potrebbero essere compromessirest-server --append-onlyUn client rubato non può cancellare la cronologia
Più persone o macchine su un solo VPSrest-server --private-reposOgni login vede solo la propria cartella
Dalla rete è consentito uscire solo su HTTP o HTTPSrest-serverFunziona dove SSH è bloccato
Entrambi: client in append-only, admin fa il prunerest-server per i client, SFTP come root per l'adminStessa cartella, due livelli di accesso

Quanto costa un target restic per TB?

Secondo l'indagine di Coffervale del 2 novembre 2026, Backblaze B2, un object store supportato nativamente da restic, costava $6.95 per TB al mese, mentre i piani VPS per storage di host che accettano criptovalute senza documento d'identità avevano una mediana di $4.00 per TB. Un object store non richiede nessun server da mantenere ma non offre nessuno dei due backend discussi qui; un VPS per storage li esegue entrambi. Non facciamo backup del tuo server e non teniamo copia dei tuoi dati da nessun'altra parte, quindi ciò che sta su uno storage VPS di Coffervale dovrebbe essere una delle tue copie, mai l'unica: il VPS è la tua copia off-site, come spiega Come uso un VPS per i backup off-site?. Se preferisci usare Borg, segui Come configuro un server di backup Borg su un VPS?; per cifrare il disco sottostante, vedi Come monto e formatto il disco di storage su un VPS Linux?. Piani e condizioni sono su Quanto costa un VPS per storage al mese?.

Domande su restic su un VPS

restic via SFTP è cifrato?

Due volte. restic cifra ogni file che memorizza con AES-256 e lo autentica con Poly1305-AES prima dell'upload, e SSH cifra la connessione. Il VPS contiene sempre e solo testo cifrato.

rest-server ha bisogno di HTTPS se restic cifra già i dati?

Sì, per il login. Senza TLS, utente e password HTTP attraversano la rete in chiaro, e chiunque li intercetti può scrivere nel tuo repository. Usa --tls, oppure tieni rest-server su localhost e raggiungilo tramite un tunnel SSH.

rest-server e SFTP possono servire lo stesso repository?

Sì. Entrambi usano la stessa struttura di cartelle di un repository locale, quindi i client possono scrivere tramite un rest-server in modalità append-only mentre un amministratore esegue il prune della stessa cartella via SFTP.

Su quale porta ascolta rest-server?

La porta 8000 su tutti gli indirizzi per impostazione predefinita. Aprila nel firewall solo verso gli indirizzi che fanno backup, oppure vincolala a un indirizzo privato come un'interfaccia WireGuard.

Quale versione di restic dovrei usare?

L'ultima release al 2 novembre 2026 era restic 0.19.1, del 5 luglio 2026; Debian 13 include la 0.18.0. Il formato di repository versione 2, l'attuale predefinito, richiede restic 0.14.0 o successivo su ogni macchina che lo apre.

Fonti (10)
  1. Rest Server README: perché usarlo, modalità append-only, repository privati, htpasswd, TLS — restic project (read 2026-11-02)
  2. Documentazione restic: Preparare un nuovo repository (SFTP, REST Server, B2) — restic project (read 2026-11-02)
  3. Documentazione restic: Rimuovere gli snapshot di backup, considerazioni di sicurezza in modalità append-only — restic project (read 2026-11-02)
  4. Documentazione restic: Scripting, variabili d'ambiente — restic project (read 2026-11-02)
  5. Documentazione di restic: References, repository encryption — restic project (read 2026-11-02)
  6. Release di restic (0.19.1 del 5 luglio 2026) — restic project on GitHub (read 2026-11-02)
  7. Pacchetto Debian trixie restic-rest-server 0.13.0-2: unit del servizio e valori predefiniti — Debian (read 2026-11-02)
  8. Ricerca pacchetti Debian trixie: restic 0.18.0 — Debian (read 2026-11-02)
  9. sshd_config(5): Match, ChrootDirectory, ForceCommand — OpenBSD project (OpenSSH) (read 2026-11-02)
  10. Prezzi di B2 Cloud Storage backblaze.com/cloud-storage/pricing — Backblaze (read 2026-11-02)

Da $1.24/mese · senza KYC

Ottieni storage