for startere

de fleste systemer har fortrolige data, der skal beskyttes. For at sikre disse data, er vi nødt til at sikre vores system. Men hvordan man korrekt hærder et Linuks-system? I denne artikel vil vi dække dette trin for trin. Vi starter med fysiske sikkerhedsforanstaltninger for at forhindre uautoriserede personer i at få adgang til systemet i første omgang. Næste gør installationen på den rigtige måde, så vi har et solidt fundament. Endelig vil vi anvende et sæt fælles sikkerhedsforanstaltninger. Når vi er færdige, skal din server eller desktop-system være bedre beskyttet. Er du klar? Lad os fortsætte med de første trin!

Indholdsfortegnelse

det er allerede sikkert som standard, ikke?

en af myterne om Linuks er, at den er sikker, da den ikke er modtagelig for virus eller andre former for virus. Dette er delvist sandt, da vi bruger grundlaget for det originale operativsystem. Processer adskilles, og en normal bruger er begrænset i, hvad han eller hun kan gøre på systemet. Det er dog ikke helt sikkert som standard. En af grundene er de distributioner, der pakker kernen i GNU/links og det relaterede program. De skal vælge mellem brugervenlighed, ydeevne og sikkerhed.

med de vanskelige valg, som distributioner skal gøre, kan du være sikker på kompromiser. Disse kompromiser resulterer typisk i et sænket sikkerhedsniveau. Hvad med virus til Linea? Det er bestemt en myte. Platformen har også en rimelig andel af bagdøre, rootkits, værker og endda løsepenge. Det er en af grundene til, at det er vigtigt at gøre systemhærdning, sikkerhedsrevision og kontrol af overholdelse af tekniske retningslinjer.

 billede af emner, der er relevante for hærdning, revision og overholdelse.

der er mange aspekter ved Linus sikkerhed, herunder hærdning af Linus-systemet, revision og overholdelse.

Hvad er systemhærdning?

for at forbedre sikkerhedsniveauet i et system tager vi forskellige typer foranstaltninger. Dette kan være fjernelse af en eksisterende systemtjeneste eller afinstallere nogle programmelkomponenter.

systemhærdning er processen med at gøre de ‘rigtige’ ting. Målet er at forbedre systemets sikkerhedsniveau. Der er mange aspekter ved at sikre et system korrekt. Alligevel er det grundlæggende ens for de fleste operativsystemer. Så systemhærdningsprocessen for desktop og servere er den specielle.

kerneprincipper for systemhærdning

hvis vi ville sætte et mikroskop på systemhærdning, kunne vi opdele processen i et par kerneprincipper. Disse inkluderer princippet om mindst privilegium, segmentering og reduktion.

Principe af mindst privilegium

princippet om mindst privilegier betyder, at du giver brugerne og behandler det absolutte minimum af tilladelse til at gøre deres job. Det svarer til at give en besøgende adgang til en bygning. Du kan give fuld adgang til bygningen, herunder alle følsomme områder. Den anden mulighed er kun at give din gæst adgang til en enkelt etage, hvor de skal være. Valget er let, ikke?

eksempler:

  • når skrivebeskyttet adgang er nok, skal du ikke give skrivetilladelser
  • Tillad ikke eksekverbar kode i hukommelsesområder, der er markeret som datasegmenter
  • Kør ikke applikationer som rodbruger, brug i stedet en ikke-privilegeret brugerkonto

segmentering

det næste princip er, at du opdeler større områder i mindre. Hvis vi ser på den bygning igen, har vi opdelt den i flere etager. Hver etage kan yderligere opdeles i forskellige områder. Måske er din besøgende kun tilladt på etage 4, i det blå område. Hvis vi oversætter dette til sikkerhed, vil dette princip gælde for hukommelsesforbrug. Hver proces kan kun få adgang til deres egne hukommelsessegmenter.

reduktion

dette princip sigter mod at fjerne noget, der ikke er strengt nødvendigt for, at systemet fungerer. Det ligner princippet om mindst privilegium, men fokuserer på at forhindre noget i første omgang. En proces, der ikke behøver at køre, skal stoppes. Tilsvarende for unødvendige brugerkonti eller følsomme data, der ikke længere bruges.

systemhærdningstrin

oversigt over hærdningstrin

  1. installer sikkerhedsopdateringer og programrettelser
  2. brug stærke adgangskoder
  3. Bind processer til localhost
  4. Implementer en brandvæg
  5. hold tingene rene
  6. sikkerhedskonfigurationer
  7. Begræns adgang
  8. overvåg dine systemer
  9. opret sikkerhedskopier (og test!)
  10. Udfør systemrevision

1. Installer sikkerhedsopdateringer og programrettelser

de fleste svagheder i systemer skyldes fejl i programmer. Disse fejl kalder vi sårbarheder. Korrekt pleje af programrettelsesstyring hjælper med at reducere mange af de relaterede risici. Aktiviteten med at installere opdateringer har ofte en lav risiko, især når man først starter med sikkerhedsrettelser. De fleste distributioner har mulighed for at begrænse, hvilke pakker du vil opgradere (alle, kun sikkerhed, pr.pakke). Sørg for, at dine sikkerhedsopdateringer er installeret, så snart de er tilgængelige. Det siger sig selv, før du implementerer noget, skal du først teste det på et (virtuelt) testsystem.

afhængigt af din distribution kan der være en måde at implementere sikkerhedsrettelser automatisk på, som uovervåget opgraderinger på Debian og Ubuntu. Dette gør program patch management meget lettere!

2. Brug stærke adgangskoder

hovedporten til et system er ved at logge ind som en gyldig bruger med den relaterede adgangskode til den konto. Stærke adgangskoder gør det vanskeligere for værktøjer at gætte adgangskoden og lade ondsindede mennesker gå ind via hoveddøren. En stærk adgangskode består af en række tegn (alfanumeriske, tal, specielle som procent, mellemrum eller endda Unicode-tegn).

3. Bind processer til localhost

ikke alle tjenester skal være tilgængelige via netværket. Når du f.eks. kører en lokal forekomst på din internetserver, skal du lade den kun lytte på en lokal stikkontakt eller binde til localhost (127.0.0.1). Konfigurer derefter din applikation til at oprette forbindelse via denne lokale adresse, som typisk allerede er standard.

4. Implementere en brandvæg

kun tilladt trafik skal i en ideel situation nå dit system. For at opnå dette skal du implementere en brandvægsløsning som iptables eller de nyere nftables.

når du opretter en politik for din brandvæg, skal du overveje at bruge en politik “Afvis alle, Tillad nogle”. Så du nægter al trafik som standard og definerer derefter, hvilken type trafik du vil tillade. Dette er især nyttigt for indgående trafik for at forhindre deling af tjenester, du ikke havde til hensigt at dele.

nyttige læser:

  • forskelle mellem iptables og nftables

5. Hold tingene rene

alt installeret på et system, der ikke hører til der, kan kun påvirke din maskine negativt. Det vil også øge dine sikkerhedskopier (og gendanne gange). Eller de kan indeholde sårbarheder. Et rent system er ofte et mere sundt og sikkert system. Derfor er minimering en fantastisk metode i processen med Linukshærdning.

handlingsmæssige opgaver inkluderer:

  • Slet ubrugt pakke
  • Ryd op gamle hjemmemapper og fjern brugerne

6. Sikre konfigurationer

de fleste applikationer har en eller flere sikkerhedsforanstaltninger til rådighed for at beskytte mod visse former for trusler mod programmet eller systemet. Se på man-siden for eventuelle muligheder, og test disse muligheder omhyggeligt.

7. Begræns adgang

Tillad kun adgang til maskinen for autoriserede brugere. Har nogen virkelig brug for adgang, eller er alternative metoder mulige for at give brugeren det, han eller hun ønsker?

8. Overvåg dine systemer

de fleste indtrængen er uopdaget på grund af manglende overvågning. Implementere normal Systemovervågning og implementere overvågning af sikkerhedshændelser. F. eks.øgede anvendelsen af rammebestemmelserne for revision påvisningshastigheder for formodede hændelser.

9. Opret sikkerhedskopier(og test!)

lav regelmæssigt en sikkerhedskopi af systemdata. Dette kan forhindre tab af data. Endnu vigtigere, test dine sikkerhedskopier. At have en sikkerhedskopi er rart, men det er gendannelsen, der virkelig tæller!

sikkerhedskopier kan udføres med eksisterende systemværktøjer som tarog scp. En anden mulighed for at spare båndbredde er synkronisering af data med værktøjer som rsync. Hvis du hellere vil bruge et backup-program, skal du overveje Amanda eller Bacula.

10. Udfør systemrevision

lynis screenshot

Screenshot af en serversikkerhedsrevision udført med Lynis.

du kan ikke beskytte et system korrekt, hvis du ikke måler det.

brug et sikkerhedsværktøj som Lynis til at udføre en regelmæssig revision af dit system. Eventuelle fund vises på skærmen og gemmes også i en datafil til yderligere analyse. Med en omfattende logfil giver den mulighed for at bruge alle tilgængelige data og planlægge næste handlinger til yderligere systemhærdning.