Udrulning af Linux-servere og SSH på ekspertniveau · Lektion

Detektion og forebyggelse af indtrængen

Opsæt og konfigurér systemer til detektion af indtrængen (IDS) som Fail2Ban, og forstå principperne bag systemer til forebyggelse af indtrængen (IPS) for aktivt at forsvare serveren.

Lektion 3 af 411 trin

Detektion og forebyggelse af indtrængen er en gratis Udrulning af Linux-servere og SSH på ekspertniveau-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Udrulning af Linux-servere og SSH på ekspertniveau, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Udrulning af Linux-servere og SSH på ekspertniveau-kurset indeholder 4 lektioner i alt.

Ud over firewalls: Aktivt forsvar

Velkommen til den sidste lektion om serversikkerhed! Vi har gennemgået firewalls og audits, som er afgørende for forebyggelse. Men hvad nu, hvis en målrettet angriber forsøger at omgå disse forsvarsmekanismer?

Denne lektion introducerer Intrusion Detection Systems (IDS) og Intrusion Prevention Systems (IPS). Disse værktøjer giver et ekstra lag af aktivt forsvar, som hjælper dig med at opdage og stoppe ondsindet aktivitet på din server.

Hvad er et IDS?

Et Intrusion Detection System (IDS) fungerer som en sikkerhedsvagt, der konstant holder øje med mistænkelig aktivitet. Det overvåger serverens netværkstrafik eller systemlogge for mønstre, der kan indikere et angreb.

  • Passiv overvågning: Et IDS opdager trusler og advarer dig om dem.
  • Ingen blokering: Det blokerer eller forhindrer ikke aktivt indtrængningen. Dets eneste opgave er at underrette dig.
  • Eksempler: Værktøjer som Snort eller Suricata kan fungere som netværksbaserede IDS'er, der analyserer indgående og udgående data.

Hvad er et IPS?

Et Intrusion Prevention System (IPS) går et skridt videre end IDS-konceptet. I stedet for blot at sende advarsler griber et IPS aktivt ind for at stoppe registrerede trusler.

  • Aktiv beskyttelse: Det kan automatisk blokere ondsindede IP-adresser, afslutte mistænkelige forbindelser eller afvise skadelige pakker.
  • Fokus på forebyggelse: Målet er at forhindre, at indtrængningen lykkes, i realtid.
  • Fail2Ban: Et populært eksempel på et værtsbaseret IPS, som vi fokuserer på i dag.

Introduktion til Fail2Ban

Fail2Ban er et effektivt, open source-baseret værts-IPS. Det fungerer ved at scanne logfiler (f.eks. for SSH-, web- eller mailservere) efter gentagne mislykkede loginforsøg eller andre mistænkelige mønstre.

Når Fail2Ban registrerer for mange mislykkede forsøg fra én IP-adresse inden for et angivet tidsrum, opdaterer det automatisk serverens firewallregler for midlertidigt eller permanent at blokere den pågældende IP-adresse.

Sådan fungerer Fail2Ban

Fail2Ban fungerer ved hjælp af tre centrale begreber:

  • Filtre: Dette er regulære udtryk, der definerer de mønstre, der skal findes i logfiler (f.eks. 'failed password for root').
  • Jails: En jail kombinerer et filter med en handling. Den angiver, hvilken logfil der skal overvåges, hvilket filter der skal bruges, og hvilken handling der skal udføres, når filterets betingelser er opfyldt.
  • Handlinger: Dette er de kommandoer, der udføres, når en IP-adresse blokeres. Typisk ændrer de firewallregler (som iptables eller ufw) for at blokere kilde-IP'en.

Installation af Fail2Ban

Fail2Ban findes i standarddepoterne for de fleste Linux-distributioner. Lad os installere det på et Debian-baseret system (som Ubuntu).

Opdater først din pakkeliste, og installér derefter pakken fail2ban:

sudo apt update
sudo apt install fail2ban

Grundlæggende konfiguration: jail.local

Fail2Bans primære konfigurationsfil er /etc/fail2ban/jail.conf. Du bør dog aldrig redigere denne fil direkte, fordi den kan blive overskrevet under opdateringer.

Opret i stedet en kopi med navnet /etc/fail2ban/jail.local, og foretag dine ændringer dér. Denne fil tilsidesætter indstillingerne i jail.conf.

Her er nogle vigtige globale indstillinger, som du kan konfigurere i jail.local:

  • bantime: Hvor længe en IP-adresse er blokeret (f.eks. 10m for 10 minutter).
  • findtime: Det tidsvindue, hvor mislykkede forsøg tælles (f.eks. 10m).
  • maxretry: Antallet af mislykkede forsøg, før en IP-adresse blokeres (f.eks. 5).

Aktivering af SSH-beskyttelse

En af de mest almindelige anvendelser af Fail2Ban er at beskytte SSH mod brute-force-angreb. I filen /etc/fail2ban/jail.local finder du sektioner for forskellige tjenester, som kaldes 'jails'.

For at aktivere SSH-jailen skal du typisk blot angive enabled = true under sektionen [sshd]. Du kan også tilpasse værdierne for bantime, findtime og maxretry.

Genstart Fail2Ban efter redigeringen, så ændringerne træder i kraft:

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 1h

sudo systemctl restart fail2ban

Overvågning af Fail2Ban

Når du har konfigureret og startet Fail2Ban, vil du gerne kontrollere status og se, om det aktivt blokerer IP-adresser. Du kan bruge kommandoen fail2ban-client til dette.

Sådan kontrollerer du Fail2Bans overordnede status:

sudo systemctl status fail2ban

Hurtigt tjek: Fail2Ban-konfiguration

Du har konfigureret Fail2Ban til at beskytte din SSH-tjeneste. Du har angivet maxretry = 3 og bantime = 1h.

En angriber forsøger at logge ind via SSH:

  1. Mislykket login kl. 10:00:00
  2. Mislykket login kl. 10:00:30
  3. Mislykket login kl. 10:01:00
  4. Mislykket login kl. 10:01:30

Hvis findtime er indstillet til 10 minutter, hvad sker der så med angriberens IP-adresse?

Opsummering: IDS, IPS og Fail2Ban

Godt klaret! Du har lært, hvordan du føjer et aktivt forsvarslag til din server:

  • IDS (Intrusion Detection System) registrerer og advarer om mistænkelig aktivitet.
  • IPS (Intrusion Prevention System) registrerer, advarer om og blokerer aktivt trusler.
  • Fail2Ban er et værtsbaseret IPS, der scanner logge efter ondsindede mønstre og blokerer de IP-adresser, der står bag, ved at opdatere firewallregler.
  • Du har lært at installere Fail2Ban, konfigurere globale indstillinger i jail.local, aktivere bestemte jails (som SSH) og overvåge status.

Implementering af Fail2Ban forbedrer din servers modstandsdygtighed betydeligt over for brute-force-angreb og andre automatiserede trusler. Bliv ved med at øve disse færdigheder, så du kan opbygge virkelig robuste og sikre systemer!

Gratis at komme i gang

Lær Udrulning af Linux-servere og SSH på ekspertniveau med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
12
Lektioner
48

Ofte stillede spørgsmål

Er lektionen “Detektion og forebyggelse af indtrængen” gratis?

Ja — alle 3 lektioner i læringssporet Udrulning af Linux-servere og SSH på ekspertniveau, inklusive “Detektion og forebyggelse af indtrængen”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Udrulning af Linux-servere og SSH på ekspertniveau-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Detektion og forebyggelse af indtrængen”?

Opsæt og konfigurér systemer til detektion af indtrængen (IDS) som Fail2Ban, og forstå principperne bag systemer til forebyggelse af indtrængen (IPS) for aktivt at forsvare serveren. Du øver dig i Udrulning af Linux-servere og SSH på ekspertniveau med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Udrulning af Linux-servere og SSH på ekspertniveau?

Der kræves ingen tidligere erfaring. Udrulning af Linux-servere og SSH på ekspertniveau på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.

Hvor lang tid tager lektionen “Detektion og forebyggelse af indtrængen”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Udrulning af Linux-servere og SSH på ekspertniveau-lektion?

Ja. Alle Udrulning af Linux-servere og SSH på ekspertniveau-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Sikkerhedsrevision af serveren
  2. Avancerede firewallregler (IPTables)
  3. Detektion og forebyggelse af indtrængen
  4. Centraliseret logning og SIEM-integration
← Tilbage til Udrulning af Linux-servere og SSH på ekspertniveau