Hoe de UID en GID van een gebruiker in Linux te controleren: De complete gids

Bij het beheren van gebruikers en groepen op een Linux-systeem zijn Gebruikers-ID (UID) en Groep-ID (GID) fundamentele en kritieke concepten. Deze ID’s worden gebruikt om gebruikers en groepen op het systeem uniek te identificeren. Ze hebben direct invloed op het beheer van gebruikersrechten en de controle op toegang tot bestanden, daarom moeten systeembeheerders en ontwikkelaars deze ID’s efficiënt kunnen controleren en begrijpen. Dit artikel biedt een gedetailleerde uitleg over hoe deze ID’s eenvoudig te controleren met behulp van command-line tools en systeembestanden.

Inhoudsopgave

Wat zijn UID en GID

UID (Gebruikers-ID) en GID (Groep-ID) zijn numerieke ID’s die worden gebruikt om gebruikers en groepen in een Linux-systeem te onderscheiden. Het systeem gebruikt deze ID’s om het eigendom van bestanden en mappen te beheren en toegangsrechten te controleren.

  • UID (Gebruikers-ID): Een uniek nummer toegewezen aan elk gebruikersaccount. Deze ID bepaalt de operaties die een gebruiker kan uitvoeren op het systeem. Bijvoorbeeld, de UID van de root-gebruiker is meestal 0, die alle rechten op het systeem heeft.
  • GID (Groep-ID): Een uniek nummer toegewezen aan elke gebruikersgroep. Een groep op het systeem verwijst naar een verzameling gebruikers die specifieke rechten delen. Een gebruiker kan tot meerdere groepen behoren, en erft de rechten van die groepen.

In Linux worden UIDs en GIDs automatisch toegewezen op het moment van gebruikerscreatie, maar systeembeheerders kunnen deze waarden naar behoefte wijzigen. In het bestandssysteem worden bestanden en mappen beheerd op basis van de UID en GID van de eigenaar, en toegangsrechten worden op deze basis ingesteld.

Hoe UID en GID vanaf de Command Line te controleren

In een Linux-systeem kunt u eenvoudig de UID en GID van een gebruiker controleren met command-line tools. De meest gebruikelijke en directe methode is het gebruik van het id commando. Dit commando toont de UID, GID, en de ID’s van groepen waartoe de huidige of gespecificeerde gebruiker behoort.

Basisgebruik van het `id` Commando

Het uitvoeren van het id commando zonder argumenten toont de UID en GID van de gebruiker die de huidige shell-sessie bedient, evenals de ID’s van de groepen waartoe zij behoren.

id

Dit commando produceert een uitvoer zoals deze:

uid=1000(gebruikersnaam) gid=1000(groepsnaam) groups=1000(groepsnaam),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lxd),998(docker)

Hier vertegenwoordigt uid de gebruikers-ID, gid vertegenwoordigt de ID van de hoofdgroep van de gebruiker, en groups vermeldt de ID’s van aanvullende groepen waartoe de gebruiker behoort.

De UID en GID voor een Specifieke Gebruiker Controleren

Om de UID en GID voor een specifieke gebruiker te controleren, geeft u de gebruikersnaam als argument mee aan het id commando.

id gebruikersnaam

Bijvoorbeeld, om de informatie voor een gebruiker genaamd alice te controleren, zou u uitvoeren:

id alice

Deze methode is handig voor het snel verifiëren van de identificatie-informatie van elke gebruiker op het systeem. Het id commando is een van de tools die vaak gebruikt worden door systeembeheerders, en bewijst zeer handig te zijn voor het instellen van gebruikersrechten en probleemoplossing.

UID en GID vinden in het /etc/passwd Bestand

In Linux-systemen bevat het /etc/passwd bestand informatie over alle gebruikersaccounts op het systeem. U kunt ook de UID en GID van een gebruiker uit dit bestand controleren. Het /etc/passwd bestand is tekstgebaseerd en geschreven in een formaat dat leesbaar is voor mensen, met elke regel die informatie over één gebruiker bevat.

Structuur van het `/etc/passwd` Bestand

Elke vermelding in het /etc/passwd bestand wordt genoteerd in het volgende formaat:

gebruikersnaam:x:UID:GID:GECOS:thuismap:shell

Hier,

  • gebruikersnaam duidt de gebruikersnaam aan.
  • x is het wachtwoordveld, dat nu beheerd wordt door het shadow wachtwoordsysteem in het /etc/shadow bestand.
  • UID is de Gebruikers-ID van de gebruiker.
  • GID is de hoofd Groep-ID van de gebruiker.
  • GECOS is een veld dat de volledige naam van de gebruiker of andere informatie bevat.
  • thuismap is het pad naar de thuismap van de gebruiker.
  • shell geeft de shell aan die start bij het inloggen van de gebruiker.

Zoeken naar UID en GID met de Command Line

Om de UID en GID van een specifieke gebruiker uit het /etc/passwd bestand te vinden, kan het grep commando handig zijn. Bijvoorbeeld, om de UID en GID voor de gebruiker genaamd alice te controleren, voer uit:

grep 'alice' /etc/passwd

Voorbeelduitvoer:

alice:x:1001:1001:Alice Voorbeeld:/home/alice:/bin/bash

In dit voorbeeld zijn zowel de UID als GID voor de gebruiker alice 1001. Ook is alice’s thuismap /home/alice, en de standaard shell is /bin/bash.

Direct verwijzen naar het /etc/passwd bestand is vooral nuttig voor het controleren van de informatie van alle gebruikers geregistreerd op het systeem of in situaties waar een grafische interface niet beschikbaar is. Echter, omdat wachtwoordinformatie wordt opgeslagen in het /etc/shadow bestand om veiligheidsredenen, zijn administratieve privileges vereist voor directe toegang.

Praktische Voorbeelden: Hoe de UID en GID van een Specifieke Gebruiker te Controleren

Er zijn verschillende manieren om de UID (Gebruikers-ID) en GID (Groep-ID) van een specifieke gebruiker op een Linux-systeem te controleren, maar hier zullen we praktisch de twee meest voorkomende methoden uitleggen.

Methode 1: Gebruikmakend van het `id` Commando

De eenvoudigste en meest directe methode is het gebruik van het id commando. Dit commando toont de specifieke UID, GID, en de ID’s van de groepen waartoe de gebruiker behoort.

Om de informatie voor een specifieke gebruiker te verkrijgen, voer het volgende in op de command line:

id gebruikersnaam

Bijvoorbeeld, als de gebruikersnaam alice is, zou het er zo uitzien:

id alice

Dit commando geeft alice’s UID, GID, en groepsaffiliatie-informatie.

Methode 2: Het `/etc/passwd` Bestand Onderzoeken

Alle informatie over gebruikersaccounts op het systeem wordt opgeslagen in het /etc/passwd bestand. U kunt dit bestand ook direct onderzoeken voor UID en GID.

Om te zoeken naar de informatie van een specifieke gebruiker, gebruik het grep commando:

grep 'gebruikersnaam' /etc/passwd

Bijvoorbeeld, als de gebruikersnaam alice is, zou u invoeren:

grep 'alice' /etc/passwd

Dit toont de alice vermelding uit het /etc/passwd bestand, dat alice’s UID en GID op die regel bevat.

Deze methoden maken het eenvoudig om de specifieke UID en GID van een gebruiker op een Linux-systeem te verifiëren. Voor systeembeheerders en beveiligingsprofessionals speelt deze informatie een cruciale rol bij het beheren van rechten en het auditen van het systeem.

Scripts Gebruiken om Meerdere Gebruikers’ UID en GID in Bulk te Controleren

Als u de UID en GID voor meerdere gebruikers efficiënt moet controleren, kan het schrijven van een klein shellscript dit proces automatiseren. Hier presenteren we een eenvoudig scriptvoorbeeld om in bulk meerdere gebruikers’ UID en GID op een Linux-systeem te verkrijgen.

Scriptvoorbeeld

Hieronder staat een shellscript dat de UID en GID voor een gespecificeerde lijst van gebruikers weergeeft. Dit script opsomt de gebruikersnamen gescheiden door spaties en voert het id commando uit voor elke gebruiker.

#!/bin/bash

# Lijst van gebruikersnamen
gebruikersnamen="alice bob charlie"

# Toon UID en GID voor elke gebruiker
for gebruikersnaam in $gebruikersnamen; do
  echo "Gebruiker: $gebruikersnaam";
  id $gebruikersnaam
  echo ""; # Print een lege regel
done

Om dit script te gebruiken, open eerst een teksteditor en plak de bovenstaande code, sla het bestand vervolgens op (bijv., toon_uid_gid.sh). Ga vervolgens naar de directory waar het scriptbestand is opgeslagen in de terminal en geef het script uitvoeringsrechten.

chmod +x toon_uid_gid.sh

Voer daarna het script uit.

./toon_uid_gid.sh

Het uitvoeren van het script toont de UID en GID voor elke gespecificeerde gebruiker. Deze methode is vooral nuttig bij het uitvoeren van onderzoeken of audits op specifieke gebruikersgroepen binnen het systeem. Bovendien kunt u door het bewerken van de lijst van gebruikers in het script, deze operatie uitvoeren voor elke gewenste set gebruikers.

Samenvatting

Er zijn verschillende efficiënte manieren om de UID (Gebruikers-ID) en GID (Groep-ID) van een gebruiker in Linux te controleren, inclusief het direct verkrijgen van deze informatie vanaf de command line met het id commando, het onderzoeken van het /etc/passwd bestand, en het gebruik van scripts om informatie in bulk te verzamelen voor meerdere gebruikers. Elke methode is effectief afhankelijk van uw behoeften en situatie.

Door deze methoden te begrijpen en correct te gebruiken, kunt u de efficiëntie van gebruikersbeheer in Linux-systeembeheer en beveiligingsaudits aanzienlijk verbeteren. Vooral voor systeembeheerders en beveiligingsprofessionals is het beheersen van deze basisbewerkingen belangrijk omdat ze deel uitmaken van dagelijkse taken.

Uiteindelijk zijn het accuraat begrijpen van de concepten van gebruikers en groepen, en het correct beheren van basiselementen zoals UID en GID, essentieel voor veilig en efficiënt werken op Linux-systemen. Dit artikel hoopt te dienen als een waardevolle gids voor Linux-gebruikers en -beheerders.

Inhoudsopgave