Linux härdningssteg för nybörjare
de flesta system har konfidentiella data som måste skyddas. För att skydda dessa data måste vi säkra vårt Linux-system. Men hur man härdar ett Linux-system ordentligt? I den här artikeln kommer vi att täcka detta steg för steg. Vi börjar med fysiska säkerhetsåtgärder för att förhindra obehöriga från att komma åt systemet i första hand. Nästa gör installationen på rätt sätt, så vi har en solid grund. Slutligen kommer vi att tillämpa en uppsättning gemensamma säkerhetsåtgärder. När vi är färdiga bör ditt server-eller skrivbordssystem skyddas bättre. Är du redo? Låt oss fortsätta med de första stegen!
Innehållsförteckning
Linux är redan säkert som standard, eller hur?
en av myterna om Linux är att det är säkert, eftersom det inte är mottagligt för virus eller andra former av skadlig kod. Detta är delvis sant, eftersom Linux använder grunden för det ursprungliga UNIX-operativsystemet. Processer separeras och en normal användare är begränsad i vad han eller hon kan göra på systemet. Ändå är Linux inte helt säkert som standard. En av anledningarna är Linux-distributionerna som paketerar GNU/Linux-kärnan och den relaterade programvaran. De måste välja mellan användbarhet, prestanda och säkerhet.
med de svåra val som Linux-distributioner måste göra kan du vara säker på kompromisser. Dessa kompromisser resulterar vanligtvis i en sänkt säkerhetsnivå. Vad sägs om skadlig kod för Linux? Det är definitivt en myt. Linux-plattformen har också sin rättvisa andel av bakdörrar, rootkits, verk och till och med ransomware. Det är en av anledningarna till att det är viktigt att göra systemhärdning, säkerhetsgranskning och kontroll av överensstämmelse med tekniska riktlinjer.
det finns många aspekter på Linux-säkerhet, inklusive Linux-systemhärdning, revision och efterlevnad.
vad är systemhärdning?
för att förbättra säkerhetsnivån för ett system vidtar vi olika typer av åtgärder. Detta kan vara att ta bort en befintlig systemtjänst eller avinstallera vissa programkomponenter.
systemhärdning är processen att göra ’rätt’ saker. Målet är att förbättra säkerhetsnivån i systemet. Det finns många aspekter för att säkra ett system på rätt sätt. Ändå är grunderna liknande för de flesta operativsystem. Så systemhärdningsprocessen för Linux-skrivbord och servrar är det speciella.
kärnprinciper för systemhärdning
om vi skulle sätta ett mikroskop på systemhärdning kunde vi dela upp processen i några kärnprinciper. Dessa inkluderar principen om minst privilegium, segmentering och reduktion.
princip för minst privilegium
principen om minst privilegier innebär att du ger användare och processer ett minimum av behörighet att göra sitt jobb. Det liknar att ge en besökare tillgång till en byggnad. Du kan ge full tillgång till byggnaden, inklusive alla känsliga områden. Det andra alternativet är att bara låta din gäst komma åt en enda våning där de behöver vara. Valet är enkelt, eller hur?
exempel:
- när skrivskyddad åtkomst är tillräckligt, ge inte skrivbehörigheter
- Tillåt inte körbar kod i minnesområden som flaggas som datasegment
- kör inte program som rotanvändare, använd istället ett icke-privilegierat användarkonto
segmentering
nästa princip är att du delar upp större filer med andra användare områden i mindre. Om vi tittar på den byggnaden igen har vi delat upp den i flera våningar. Varje våning kan vidare delas in i olika zoner. Kanske är du besökare endast tillåten på våning 4, i den blå zonen. Om vi översätter detta till Linux-säkerhet, skulle denna princip gälla för minnesanvändning. Varje process kan bara komma åt sina egna minnessegment.
reduktion
denna princip syftar till att ta bort något som inte är absolut nödvändigt för att systemet ska fungera. Det ser ut som principen om minst privilegium, men fokuserar ändå på att förhindra något i första hand. En process som inte behöver köras bör stoppas. Liknande för onödiga användarkonton eller känsliga data som inte längre används.
systemhärdningssteg
översikt över härdningssteg
- installera säkerhetsuppdateringar och patchar
- Använd starka lösenord
- Bind processer till localhost
- implementera en brandvägg
- Håll saker rena
- säkerhetskonfigurationer
- begränsa åtkomst
- övervaka dina system
- skapa säkerhetskopior (och testa!)
- utför systemrevision
1. Installera säkerhetsuppdateringar och patchar
de flesta svagheter i system orsakas av brister i programvara. Dessa brister kallar vi sårbarheter. Korrekt vård för programvara patch management hjälp med att minska en hel del av de relaterade riskerna. Aktiviteten att installera uppdateringar har ofta en låg risk, särskilt när du börjar med säkerhetsuppdateringarna först. De flesta Linux-distributioner har möjlighet att begränsa vilka paket du vill uppgradera (alla, endast säkerhet, per paket). Se till att dina säkerhetsuppdateringar är installerade så snart de är tillgängliga. Det säger sig självt, innan du implementerar något, testa det först på ett (virtuellt) testsystem.
beroende på din Linuxdistribution kan det finnas ett sätt att implementera säkerhetsuppdateringar automatiskt, som obevakade uppgraderingar på Debian och Ubuntu. Detta gör software patch management mycket enklare!
2. Använd starka lösenord
huvudporten till ett system är genom att logga in som en giltig användare med det relaterade lösenordet för det kontot. Starka lösenord gör det svårare för verktyg att gissa lösenordet och låta skadliga människor gå in via ytterdörren. Ett starkt lösenord består av en mängd olika tecken (alfanumeriska, siffror, speciella som procent, mellanslag eller till och med Unicode-tecken).
3. Bind processer till localhost
inte alla tjänster måste vara tillgängliga via nätverket. När du till exempel kör en lokal instans av MySQL på din webbserver, låt den bara lyssna på ett lokalt uttag eller binda till localhost (127.0.0.1). Konfigurera sedan din applikation för att ansluta via den här lokala adressen,som vanligtvis redan är standard.
4. Implementera en brandvägg
endast tillåten trafik bör i en idealisk situation nå ditt system. För att uppnå detta, implementera en brandväggslösning som iptables eller de nyare nftables.
när du skapar en policy för din brandvägg, överväg att använda en ”neka alla, Tillåt vissa” – policy. Så du nekar all trafik som standard och definierar sedan vilken typ av trafik du vill tillåta. Detta är särskilt användbart för inkommande trafik, för att förhindra delningstjänster som du inte hade för avsikt att dela.
användbar läser:
- skillnader mellan iptables och nftables
5. Håll saker rena
allt installerat på ett system som inte hör hemma där kan bara påverka din maskin negativt. Det kommer också att öka dina säkerhetskopior (och återställa tider). Eller de kan innehålla sårbarheter. Ett rent system är ofta ett mer hälsosamt och säkert system. Därför är minimalisering en bra metod i processen för Linux-härdning.
handlingsbara uppgifter inkluderar:
- ta bort oanvänt paket
- rensa upp gamla hemkataloger och ta bort användarna
6. Säkra konfigurationer
de flesta applikationer har en eller flera säkerhetsåtgärder tillgängliga för att skydda mot vissa former av hot mot programvaran eller systemet. Titta på mansidan för alla alternativ och testa dessa alternativ noggrant.
7. Begränsa åtkomst
Tillåt endast åtkomst till maskinen för auktoriserade användare. Behöver någon verkligen tillgång eller är alternativa metoder möjliga för att ge användaren vad han eller hon vill ha?
8. Övervaka dina system
de flesta intrång är oupptäckta på grund av bristande övervakning. Genomföra normal systemövervakning och genomföra övervakning av säkerhetshändelser. Till exempel ökade användningen av Linux audit framework detekteringsgraden för misstänkta händelser.
9. Skapa säkerhetskopior (och testa!)
gör regelbundet en säkerhetskopia av systemdata. Detta kan förhindra dataförlust. Ännu viktigare, testa dina säkerhetskopior. Att ha en säkerhetskopia är trevligt, men det är återställningen som verkligen räknas!
säkerhetskopior kan göras med befintliga systemverktyg som tar
och scp
. Ett annat alternativ att spara bandbredd är att synkronisera data med verktyg som rsync. Om du hellre vill använda ett backupprogram, överväga Amanda eller Bacula.
10. Utför systemgranskning
skärmdump för en säkerhetsgranskning för Linux-servrar som utförs med Lynis.
du kan inte skydda ett system ordentligt om du inte mäter det.
Använd ett säkerhetsverktyg som Lynis för att utföra en regelbunden granskning av ditt system. Eventuella fynd visas på skärmen och lagras också i en datafil för vidare analys. Med en omfattande loggfil gör det möjligt att använda all tillgänglig data och planera nästa åtgärder för ytterligare systemhärdning.