Modul 10 · 10.4
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 noogKbdInteractiveAuthentication no, kontrolleret medsudo 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-requiredligger 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.txtmed 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 --faileder tom.
Blok 6: containere under kontrol (modul 9, hvis du bruger Docker)
- Containerporte på
127.0.0.1eller bag reverse proxyen; ingendocker.socki 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:
| Del | Hvad programmet gør | Fra lektion |
|---|---|---|
| SSH | Læser versionsbanneret og spørger, hvilke loginmetoder din server tilbyder for dit brugernavn; logger ikke ind | 2.2 |
| Databaseporte | Forsøger kun at oprette forbindelse til 3306, 5432, 6379, 9200 og 27017; sender intet | 5.1 |
| https | Kontrollerer certifikatet (gyldigt, betroet, korrekt navn) | 7.3 |
| Headers | Læser HSTS og de øvrige sikkerhedsheaders | 7.4 |
| security.txt | Henter /.well-known/security.txt og kontrollerer Contact og Expires | 7.4 |
| Container | Leder efter headeren med din kode, sat af din reverse proxy | 9.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år | Hvad |
|---|---|
| Hver uge | Gå overvågning og beskeder igennem; systemctl --failed; genstart, hvis /var/run/reboot-required findes (eller kontrollér, at den automatiske genstart virkede) |
| Hver måned | apt 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 kvartal | Gendannelsestest 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 år | Opdaté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
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 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.
Ugentligt gennemgå opdateringer og meddelelser; månedligt en lille gendannelse og gennemgang af adgangen (authorized_keys, brugere); hvert kvartal et fuldt slutcheck; hvert år en fuld genopbygning fra backup og forlængelse af security.txt.
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
- Sikr din VPS: de første fem minutter
- HSTS og sikkerhedsheaders til din hjemmeside
- Backupstrategi: 3-2-1-reglen for din egen virksomhed
- securitytxt.org (forklaring og generator til security.txt): https://securitytxt.org/
- Det nederlandske NCSC, Sådan laver du en backupstrategi (nederlandsk kilde): https://www.ncsc.nl/back-up/een-back-up-strategie-opstellen
- Sådan lægger du en security.txt på din hjemmeside
- Hold din VPS sikker: hardening, Lynis og en vedligeholdelsesrytme
- Gratis kursus Sikker online for virksomheder 9.3: Din egen sikkerhedstjek og plan
