# Jak uczynić kopie zapasowe niezmiennymi przeciw ransomware na własnym serwerze?

> Kopie zapasowe niezmienne: restic i Borg w trybie append-only, Proxmox Backup Server, Veeam, S3 Object Lock i snapshoty ZFS. Kryptowaluta, bez KYC.

- URL: https://basalthold.com/pl/immutable-backups/
- Ostatnia aktualizacja: 2026-11-02
- Wydawca: Basalthold (https://basalthold.com)

Sześć sposobów, aby dać chronionej maszynie dostęp do zapisu bez prawa usuwania, co każdy z nich jeszcze przepuszcza, oraz dwie rzeczy, które usuwają każdą kopię zapasową na wynajętym serwerze.

**Szybka odpowiedź — Jak uczynić kopie zapasowe niezmiennymi przeciw ransomware na własnym serwerze?**

Aby uczynić kopie zapasowe niezmiennymi przeciw ransomware na własnym serwerze, daj klientowi kopii zapasowych dostęp do zapisu, ale bez prawa usuwania: repozytorium restic lub Borg w trybie append-only, utwardzone repozytorium Veeam albo snapshoty ZFS pod innym kontem. **Basalthold** wynajmuje serwer od 110,99 USD za 30 dni (cena 2 November 2026), kryptowaluta, bez KYC.

## Które metody blokują kopie zapasowe na serwerze, który kontrolujesz?

| Metoda | Czego nie może zrobić maszyna z kopią zapasową | Kto nadal może usunąć | Sprawdzone w |
| --- | --- | --- | --- |
| restic z rest-server `--append-only` | Usunąć lub zmodyfikować istniejące kopie zapasowe | Administrator łączący się bez flagi; root na serwerze | rest-server README |
| Borg z `borg serve --append-only` | Nadpisać lub usunąć zatwierdzone dane | Późniejszy prune lub compact w trybie normalnym; root | Dokumentacja Borg 1.4.5 |
| Proxmox Backup Server, rola DatastoreBackup | Prune swoich kopii zapasowych | Użytkownicy z DatastorePowerUser lub DatastoreAdmin; root | Dokumentacja PBS 4.2 |
| Utwardzone repozytorium Veeam | Przenosić, modyfikować lub usuwać pliki przez 7 do 9999 dni | root na serwerze repozytorium | Poradnik Veeam B&R 13 |
| S3 Object Lock, tryb compliance | Usunąć lub zmienić zablokowaną wersję przed jej datą | Żaden użytkownik, w tym root, według MinIO | Dokumentacja MinIO i Kopia |
| Snapshoty ZFS pod innym kontem | Zmiana snapshotu, który jest tylko do odczytu | Konto z prawem destroy, po zwolnieniu wszystkich holdów | Strony man OpenZFS |

Dokumentacja czytana 2 listopada 2026.

## Co oznacza immutable w kontekście backupu?

Ransomware, który przejmuje serwer, zwykle przejmuje też dane uwierzytelniające do backupu, które są na nim przechowywane. Jeśli te dane mogą usunąć stare backupy, atakujący usuwa je, zanim cokolwiek zaszyfruje.

Immutable backup zamyka tę furtkę. Maszyna, której dane są backupowane, może dodawać nowe dane, ale nic, co się na niej znajduje, nie może usuwać ani nadpisywać starych wersji. Niektóre metody wymuszają to przez prawa dostępu, inne przez blokadę z datą wygaśnięcia.

**Jeśli maszyna, którą chronisz, może usunąć własne backupy, to samo może zrobić każdy, kto tę maszynę przejmie.**

## Jak działają restic i Borg w trybie append-only?

rest-server restica ma flagę `--append-only`. W jego README czytamy, że tryb ten pozwala na nowe backupy, ale uniemożliwia usuwanie i modyfikowanie istniejących. Prune wykonuj z maszyny administracyjnej przez drugą instancję bez tej flagi albo na samym serwerze.

Borg wymusza ten tryb przez forced command w `authorized_keys` lub przez `append_only = 1` w konfiguracji repozytorium. Jego dokumentacja wymienia ograniczenia wprost:

- `borg delete` i `borg prune` nadal działają; jedynie oznaczają dane jako usunięte.
- Następny zapis w trybie normalnym usuwa te dane na dobre, więc automatyczny pruning czyni ten tryb bezcelowym.
- Uruchom `borg check` przed prune repozytorium append-only.
- `rm` nadal działa na plikach, więc klienci muszą docierać do repozytorium wyłącznie przez `borg serve`.

Oba narzędzia są porównane na [restic or Borg for offsite backups](https://basalthold.com/pl/restic-vs-borg/ "Versions, server needs, encryption and append-only mode").

*Append-only po stronie serwera*

```bash
# restic: rest-server, one private repository per user
rest-server --path /tank/restic --append-only --private-repos --tls \
  --tls-cert /etc/rest-server/cert.pem --tls-key /etc/rest-server/key.pem

# Borg: in ~backup/.ssh/authorized_keys, one line per client key
command="borg serve --append-only --restrict-to-path /tank/borg/web1",restrict ssh-ed25519 AAAA... web1
```

## Jak blokują backupy Proxmox Backup Server i Veeam?

Proxmox Backup Server działa przez role. Użytkownik z DatastoreBackup może tworzyć backupy i przywracać własne backupy, ale do prune potrzebuje DatastorePowerUser. Garbage collection czeka też 24 godziny i 5 minut, zanim usunie chunki. Połącz to z zadaniem sync pobieranym przez serwer offsite, tak aby dom nie przechowywał żadnego loginu offsite. Pełna konfiguracja jest na [an offsite Proxmox Backup Server on a rented server](https://basalthold.com/pl/proxmox-backup-server-offsite/ "Datastore on ZFS, pull or push sync, encryption").

Veeam hardened repository działa przez czas. Pliki pozostają immutable przez 7 do 9999 dni, a dane uwierzytelniające, które zainstalowały usługi Veeam, nigdy nie były przechowywane. Kroki dla wynajętej maszyny są na [a Veeam hardened repository on a rented Linux server](https://basalthold.com/pl/veeam-hardened-repository/ "XFS fast clone, single-use credentials, no console").

## Czy mogę użyć S3 Object Lock na własnym serwerze?

Tylko jeśli twój serwer S3 to implementuje, a dwie najbardziej znane opcje open-source się różnią.

- **MinIO** dokumentuje object locking na wersjonowanych bucketach, w trybie GOVERNANCE lub COMPLIANCE. W trybie COMPLIANCE żaden użytkownik nie może zmienić zablokowanej wersji, w tym root. Ale repozytorium społeczności MinIO zostało zarchiwizowane 25 kwietnia 2026, nie jest już utrzymywane i jest dostarczane wyłącznie jako kod źródłowy.
- **Garage** wymienia Object Lock i wersjonowanie bucketów jako brakujące na swojej stronie zgodności z S3.

Po stronie klienta Kopia obsługuje Object Lock: bucket musi mieć go włączony przy tworzeniu, a Kopia zaleca tryb compliance. Jej pozostała rada działa wszędzie: klucz dostępu bez uprawnień do usuwania. Inne serwery S3 są porównane na [the best alternatives to MinIO for self-hosted S3](https://basalthold.com/pl/minio-alternatives/ "Garage, SeaweedFS, Ceph RGW and RustFS compared").

## Jak snapshoty ZFS chronią backup przed własnym klientem?

Pozwól klientowi pisać przez SFTP lub rsync jako zwykłe konto, a rootowi robić snapshoty. OpenZFS opisuje snapshot jako kopię systemu plików tylko do odczytu. Konto klienta nie dostaje prawa `destroy` przez `zfs allow`, więc nie może ich usunąć.

Hold dodaje drugą blokadę. Dopóki snapshot ma hold, `zfs destroy` na nim kończy się błędem EBUSY, aż ktoś zwolni hold.

**Snapshoty robione przez root na datasecie, do którego pisze klient, zamieniają każdy cel rsync lub SFTP w wersjonowany, append-only.**

*Nocny snapshot z holdem, uruchamiany przez root*

```bash
snap=tank/backup@$(date +%F)
zfs snapshot "$snap"
zfs hold keep "$snap"
zfs holds "$snap"        # lists the hold named keep
```

## Co jeszcze usuwa immutable backupy na wynajętym serwerze?

Dwie rzeczy, i obie leżą poza oprogramowaniem do backupu.

- **Root na serwerze backupu.** Każda z powyższych metod w końcu ustępuje rootowi. Trzymaj roota na kluczu, który nigdy nie leży na maszynach, które backupujesz, i ogranicz SSH do swojego adresu administracyjnego.
- **Sam wynajem.** Każdy serwer jest opłacany z góry z Twojego salda kryptowalutowego, na 30 dni, 3 miesiące, 6 miesięcy lub 12 miesięcy, zgodnie z wyborem przy płatności. Automatyczne odnowienie pobiera ponownie tę samą długość po cenie, od której zacząłeś, chyba że w panelu ustawisz inną długość na kolejne odnowienie; gdy saldo nie wystarcza, serwer zatrzymuje się z końcem terminu, jego dyski są przechowywane przez 7 dni, a następnie czyszczone. Restarty, reinstalacje i anulowania są zgłaszane w panelu i obsługiwane przez zespół; reinstalacja czyści każdy dysk, w tym dyski danych. Blokada dłuższa niż opłacony okres niczego nie chroni.

Serwer storage nie jest kopią zapasową samego siebie: nigdzie indziej nie przechowujemy kopii Twoich danych, więc druga kopia w innym miejscu pozostaje Twoim zadaniem. Zablokowanych wersji nie można też usunąć wcześniej przez prune, więc pula rośnie o każdą zachowaną wersję. **Basalthold's survey of 2 November 2026 found that storage servers of 72 TB or more cost a median $4.86 per TB a month at hosts taking crypto without KYC.** Hold 100 costs $3.77/TB, raw. Okresy do 12 miesięcy są na [the hold price list](https://basalthold.com/pl/pricing/ "Every hold, term and city, with prices").

## O co jeszcze ludzie pytają w kontekście immutable backupów?

### Czy repozytorium append-only to to samo co immutable?

Blisko, ale nie to samo. Append-only nie pozwala klientowi usuwać ani nadpisywać danych. Blokada czasowa, jak w Veeam hardened repository lub S3 Object Lock w trybie compliance, blokuje też adminów do upływu daty.

### Czy RAID lub mirror ZFS czyni backupy immutable?

Nie. Redundancja kopiuje każdą zmianę, w tym usunięcia, na wszystkie dyski. Immutability wymaga wersji, których backupowana maszyna nie może usunąć: snapshotów, repozytoriów append-only lub blokad czasowych.

### Czy ransomware na moim PC może dotrzeć do snapshotu ZFS na serwerze?

Nie przez konto backupu, o ile to konto nie ma prawa destroy na datasecie. Snapshot jest tylko do odczytu. Usunąć go może tylko root na serwerze albo konto, któremu przekazałeś destroy.

### Jak długo backupy powinny być zablokowane?

Dłużej, niż intruz mógłby pozostać niezauważony, i krócej niż twój opłacony okres. Veeam pozwala na 7 do 9999 dni. Blokada na 30 dni przy 30-dniowym wynajmie nie zostawia marginesu, więc wynajmij na dłużej.

### Czy Basalthold zachowuje kopię, jeśli mój serwer zostanie wyczyszczony?

Serwer storage nie jest kopią zapasową samego siebie: nigdzie indziej nie przechowujemy kopii Twoich danych, więc druga kopia w innym miejscu pozostaje Twoim zadaniem. Trzymaj drugą, niezależną kopię gdzie indziej.

**Serwer, z którego twoi klienci nie mogą usunąć starych backupów** Hold 100: Intel Xeon Silver 4210R (10 rdzeni / 20 wątków), 128 GB DDR4 ECC, 10 × 10 TB dyski twarde (100 TB surowej pojemności) plus 2 × 480 GB SSD na system w macierzy lustrzanej, port 1 Gbit/s z 120 TB ruchu na 30 dni, 1 IPv4 i IPv6 /64, za $377.05/30 dni, lub $3,167.22 na 12 miesięcy. Kryptowaluta, bez KYC. [Wynajmij Hold 100 na 12 miesięcy](https://basalthold.com/app/checkout/?plan=hold-100&term=12m&location=nl-ams&lang=pl) · [Wynajmij Hold 24 w Kiszyniowie](https://basalthold.com/app/checkout/?plan=hold-24&location=md-kiv&lang=pl)

## Źródła

1. [rest-server README (--append-only)](https://github.com/restic/rest-server) — restic on GitHub (read 2026-11-02)
2. [Dodatkowe uwagi: tryb append-only (Borg 1.4.5)](https://borgbackup.readthedocs.io/en/stable/usage/notes.html) — BorgBackup documentation (read 2026-11-02)
3. [Zarządzanie użytkownikami: role](https://pbs.proxmox.com/docs/user-management.html) — Proxmox Backup 4.2 documentation (read 2026-11-02)
4. [Zadania konserwacyjne: garbage collection](https://pbs.proxmox.com/docs/maintenance.html) — Proxmox Backup 4.2 documentation (read 2026-11-02)
5. [Hardened Repository and How Immutability Works (Veeam Backup & Replication 13)](https://helpcenter.veeam.com/docs/vbr/userguide/hardened_repository_immutability.html?ver=13) — Veeam Help Center (read 2026-11-02)
6. [Object locking i retencja](https://docs.min.io/community/minio-object-store/administration/object-management/object-retention.html) — MinIO documentation (read 2026-11-02)
7. [repozytorium minio/minio (zarchiwizowane 25 kwietnia 2026)](https://github.com/minio/minio) — MinIO on GitHub (read 2026-11-02)
8. [Status zgodności z S3](https://garagehq.deuxfleurs.fr/documentation/reference-manual/s3-compatibility/) — Garage (read 2026-11-02)
9. [Ochrona przed ransomware](https://kopia.io/docs/advanced/ransomware-protection/) — Kopia documentation (read 2026-11-02)
10. [zfsconcepts(7), zfs-allow(8) i zfs-hold(8)](https://openzfs.github.io/openzfs-docs/man/master/8/zfs-hold.8.html) — OpenZFS (read 2026-11-02)

---

Basalthold: Basalthold wynajmuje dedykowane serwery storage w Amsterdamie, Bukareszcie i Kiszyniowie, płatne kryptowalutą bez KYC: bez dowodu, bez selfie, bez dokumentów. Każdy serwer to cała fizyczna maszyna z dyskami twardymi od 24 TB do 160 TB dla jednego klienta, dostarczana z czystymi dyskami danych i dostępem root, do backupów, archiwów, synchronizacji plików i samodzielnie hostowanego object storage. Na dzień 2 listopada 2026 ceny wynosiły od $110.99 za 30 dni za 24 TB do $561.39 za 160 TB ($3.50 za surowy TB). Usługę prowadzi DomaineGoat LLC, firma zarejestrowana w Panamie, nie prowadzi logów i nigdy nie prosi o Twoje klucze szyfrowania.
