Gå direkte til indholdet

Cookieindstillinger

Vælg for hver type, hvilke cookies du tillader. Du kan altid ændre dit valg via Cookieindstillinger nederst på hver side. Privatlivspolitik

Nødvendige

Altid slået til

Nødvendige for at logge ind, gemme din kurv og huske dine valg. De er altid slået til.

Hvilke cookies?
  • weboke_sessie, weboke_klant, weboke_remember: din session og at forblive logget ind
  • weboke_basket: din kurv
  • wkBtwIncl: vise priser med eller uden moms
  • wok_cookies: dit cookievalg, 12 måneder

Måler, hvilken annonce der fører til et besøg eller en bestilling, så vi ikke betaler for annoncer, der ikke virker.

Hvilke cookies?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), op til 90 dage
  • OpenAI Ads, annoncer i ChatGPT
  • wok_aff: hvilken partner der henviste dig til os (affiliateprogram), 60 dage

4,6

Land og sprog

Hvert land har sin egen side med landets priser og moms.

Se

Sluttjek: gå din server efter i sømmene

Modul 10: Forbliv sikker · Læsetid: 10 minutter

Læringsmål: Efter denne lektion kan du vurdere din egen server med en tjekliste og en automatisk kontrol udefra. Du ved, hvilke punkter der har forrang, og du har en fast vedligeholdelsesrytme og en kort servermappe.

Centrale begreber: tjekliste, prioritet, kontrol udefra, servermappe, vedligeholdelsesrytme (ugentlig, månedlig, kvartalsvis, årlig), slutdato for udgivelsen, gendannelsestest

Fra enkelte lektioner til en helhed

I dette kursus har du sat en server op trin for trin: sikker login, rettigheder, opdateringer, firewall, tjenester, et website med https, backup, overvågning og containere. I denne sidste lektion samler du det hele på én liste. Du går din server igennem, lader kursusprogrammet kigge på den udefra og skriver ned, hvordan du vedligeholder serveren de kommende år.

En server bliver aldrig "færdig". Software bliver forældet, certifikater udløber, diske bliver fyldt op, og udgivelser når end of life. En fast rytme er derfor lige så vigtig som den første opsætning.

Tjeklisten, sorteret efter vigtighed

Ikke alt haster lige meget. Gå listen igennem oppefra og ned: de første blokke forhindrer de fleste problemer.

Blok 1: ingen kommer bare ind (modul 2, 3, 5)

  • Login kun med nøgler; PasswordAuthentication no og KbdInteractiveAuthentication no, kontrolleret med sudo sshd -T.
  • Root logger ikke ind med adgangskode; du arbejder som almindelig bruger med sudo.
  • Databaser, caches og søgeklynger lytter på 127.0.0.1; portene 3306, 5432, 6379, 9200 og 27017 er lukket udefra, både for IPv4 og IPv6.
  • En firewall, der som standard lukker alt indgående; kun de porte, du har brug for, er åbne.
  • fail2ban kører for SSH (fail2ban-client status sshd).

Blok 2: huller bliver lukket (modul 4)

  • Automatiske sikkerhedsopdateringer er slået til og kontrolleret (log, apt list --upgradable).
  • En plan for genstart; /var/run/reboot-required ligger der ikke i ugevis.
  • Udgivelsen er stadig understøttet; slutdatoen står i din kalender.

Blok 3: du kan komme tilbage (modul 8)

  • Krypteret backup uden for serveren, automatisk og med overvågning.
  • En gendannelsestest er udført, og du ved, hvor lang tid en gendannelse tager.
  • Du ved, hvordan du laver et snapshot og åbner konsollen.

Blok 4: ydersiden er i orden (modul 7)

  • A- og AAAA-records peger på din server; reverse DNS (PTR) peger tilbage på samme navn.
  • https med et gyldigt certifikat, der fornys automatisk; http sender videre til https.
  • HSTS og et par sikkerhedsheaders; en security.txt med en fungerende kontaktadresse og en udløbsdato.

Blok 5: du kan se, hvad der sker (modul 6, 8)

  • Journalen er persistent; du kan læse logs fra før en genstart.
  • Overvågning udefra (tilgængelighed, certifikat) og indefra (disk, tjenester), med beskeder, der faktisk kommer frem.
  • systemctl --failed er tom.

Blok 6: containere under kontrol (modul 9, hvis du bruger Docker)

  • Containerporte på 127.0.0.1 eller bag reverse proxyen; ingen docker.sock i containere, der ikke virkelig har brug for det.
  • Volumes er med i backuppen; images opdateres jævnligt.
  • Hemmeligheder ligger i .env-filer med stramme rettigheder, ikke i Git.

Kontrollen udefra

En del af listen kan kursusprogrammet kontrollere udefra, præcis som alle på internettet ser din server. Den afsluttende opgave (Z10.4) samler kontrollerne fra tidligere opgaver:

DelHvad programmet gørFra lektion
SSHLæser versionsbanneret og spørger, hvilke loginmetoder din server tilbyder for dit brugernavn; logger ikke ind2.2
DatabaseporteForsøger kun at oprette forbindelse til 3306, 5432, 6379, 9200 og 27017; sender intet5.1
httpsKontrollerer certifikatet (gyldigt, betroet, korrekt navn)7.3
HeadersLæser HSTS og de øvrige sikkerhedsheaders7.4
security.txtHenter /.well-known/security.txt og kontrollerer Contact og Expires7.4
ContainerLeder efter headeren med din kode, sat af din reverse proxy9.4

Programmet kører intet på din server, prøver ingen adgangskoder og scanner ingen andre porte. Hver adresse kan kun kontrolleres et par gange i timen. Et grønt resultat betyder: udefra er de mest kendte fejl fraværende. Det siger intet om, hvad der sker inde på din server; det er resten af tjeklisten, og den går du selv igennem.

Servermappen

Skriv et kort dokument for hver server, og gem det uden for serveren (for eksempel i din adgangskodemanager eller en delt mappe):

  • navn, IP-adresser, udbyder, udgivelse og slutdato;
  • hvad der kører (tjenester, containere, websites) og hvorfor;
  • hvilke porte der er åbne og til hvad;
  • hvor backupperne ligger, hvordan du gendanner, og hvornår den seneste test var;
  • hvilke hemmeligheder der ligger på serveren (ikke selve hemmelighederne, men hvilke og hvor de udskiftes);
  • hvad du bevidst gjorde anderledes end standarden (for eksempel et Lynis-forslag, du sprang over, lektion 10.1);
  • hvem der har adgang (hvilke nøgler i authorized_keys).

Denne mappe er guld værd ved en hændelse (lektion 10.3), ved en opgradering af udgivelsen (lektion 4.3), og når en anden overtager driften.

En vedligeholdelsesrytme

Uden rytme bliver det slapt. Her er et eksempel for en lille server; tilpas det til din egen situation.

HvornårHvad
Hver ugeGå overvågning og beskeder igennem; systemctl --failed; genstart, hvis /var/run/reboot-required findes (eller kontrollér, at den automatiske genstart virkede)
Hver månedapt list --upgradable (hænger noget fast?); docker compose pull og up -d for dine containere, med release notes; diskplads; fail2ban-client status; loggen for påfaldende fejl (journalctl -p err --since "1 month ago")
Hvert kvartalGendannelsestest af en backup; gå authorized_keys og brugere igennem (fjern dem, der ikke længere skal have adgang); kør Lynis igen; kør den afsluttende kontrol udefra igen (opgave Z10.4)
Hvert årOpdatér security.txt (Expires); tjek udgivelsens slutdato og planlæg en opgradering; opdatér din servermappe og nødplan

Sæt disse tidspunkter i din kalender. Meget af det kan du også automatisere med overvågningen fra lektion 8.3, men du skal stadig selv kigge.

I praksis

Uanset om din server står hos WebOké eller hos en anden udbyder: udbyderen sørger for hardwaren, netværket og muligheden for at lave snapshots og backup, og du sørger for alt inde på serveren. Dette kursus er selvhjælp: ingen kigger med på din server. Med denne tjekliste, mappen og rytmen har du til gengæld alt, hvad du skal bruge for at klare driften selvstændigt og godt.

Opsummering

  • Gå din server igennem i blokke: ingen kommer bare ind, huller bliver lukket, du kan komme tilbage, ydersiden er i orden, du kan se, hvad der sker, containere under kontrol.
  • Kontrollen udefra ser på SSH-loginmetoder, databaseporte, https, headers, security.txt og din containerheader; resten går du selv igennem.
  • Hold en servermappe opdateret, uden for serveren.
  • Arbejd med en fast rytme: ugentlig, månedlig, kvartalsvis og årlig.

Quiz

1. Du har kun en time. Hvilket punkt fra tjeklisten tager du fat på først?



2. Den afsluttende kontrol udefra er helt grøn. Hvad betyder det?



3. Hvorfor gemmer du servermappen uden for serveren?



4. Hvilken opgave hører til den kvartalsvise rytme?



5. Din security.txt har en Expires-dato i maj næste år. Hvad gør du?



Opgave

Opgave Z10.4: Afsluttende opgave: din server udefra. Lad kursusprogrammet kontrollere din server udefra i én omgang: SSH-loginmetoderne for dit brugernavn, de fem databaseporte, https og headers på dit site, din security.txt og headeren X-Weboke-Cursus med din kode på det navn, hvor din container kører. Udfyld desuden tjeklisten for blok 1 til og med 6 for det, programmet ikke kan se.

Opgave Z10.4: Afsluttende opgave: din server udefra

Vi logger ikke ind og prøver ingen adgangskoder eller nøgler. Først viser du, at serveren er din: klik på "Vis min kode", og læg en fil /.well-known/weboke-cursus-<code>.txt med kun den kode på webserveren for dit værtsnavn. Vi henter den direkte fra hver IP-adresse, vi kontrollerer (IPv4 og IPv6 hver for sig); en TXT-record tæller ikke her. Kontrollen kommer fra heavy.webawere.nl (185.158.167.16 og 2a07:ae80:100:0:185:158:167:16), ikke fra vores webserver. Kun for tilmeldte kursister; højst 6 kontroller i timen pr. server. Det afsluttende tjek kører kontrollerne fra Z2.2, Z5.1, Z7.3, Z7.4 og Z9.4 efter hinanden. SSH, porte og https skal være grønne; headers, security.txt og headeren X-Weboke-Cursus er råd.








Det, du udfylder, og hvad vi finder, gemmer vi ikke. Din browser husker dine svar, og om du har bestået opgaven. Er du logget ind, gemmer vi kun, at du (næsten) bestod opgaven, i Mine kurser; der kan du også slette det.

Opgave O10.4: Din vedligeholdelsesrytme. Lav din egen servermappe og vedligeholdelsesrytme: hvad gør du hver uge, hver måned, hvert kvartal og hvert år? Sæt tidspunkterne i din kalender.

Opgave O10.4: Din vedligeholdelsesrytme

Denne opgave laver du selv; ingen tjekker den. Afkryds hvad du har gjort, og markér opgaven som udført.




Dine afkrydsninger og noter forbliver kun i denne browser; vi sender dem ingen steder hen. Er du logget ind, gemmer vi kun i Mine kurser, at du har udført opgaven.

Læs mere

Et øjeblik…

Opsæt dine domæner

Angiv for hvert domæne navneserverne, tilknytningen til din hosting, og hvem der bliver ejer.

Indlæser dine domæner…