De eerste en meest cruciale stap naar het beveiligen van Linux-servers en -systemen is het voorkomen dat kwaadwillenden onnodige toegang krijgen. Goed gebruikersaccountbeheer is een van de vele manieren om de beveiliging van uw systeem te verbeteren.

Een gehard gebruikersaccount voorkomt dat het systeem de meest voorkomende aanvalsmethoden van horizontale of verticale escalatie van bevoegdheden kan gebruiken. Daarom bent u als Linux-systeembeheerder ook verantwoordelijk voor het beschermen van uw server via effectieve beveiligingstechnieken.

Dit artikel behandelt enkele elementaire beveiligingsmaatregelen voor gebruikersaccounts om onnodige toegang te voorkomen en mogelijke mazen in het systeem op te lossen.

1. Toegang tot root-account beperken

Standaard stelt elke Linux-systeeminstallatie een root-account in dat voor iedereen van buitenaf toegankelijk is via SSH. Toegang tot het root-account via SSH of toegang door meerdere gebruikers binnen het systeem kan echter problemen met de afwijzing veroorzaken.

Een aanvaller kan bijvoorbeeld met brute kracht inloggen als rootgebruiker en toegang krijgen tot het systeem.

Om onnodige root-toegang van binnen/buiten het Linux-systeem te beperken, kunt u:

  • Nog een gebruiker toevoegen en verleen er rootrechten aan
  • SSH root-aanmelding uitschakelen

Een nieuwe supergebruiker maken

Naar sudo- of root-machtigingen verlenen aan een regulier Linux-gebruikersaccount, voeg de gebruiker toe aan de sudo groep als volgt:

usermod -aG sudo gebruikersnaam

Schakel nu over naar het gebruikersaccount met behulp van de opdracht su en verifieer de root-rechten door een opdracht uit te geven die alleen toegankelijk is voor de root-gebruiker:

su - gebruikersnaam
sudo systemctl herstart sshd

Het inschakelen van sudo-machtigingen biedt een aantal goede beveiligingsvoordelen, zoals:

  • U hoeft rootwachtwoorden niet te delen met gewone gebruikers.
  • Het helpt u bij het controleren van alle opdrachten die door gewone gebruikers worden uitgevoerd, wat betekent dat het de details van wie, wanneer en waar van de opdrachtuitvoering opslaat in de /var/log/secure het dossier.
  • Bovendien kunt u de /etc/sudoers bestand om de superuser-machtigingen van de gewone gebruikers te beperken. U kunt de opdracht gebruiken: su -l om de huidige rootrechten van een gebruiker te controleren.

Root SSH-aanmelding uitschakelen

Om root-SSH-toegang op uw systeem uit te schakelen, opent u eerst het hoofdconfiguratiebestand.

sudo vim /etc/ssh/sshd_config

Uncommenteer nu de volgende regel om root-aanmeldingsrechten in te stellen op: Nee:

PermitRootLogin nr

Sla het bestand op en start de. opnieuw sshd service door te typen:

sudo systemctl herstart sshd

Wanneer u nu als rootgebruiker probeert SSH naar het systeem te sturen, ontvangt u het volgende foutbericht:

Toestemming geweigerd, probeer het opnieuw.

2. Vervaldatums instellen voor accounts

Een andere effectieve manier om onnodige toegang te beheersen, is door vervaldatums in te stellen voor accounts die voor tijdelijk gebruik zijn gemaakt.

Als een stagiair of een medewerker bijvoorbeeld toegang tot het systeem nodig heeft, kunt u tijdens het aanmaken van een account een vervaldatum instellen. Het is een voorzorgsmaatregel voor het geval u vergeet het account handmatig te verwijderen of te verwijderen nadat ze de organisatie hebben verlaten.

Gebruik de verandering commando met het grep-hulpprogramma om accountverloopgegevens voor de gebruiker op te halen:

chage -l gebruikersnaam| grep-account

Uitgang:

Account verloopt: nooit

Zoals hierboven weergegeven, geeft het geen vervaldatum weer. Gebruik nu de gebruikersmod commando met de -e vlag om de vervaldatum in te stellen in de JJJJ-MM-DD formatteren en de wijziging verifiëren met behulp van de bovenstaande opdracht change.

usermod -e 2021-01-25 gebruikersnaam
chage -l gebruikersnaam| grep-account

3. Verbeter de wachtwoordbeveiliging van uw account

Het afdwingen van een sterk wachtwoordbeleid is een belangrijk aspect van het beveiligen van gebruikersaccounts, aangezien zwakke wachtwoorden aanvallers in staat stellen om gemakkelijk in uw systemen in te breken via brute kracht, woordenboek- of regenboogtafelaanvallen.

Het kiezen van een gemakkelijk te onthouden wachtwoord kan wat gemak bieden, maar het opent ook mogelijkheden voor aanvallers om wachtwoorden te raden met behulp van online beschikbare tools en woordenlijsten.

Vervaldatum wachtwoord instellen

Bovendien biedt Linux enkele standaardopties binnenin /etc/logins.defs bestand waarmee u accountwachtwoordveroudering kunt instellen. Gebruik de verandering command en grep de details van de vervaldatum van het wachtwoord als volgt:

chage -l gebruikersnaam | grep dagen
Variabelen Standaardwaarde Gebruik Ideale waarde
PASS_MAX_DAYS 9999 Het standaard aantal dagen om een ​​wachtwoord te gebruiken, hangt af van het type accountconfiguratie 40
PASS_MIN_DAYS 0 Voorkomt dat gebruikers hun wachtwoord onmiddellijk wijzigen 5
PASS_MIN_LEN 5 Dwingt de gebruiker om wachtwoorden van een bepaalde lengte in te stellen 15
PASS_WARN_AGE 0 Waarschuwt de gebruiker om het wachtwoord te wijzigen voordat hij daartoe wordt gedwongen 7

Voor de accounts die in gebruik zijn, kunt u de wachtwoordveroudering regelen met behulp van de verandering commando om PASS_MAX_DAYS, PASS_MIN_DAYS en PASS_WARN_AGE in te stellen op 40, 5 en 7.

chage -M 40 -m 5 -W 7 gebruikersnaam

Wachtwoord hashes

Een andere manier om de wachtwoordbeveiliging van een account te versterken, is door wachtwoordhashes erin op te slaan het /etc/shadow-bestand. Hashes zijn wiskundige eenrichtingsfuncties die het wachtwoord als invoer nemen en een niet-omkeerbare reeks uitvoeren.

Vroeger, op Linux-systemen, wanneer een gebruiker zijn wachtwoord invoerde om in te loggen, genereerde het systeem zijn hash en vergeleek het deze met die opgeslagen in /etc/passwd het dossier.

Er is echter een probleem met de toegang tot de passwd-bestandsrechten, dat wil zeggen dat iedereen met systeemtoegang het bestand kan lezen en de hash kan kraken met regenboogtabellen.

Daarom slaat Linux nu de hashes op in de /etc/shadow bestand met de volgende set toegangsrechten:

ls -l /etc/schaduw
1 wortel wortel 1626 7 januari 13:56 /etc/shadow

Het is nog steeds mogelijk om Linux te installeren met de oude manieren om hashes op te slaan. U kunt dat wijzigen door de pwconv commando, zodat het de wachtwoord-hashes automatisch opslaat in de /etc/shadow het dossier. Op dezelfde manier kunt u de andere methode inschakelen (/etc/passwd bestand) met behulp van de pwunconv opdracht.

4. Verwijder ongebruikte gebruikersaccounts

Een kwaadwillende kan ongebruikte en verlopen accounts in het systeem misbruiken door dat account te vernieuwen en het als een legitieme gebruiker te laten lijken. Als u een inactief account en bijbehorende gegevens wilt verwijderen wanneer een gebruiker de organisatie verlaat, zoekt u eerst alle bestanden met betrekking tot de gebruiker:

zoek / -gebruikersnaam

Schakel vervolgens het account uit of stel een vervaldatum in zoals hierboven besproken. Vergeet niet een back-up te maken van de bestanden die eigendom zijn van de gebruiker. U kunt ervoor kiezen om bestanden toe te wijzen aan een nieuwe eigenaar of ze van het systeem te verwijderen.

Verwijder ten slotte het gebruikersaccount met de opdracht userdel.

userdel -f gebruikersnaam

5. Externe toegang beperken tot een specifieke gebruikersgroep

Als u een webserver host op uw Linux-machine, moet u mogelijk alleen specifieke gebruikers toestaan ​​om SSH op afstand in het systeem te gebruiken. Met OpenSSL kunt u gebruikers beperken door te controleren of ze tot een specifieke groep behoren.

Maak daarvoor een gebruikersgroep aan met de naam ssh_gp, voeg de gebruikers toe aan wie u externe toegang tot de groep wilt verlenen en vermeld de informatie over de gebruikersgroep als volgt:

sudo groupadd ssh_gp
sudo gpasswd -a gebruikersnaam ssh_gp
groeps gebruikersnaam

Open nu het OpenSSL-hoofdconfiguratiebestand om de toegestane gebruikersgroep op te nemen ssh_gp.

sudo vim /etc/ssh/sshd_config
AllowGroups ssh_gp

Vergeet niet om de regel te verwijderen om een ​​succesvolle groepsopname te garanderen. Als u klaar bent, slaat u het bestand op en sluit u het af en start u de service opnieuw:

sudo systemctl herstart sshd

Beveiliging van gebruikersaccount behouden op Linux

Tegenwoordig hosten de meeste organisaties kritieke infrastructuren zoals webservers, firewalls en databases op Linux, en het compromitteren van een interne component vormt een aanzienlijke bedreiging voor het geheel infrastructuur.

Gezien het belang van de installatie, is het beheren en beveiligen van gebruikersaccounts een fundamentele uitdaging voor Linux-beheerders. Dit artikel bevat een aantal beveiligingsmaatregelen die een accountbeheerder moet nemen om het systeem te beschermen tegen mogelijke bedreigingen als gevolg van onbeschermde gebruikersaccounts.

De complete gids voor gebruikersbeheer in Linux

Het beheren van gebruikers is een cruciale taak waar elke Linux-systeembeheerder bekwaam in zou moeten zijn. Hier is de ultieme handleiding voor gebruikersbeheer voor Linux.

Lees volgende

DeelTweetenE-mail
Gerelateerde onderwerpen
  • Linux
  • Veiligheid
  • Gebruikersaccount controle
  • Veiligheid
  • Beveiligingstips
Over de auteur
Rumaisa Niazi (8 artikelen gepubliceerd)

Rumaisa is freelance schrijver bij MUO. Ze heeft veel hoeden gedragen, van wiskundige tot liefhebber van informatiebeveiliging, en werkt nu als SOC-analist. Haar interesses omvatten lezen en schrijven over nieuwe technologieën, Linux-distributies en alles wat met informatiebeveiliging te maken heeft.

Meer van Rumaisa Niazi

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren