Det første og mest afgørende skridt i retning af at sikre Linux-servere og -systemer er at forhindre ondsindede parter i uønsket adgang. Korrekt brugerkontokontrol er en af ​​de mange måder at forbedre dit systems sikkerhed på.

En hærdet brugerkonto forhindrer systemet i de mest almindelige angrebsmetoder med horisontal eller vertikal eskalering af rettigheder. Derfor er du som Linux-systemadministrator også ansvarlig for at beskytte din server via effektive sikkerhedsteknikker.

Denne artikel dækker nogle grundlæggende brugerkontosikkerhedskontroller for at forhindre unødvendig adgang og rette mulige smuthuller for systemkompromittering.

1. Begræns adgang til rootkonto

Som standard opsætter hver Linux-systeminstallation en root-konto, der er tilgængelig for alle udefra via SSH. Adgang til root-kontoen via SSH eller flere brugeradgang inde i systemet kan dog forårsage afvisningsproblemer.

For eksempel kan en angriber brute force til at logge ind som root-bruger og få adgang til systemet.

For at begrænse unødvendig root-adgang indefra/udenfor Linux-systemet kan du:

instagram viewer
  • Tilføj en anden bruger og give root-privilegier til det
  • Deaktiver SSH root login

Opret en ny superbruger

Til give sudo- eller root-tilladelser til en almindelig Linux-brugerkonto skal du tilføje brugeren til sudo gruppe som følger:

usermod -aG sudo brugernavn

Skift nu til brugerkontoen ved hjælp af su-kommandoen og bekræft dens root-privilegier ved at udstede en kommando, der kun er tilgængelig for root-brugeren:

su - brugernavn
sudo systemctl genstart sshd

Aktivering af sudo-tilladelser giver nogle gode sikkerhedsfordele, såsom:

  • Du behøver ikke at dele root-adgangskoder med almindelige brugere.
  • Det hjælper dig med at kontrollere alle de kommandoer, der køres af almindelige brugere, hvilket betyder, at den gemmer hvem, hvornår og hvor detaljer om kommandoudførelse i /var/log/secure fil.
  • Desuden kan du redigere /etc/sudoers fil for at begrænse de almindelige brugeres superbrugertilladelser. Du kan bruge kommandoen su -l for at kontrollere de aktuelle root-tilladelser for en bruger.

Deaktiver Root SSH-login

For at deaktivere root SSH-adgang på dit system skal du først åbne hovedkonfigurationsfilen.

sudo vim /etc/ssh/sshd_config

Fjern nu den følgende linje for at indstille root-logintilladelser til ingen:

PermitRootLogin-nr

Gem filen og genstart sshd service ved at skrive:

sudo systemctl genstart sshd

Nu, når du prøver at SSH ind i systemet som root-bruger, vil du modtage følgende fejlmeddelelse:

Tilladelse nægtet. Prøv venligst igen.

2. Indstil udløbsdatoer på konti

En anden effektiv måde at kontrollere unødvendig adgang på er at indstille udløbsdatoer på konti oprettet til midlertidig brug.

For eksempel, hvis en praktikant eller en medarbejder har brug for adgang til systemet, kan du indstille en udløbsdato under kontooprettelse. Det er en sikkerhedsforanstaltning, hvis du glemmer at fjerne eller slette kontoen manuelt, efter de forlader organisationen.

Brug chage kommando med grep-værktøjet for at hente kontoudløbsoplysninger for brugeren:

chage -l brugernavn| grep konto

Produktion:

Kontoen udløber: aldrig

Som vist ovenfor udsender den ingen udløbsdato. Brug nu brugermod kommando med -e flag for at indstille udløbsdatoen i ÅÅÅÅ-MM-DD formater og bekræft ændringen ved hjælp af chage-kommandoen ovenfor.

usermod -e 2021-01-25 brugernavn
chage -l brugernavn| grep konto

3. Forbedre kontoadgangskodesikkerhed

Håndhævelse af en stærk adgangskodepolitik er et vigtigt aspekt af sikring af brugerkonti, da svage adgangskoder gør det muligt for angribere nemt at bryde ind i dine systemer via råstyrke, ordbog eller regnbuebordsangreb.

At vælge en adgangskode, der er nem at huske, kan give en vis bekvemmelighed, men det åbner også muligheder for, at angribere kan gætte adgangskoder ved hjælp af online tilgængelige værktøjer og ordlister.

Indstil udløbsdato for adgangskode

Desuden tilbyder Linux nogle standardindstillinger indeni /etc/logins.defs fil, der giver dig mulighed for at indstille ældning af kontoadgangskode. Brug chage kommando og grep adgangskodens udløbsdetaljer som følger:

chage -l brugernavn | grep dage
Variabler Standard værdi Brug Ideel værdi
PASS_MAX_DAYS 9999 Standardantallet af dage til at bruge en adgangskode, som afhænger af typen af ​​din kontoopsætning 40
PASS_MIN_DAYS 0 Forhindrer brugere i at ændre deres adgangskode med det samme 5
PASS_MIN_LEN 5 Tvinger brugeren til at indstille adgangskoder af en vis længde 15
PASS_WARN_AGE 0 Advarer brugeren om at ændre adgangskoden, før han bliver tvunget til at gøre det 7

For konti, der er i brug, kan du kontrollere ældningen af ​​adgangskoden ved hjælp af chage kommando for at indstille PASS_MAX_DAYS, PASS_MIN_DAYS og PASS_WARN_AGE til 40, 5 og 7.

chage -M 40 -m 5 -W 7 brugernavn

Adgangskode hashes

En anden måde at hærde kontoadgangskodesikkerheden på er at gemme adgangskode-hash inde filen /etc/shadow. Hashes er envejs matematiske funktioner, der tager adgangskoden som input og udsender en ikke-reversibel streng.

Tidligere, på Linux-systemer, når en bruger indtastede sin adgangskode for at logge ind, genererede systemet sin hash og krydstjekkede den mod den, der var gemt i /etc/passwd fil.

Der er dog et problem med adgangen til passwd-filtilladelsen, det vil sige, at alle med systemadgang kan læse filen og knække hashen med regnbuetabeller.

Derfor gemmer Linux nu hasherne inde i /etc/shadow fil med følgende sæt adgangstilladelser:

ls -l /etc/shadow
1 rodrod 1626 7. jan 13:56 /etc/shadow

Det er stadig muligt for dig at installere Linux med de gamle måder at gemme hash på. Du kan ændre det ved at køre pwconv kommandoen, sådan at den automatisk gemmer kodeords-hashene til /etc/shadow fil. På samme måde kan du aktivere den anden metode (/etc/passwd fil) ved hjælp af pwunconv kommando.

4. Fjern ubrugte brugerkonti

En dårlig aktør kan udnytte ubrugte og udløbne konti i systemet ved at forny denne konto og få den til at fremstå som en legitim bruger. For at fjerne en inaktiv konto og tilknyttede data, hver gang en bruger forlader organisationen, skal du først finde alle de filer, der er relateret til brugeren:

find / -bruger brugernavn

Deaktiver derefter kontoen eller indstil en udløbsdato som beskrevet ovenfor. Glem ikke at sikkerhedskopiere de filer, der ejes af brugeren. Du kan enten vælge at tildele filer til en ny ejer eller fjerne dem fra systemet.

Til sidst skal du slette brugerkontoen ved hjælp af kommandoen userdel.

userdel -f brugernavn

5. Begræns fjernadgang til en specifik brugergruppe

Hvis du hoster en webserver på din Linux-maskine, skal du muligvis kun tillade specifikke brugere at fjerne SSH i systemet. OpenSSL giver dig mulighed for at begrænse brugere ved at krydstjekke, om de tilhører en bestemt gruppe.

Til det skal du oprette en brugergruppe ved navn ssh_gp, tilføj de brugere, du vil give fjernadgang til gruppen, og angiv brugergruppeoplysningerne som følger:

sudo groupadd ssh_gp
sudo gpasswd -et brugernavn ssh_gp
gruppers brugernavn

Åbn nu OpenSSL-hovedkonfigurationsfilen for at inkludere den tilladte brugergruppe ssh_gp.

sudo vim /etc/ssh/sshd_config
Tillad grupper ssh_gp

Husk at fjerne kommentarer til linjen for at sikre en vellykket gruppeinkludering. Når du er færdig, skal du gemme og afslutte filen og genstarte tjenesten:

sudo systemctl genstart sshd

Vedligeholdelse af brugerkontosikkerhed på Linux

I dag hoster de fleste organisationer kritiske infrastrukturer som webservere, firewalls og databaser Linux, og kompromittering af enhver intern komponent udgør en betydelig trussel mod helheden infrastruktur.

I betragtning af vigtigheden af ​​opsætningen er administration og sikring af brugerkonti en grundlæggende udfordring, som Linux-administratorer står over for. Denne artikel har angivet nogle sikkerhedsforanstaltninger, som en kontoadministrator skal tage for at beskytte systemet mod potentielle trusler på grund af ubeskyttede brugerkonti.

Den komplette guide til brugerstyring i Linux

Administration af brugere er en afgørende opgave, som enhver Linux-systemadministrator bør være dygtig til. Her er den ultimative brugerstyringsvejledning til Linux.

Læs Næste

DelTweetE-mail
Relaterede emner
  • Linux
  • Sikkerhed
  • Brugerkontokontrol
  • Sikkerhed
  • Sikkerhedstips
Om forfatteren
Rumaisa Niazi (8 artikler udgivet)

Rumaisa er freelanceskribent på MUO. Hun har båret mange hatte, fra en matematiker til en informationssikkerhedsentusiast, og arbejder nu som SOC-analytiker. Hendes interesser inkluderer at læse og skrive om nye teknologier, Linux-distributioner og alt omkring informationssikkerhed.

Mere fra Rumaisa Niazi

Abonner på vores nyhedsbrev

Tilmeld dig vores nyhedsbrev for tekniske tips, anmeldelser, gratis e-bøger og eksklusive tilbud!

Klik her for at abonnere