Răspuns scurt
- Faci backup corect aplicând regula 3-2-1: trei copii, pe două suporturi diferite, una în altă locație.
- Adaugi extensia 3-2-1-1-0: o copie imutabilă, pe care ransomware-ul nu o poate șterge, și zero erori la testul de restaurare.
- Definești RPO și RTO, criptezi backup-urile la sursă și păstrezi cheia separat de copii.
- Programezi o restaurare de test lunară pe o mașină separată, reușită doar când aplicația pornește și datele sunt corecte.
- Regula 3-2-1
- 3 copii, 2 suporturi, 1 în altă locație
- Extensia 3-2-1-1-0
- 1 copie offline/imutabilă, 0 erori la testul de restaurare
- Cerință GDPR art. 32
- capacitatea de a restabili disponibilitatea datelor în timp util
De ce un snapshot nu e backup și un backup netestat nu e măsură
Un snapshot al VPS-ului stă pe același storage, la același furnizor, sub același cont. Dacă contul e compromis sau storage-ul cedează, dispare cu serverul. E util după un update ratat, dar nu e una dintre cele trei copii. Backup-ul netestat e a doua capcană: dump-ul rulează de luni și nimeni nu l-a deschis. La incident afli că e trunchiat, că lipsește un tabel sau că cheia de criptare a rămas pe serverul criptat.
Cum construiești schema practic
Prima copie e serverul însuși. A doua e un backup zilnic pe un storage separat, criptat la sursă cu restic sau borg, care fac deduplicare și versionare. A treia e offsite: alt datacenter sau alt furnizor, cu acces doar de scriere de pe server, ca un atacator să nu poată șterge istoricul. Copia imutabilă o obții prin object lock pe storage S3 compatibil. Pentru baze de date faci dump logic sau PITR, nu copiezi fișierele în timpul scrierii.
Ce spune legislația din România
Art. 32 GDPR cere explicit capacitatea de a restabili disponibilitatea și accesul la datele personale în timp util după un incident; ANSPDCP verifică asta la orice notificare de breșă. Firmele care emit e-Factura trebuie să păstreze facturile transmise la ANAF pe durata legală de arhivare, deci pierderea arhivei XML e o problemă fiscală. Entitățile înregistrate la DNSC sub OUG 155/2024 au continuitatea activității și backup-ul printre măsurile cerute de art. 11 din OUG 155/2024.
Regula 3-2-1-1-0 pe un server de producție| Element | Ce înseamnă | Cum îl implementezi | Cum îl verifici |
|---|
| 3 copii | Producție + două backup-uri | Backup zilnic local + offsite | Aceeași versiune în toate |
|---|
| 2 suporturi | Storage-uri diferite | Disc local + object storage | Un incident nu le atinge pe ambele |
|---|
| 1 offsite | Altă locație fizică | Alt datacenter sau furnizor | Restaurare de test din copia offsite |
|---|
| 1 imutabil | Nu poate fi șters de pe server | Object lock sau rest-server --append-only; curățarea rulează separat, nu de pe server | Ștergerea din contul serverului eșuează |
|---|
| 0 erori | Restaurarea reușește complet | Test lunar pe mașină separată | Aplicația pornește, datele sunt corecte |
|---|
Comenzi și configurări
restic: depozit criptat pe storage S3 compatibilexport RESTIC_REPOSITORY=s3:https://s3.exemplu.ro/backup-exemplu
export RESTIC_PASSWORD_FILE=/root/.restic-pass
export AWS_ACCESS_KEY_ID=... AWS_SECRET_ACCESS_KEY=...
restic init
restic backup /var/www /etc /var/backups/db --exclude-caches
restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 12 --prune
restic check --read-data-subset=1/10
Dump consistent PostgreSQL înainte de backup-ul de fișierepg_dump -Fc -U app exemplu_db > /var/backups/db/exemplu_db-$(date +%F).dump
Restaurare de test pe o mașină curatărestic restore latest --target /restore
createdb exemplu_db_test
pg_restore -Fc -d exemplu_db_test /restore/var/backups/db/exemplu_db-2026-09-07.dump
Exemple practice
Firmă de contabilitate din București cu e-Factura
Arhiva XML a facturilor era doar pe serverul de aplicație și în snapshot-ul furnizorului. După un ransomware, ambele erau criptate. Firma a reconstruit arhiva din SPV cu efort mare și a trecut pe copii zilnice criptate, offsite, cu object lock.
Magazin online din Cluj cu WooCommerce
Dump-ul de MySQL rula zilnic, dar de trei luni eșua din lipsă de spațiu și nimeni nu primea alertă. La un update ratat, ultima copie validă avea trei luni. Testul lunar de restaurare și alerta pe eșec au urmat a doua zi.
Greșeli frecvente
- Crezi că ai backup pentru că ai snapshot la furnizor, deși stă pe același storage și în același cont.
- Nu ai testat niciodată restaurarea și afli la incident că dump-ul e trunchiat.
- Serverul de backup e accesibil cu aceleași credențiale ca producția, deci ransomware-ul îl criptează primul.
Cum te ajută 4hosting
- Planurile cPanel includ backup zilnic; pe VPS și dedicate proiectăm schema 3-2-1 cu copii în datacenterul nostru din UE, Frankfurt.
- Serviciul Hardening & Compliance include backup anti-ransomware cu copii imutabile; PostgreSQL & ClickHouse configurează PITR și teste de restaurare.
- Orele de DevOps incluse lunar, 1–8 la VPS și 10 la dedicate și GPU, se cer din panoul de client, secțiunea „Servicii DevOps”.
Întrebări conexe
Cât de des trebuie să fac backup?
Depinde de RPO. Dacă poți pierde cel mult o zi de date, backup-ul zilnic e suficient. Un magazin cu comenzi continue are nevoie de backup al bazei de date la câteva ore sau de PITR, care permite revenirea la orice moment. Fișierele statice se pot copia mai rar decât baza de date.
Ce înseamnă backup imutabil?
O copie care, odată scrisă, nu poate fi modificată sau ștearsă până la expirarea retenției, nici de un administrator cu drepturi depline. Se obține prin object lock pe storage S3 compatibil sau prin depozite append-only. Așa un atacator care controlează serverul nu poate distruge istoricul.
Backup-ul furnizorului de hosting e suficient?
E o copie bună, dar e o singură copie, la un singur furnizor, sub un singur cont. Regula 3-2-1 cere o copie în altă locație și pe alt suport, pe care tu o controlezi. Păstrezi backup-ul furnizorului ca primă linie și adaugi propria copie offsite.