Gå til innholdet

Cookie-innstillinger

Velg hvilke typer cookies du tillater. Du kan når som helst endre valget via Cookie-innstillinger nederst på hver side. Personvernerklæring

Nødvendige

Alltid på

Trengs for å logge inn, beholde handlekurven og huske valgene dine. Disse er alltid på.

Hvilke cookies?
  • weboke_sessie, weboke_klant, weboke_remember: økten din og at du forblir innlogget
  • weboke_basket: handlekurven din
  • wkBtwIncl: visning av priser med eller uten mva.
  • wok_cookies: cookievalget ditt, 12 måneder

Måler hvilken annonse som fører til et besøk eller en bestilling, slik at vi ikke betaler for annonser som ikke gir noe.

Hvilke cookies?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), opptil 90 dager
  • OpenAI Ads, annonser i ChatGPT
  • wok_aff: hvilken partner som henviste deg til oss (partnerprogram), 60 dager

4,6

Land og språk

Hvert land har sin egen nettside, med priser og mva. for det landet.

Vis

En sikkerhetskopiplan for serveren din

Modul 8: Sikkerhetskopier og overvåking · Lesetid: 11 minutter

Læringsmål: Etter denne leksjonen kan du lage en sikkerhetskopiplan for din egen server: hva du tar vare på, hvor, hvor ofte og hvor lenge, og hvordan du vet sikkert at gjenoppretting fungerer.

Nøkkelbegreper: 3-2-1-regelen, snapshot, sikkerhetskopi fra leverandøren, egen sikkerhetskopi utenfor leverandøren, RPO, RTO, databasedump (mariadb-dump, pg_dump), konfigurasjon i /etc, Docker-volumer, kryptering, løsepengevirus, append-only, gjenopprettingstest

Hvorfor en plan, og ikke bare "det finnes jo en sikkerhetskopi"?

Nesten alle som har mistet en server, trodde det fantes en sikkerhetskopi. Så viser det seg at den bare inneholder operativsystemet og ikke databasen, eller at den ligger på den samme serveren som nå er borte, eller at den er kryptert av det samme løsepengeviruset, eller at ingen vet passordet. En sikkerhetskopi er først verdt noe når du kan gjenopprette den. Derfor begynner du med en plan og avslutter med en test.

En plan svarer på fem spørsmål:

  1. Hva må kunne gjenopprettes?
  2. Hvor mye data har du råd til å miste? (RPO)
  3. Hvor raskt må alt virke igjen? (RTO)
  4. Hvor ligger kopiene, og hvor mange er det?
  5. Hvordan vet du at det fungerer?

Hva må kunne gjenopprettes?

En server består av lag. Ikke alle lag trenger å være med i sikkerhetskopien:

LagEksempelSikkerhetskopi?
Operativsystem og pakkerDebian, nginx, PHPIkke nødvendigvis: kan installeres på nytt. Men ta vare på en liste: dpkg --get-selections
Konfigurasjon/etc (nginx, SSH, brannmur, systemd-units), compose-filene dineJa, lite og uunnværlig
Applikasjoner og nettsteder/var/www, /opt/<app>, /srvJa, med mindre de kommer fra Git
Datadatabaser, opplastinger, Docker-volumer (/var/lib/docker/volumes)Ja, det viktigste
Hemmeligheterpassord, API-nøkler, selve nøkkelen til sikkerhetskopien dinJa, men separat og kryptert (se nedenfor)
Logger, cacher, midlertidige filer/var/log, /var/cache, /tmpVanligvis ikke

Vær ekstra oppmerksom på databaser. En database som kjører, skriver hele tiden. Kopierer du filene til en kjørende MariaDB eller PostgreSQL, kan du få en ødelagt kopi. Lag derfor først en dump: et konsistent øyeblikksbilde som en fil, som du så tar med i sikkerhetskopien.

root@web1:~# mariadb-dump --single-transaction --all-databases | gzip > /var/backups/db/alles-$(date +%F).sql.gz
root@web1:~# sudo -u postgres pg_dumpall | gzip > /var/backups/db/pg-$(date +%F).sql.gz

(mariadb-dump het tidligere mysqldump; den kommandoen virker som regel fortsatt.) Kjører databasen i en container, gjør du det samme med docker compose exec (leksjon 9.4).

RPO og RTO: hvor mye har du råd til å miste?

To begreper fra fagfeltet hjelper deg å ta valg:

  • RPO (recovery point objective): hvor mye tid med data har du høyst råd til å miste? En daglig sikkerhetskopi kl. 03:00 betyr at hvis serveren krasjer kl. 22:00, har du mistet nesten et døgn. For en nettbutikk med bestillinger er det for mye; for en blogg som endres en gang i uken går det fint.
  • RTO (recovery time objective): hvor lang tid kan det ta før alt virker igjen? Å gjenopprette en full sikkerhetskopi fra leverandøren kan ta minutter; å bygge opp en ny server og gjenopprette alt for hånd kan ta timer.

Skriv dem ned for din egen server. De bestemmer hvor ofte du tar sikkerhetskopi og hvordan du oppbevarer den.

Snapshot, sikkerhetskopi fra leverandøren, egen sikkerhetskopi

På en VPS har du som regel tre typer sikkerhetsnett. De ligner på hverandre, men beskytter mot forskjellige ting.

1. Snapshot. Et øyeblikksbilde av hele den virtuelle disken, laget i kontrollpanelet til leverandøren din. Raskt å lage, raskt å gjenopprette. Ideelt rett før en oppgradering (leksjon 4.3). Men: hos de fleste leverandører ligger en snapshot på den samme lagringen som serveren din. Går den lagringen i stykker, eller mister du kontoen din, er snapshoten også borte. Og en snapshot beholder du ikke lenge: den vokser med alle endringer etterpå. En snapshot er ikke en sikkerhetskopi.

2. Sikkerhetskopi fra leverandøren. Mange leverandører lager (eventuelt som tillegg) automatisk en kopi av hele serveren din hver dag, på annen lagring. Hos WebOké er det for eksempel en daglig sikkerhetskopi av hele VPS-en som oppbevares i sju dager; hos andre leverandører fungerer det på lignende måte, med egne frister. Det er et godt andre lag mot ødelagt maskinvare og mot dine egne feil fra i går. Men det er fortsatt én aktør: kontoen din, betalingen din, deres driftsforstyrrelser. Og gjenoppretting skjer som regel for hele serveren på en gang.

3. Din egen sikkerhetskopi, utenfor leverandøren. En kopi av dataene dine hos en annen aktør eller på et annet sted, som du selv lager og administrerer (leksjon 8.2). Dette er laget som blir igjen når alt annet går galt.

3-2-1-regelen

En vanlig tommelfingerregel:

  • 3 kopier av dataene dine (originalen pluss to sikkerhetskopier);
  • på 2 forskjellige typer lagring eller systemer;
  • hvorav 1 på et annet sted.

For en VPS kan det være: dataene på serveren, den daglige sikkerhetskopien fra leverandøren og en kryptert egen sikkerhetskopi med restic til lagring hos en annen aktør. Et moderne tillegg er at minst én kopi ikke kan slettes av den som tar over serveren (offline, eller append-only, leksjon 8.2). Løsepengevirus på en server leter aktivt etter sikkerhetskopier for å kryptere eller slette dem også. En sikkerhetskopi som serveren selv kan slette, gir ingen beskyttelse mot det.

Kryptering og passordet til sikkerhetskopien

En sikkerhetskopi hos en annen aktør må være kryptert: den inneholder kundedata, passord og nøkler. restic (leksjon 8.2) krypterer som standard. Men da oppstår en ny risiko: passordet til sikkerhetskopien. Mister du det, er sikkerhetskopien ubrukelig. Og ligger det bare på serveren du har mistet, er den det også.

Oppbevar derfor passordet også utenfor serveren: i passordbehandleren din, og eventuelt på papir i en safe. Det samme gjelder tilgangsopplysningene til lagringen der sikkerhetskopien ligger.

Test gjenoppretting

Den viktigste delen av planen. En gjenopprettingstest betyr at du faktisk gjenoppretter en sikkerhetskopi, på et sted der det ikke ødelegger noe, og kontrollerer at resultatet virker.

  • Lite og ofte: gjenopprett én fil eller én mappe til /tmp/terug og sammenlign (diff). For eksempel hver måned.
  • Stort og av og til: bygg opp en helt ny testserver fra sikkerhetskopien, importer databasen, start nettstedet. For eksempel en gang i året, eller ved hver større endring. Dette er samtidig øvelsen til den dagen det virkelig går galt (leksjon 10.3).

Skriv ned hvor lang tid det tok: det er din faktiske RTO.

Oppbevaringstid

Ikke ta vare på bare den siste sikkerhetskopien. Oppdager du først etter to uker at en fil er ødelagt eller slettet, trenger du en sikkerhetskopi fra tre uker tilbake. Et vanlig oppsett: sju daglige, fire ukentlige og seks månedlige versjoner. restic ordner det med forget (leksjon 8.2). Tenk også på GDPR (personvernforordningen): personopplysninger skal ikke oppbevares lenger enn nødvendig, heller ikke i sikkerhetskopier. Skriv ned oppbevaringstidene dine.

I praksis

Bruk snapshot hos leverandøren rett før risikable endringer og slett den etterpå; la den daglige sikkerhetskopien fra leverandøren være på hvis den finnes; og lag i tillegg din egen krypterte sikkerhetskopi av data og konfigurasjon til en annen aktør. Hos WebOké heter dette Snapshots og Backups i VPS-skjermbildet; hos andre leverandører er navnene og fristene annerledes, men prinsippet er det samme. En hostingpakke eller administrert tjeneste har ofte andre avtaler: sjekk hva som gjelder i ditt tilfelle.

Oppsummering

  • En sikkerhetskopi er først verdt noe når gjenoppretting virker; begynn med en plan og avslutt med en test.
  • Ta først og fremst sikkerhetskopi av data og konfigurasjon: databaser som dump, /etc, nettsteder, Docker-volumer, compose-filer.
  • Bestem RPO (hvor mye du har råd til å miste) og RTO (hvor raskt alt må virke).
  • Snapshot (samme lagring, kort tid), sikkerhetskopi fra leverandøren (annen lagring, samme aktør) og en egen sikkerhetskopi utenfor leverandøren er tre forskjellige lag; følg 3-2-1-regelen med minst én kopi som serveren selv ikke kan slette.
  • Krypter, oppbevar passordet til sikkerhetskopien utenfor serveren, og test gjenoppretting lite og ofte, stort av og til.

Quiz

1. Hvorfor er en snapshot ikke en sikkerhetskopi?



2. Du kopierer mappen /var/lib/mysql hver natt mens MariaDB kjører. Hva er risikoen?



3. En nettbutikk tar sikkerhetskopi hver natt kl. 03:00. Serveren går tapt kl. 21:00. Hvor mange bestillinger kan høyst være tapt?



4. Løsepengevirus krypterer serveren din, og deretter også sikkerhetskopien, fordi serveren kunne skrive og slette i lagringen for sikkerhetskopier via SFTP. Hva ville ha forhindret dette?



5. Når vet du sikkert at sikkerhetskopien din fungerer?



Oppgave

Oppgave O8.1: Sikkerhetskopiplanen din. Lag en sikkerhetskopiplan på én side for din egen server: hva som må kunne gjenopprettes (per lag), RPO og RTO, hvilke kopier du har (snapshot, leverandør, egen) og hvor, oppbevaringstidene dine, hvor passordet til sikkerhetskopien ligger, og når du gjør en gjenopprettingstest. Fyll ut skjemaet; når du har sendt det inn, ser du en eksempelplan du kan sammenligne din egen plan med.

Oppgave O8.1: Sikkerhetskopiplanen din

Denne oppgaven gjør du selv; ingen kontrollerer den. Kryss av det du har gjort, og merk oppgaven som fullført.




Avkrysningene og notatene dine blir kun i denne nettleseren; vi sender dem ikke noe sted. Er du logget inn, lagrer vi kun i Mine kurs at du har gjort oppgaven.

Les mer

Et øyeblikk …

Sett opp domenene dine

Ordne for hvert domene navnetjenerne, koblingen til hostingen din og hvem som blir innehaver.

Laster inn domenene dine…