In deze handleiding wordt uitgelegd hoe u groepen beheert met de opdracht gpasswd. Elk bestand en elke map binnen Linux hebben gebruikers-, groeps- en eigenaarspermissies. Door te bepalen wie toegang heeft tot een groep, kunt u bepalen wat er gebeurt met bestanden en mappen op uw systeem zonder dat u rechten voor elke gebruiker hoeft in te stellen.
Een beetje over machtigingen
Open een terminal en maak in uw thuismap als volgt een map met de naam mkdir:
mkdir accounts
Voer nu de volgende ls-opdracht uit, die u de rechten toont voor de map die u zojuist hebt aangemaakt.
ls -lt
Je ziet zoiets als dit:
drwxr-xr-x 2 yourname yourname 4096 datumaccounts
De bits waarin we geïnteresseerd zijn, zijn de toestemmingen die in het bovenstaande voorbeeld "drwxr-xr-x" zijn. We zijn ook geïnteresseerd in de 2 "uwnaam" -waarden.
Laten we eerst de rechten bespreken. De "d" staat voor directory en laat ons weten dat accounts een directory is.
De rest van de permissies is verdeeld in 3 secties: "rwx", "r-x", "r-x". Het eerste gedeelte van 3 tekens zijn de machtigingen die de eigenaar van een object heeft. Het tweede deel van 3 tekens bevat de rechten die iedereen die tot de groep behoort heeft en ten slotte is de laatste sectie de machtigingen die iedereen heeft.
De "r" staat voor "lezen", de "w" staat voor "schrijven" en de "x" staat voor "uitvoeren".
Daarom heeft de eigenaar in het bovenstaande voorbeeld machtigingen voor de accountmap gelezen, geschreven en uitgevoerd, terwijl de groep en alle anderen alleen de machtigingen hebben gelezen en uitgevoerd.
In het voorbeeld is de eerste "uwnaam" de eigenaar van het item en de tweede "uwnaam" is de primaire groep voor de accountmap.
Als u deze handleiding nuttiger wilt maken, voegt u een paar extra accounts aan uw systeem toe met behulp van de volgende adduser-opdrachten:
sudo adduser tim
sudo adduser tom
U wordt gevraagd om een wachtwoord voor elk van hen in te stellen en andere informatie in te voeren. U kunt wegkomen met alleen het wachtwoord en terugkeren door de rest van de velden.
Nu u 3 accounts hebt, voert u de volgende opdracht uit om de eigenaar van de map van uw account te wijzigen.
sudo chown tom-accounts
Voer nu het ls-commando nogmaals uit.
ls -lt
De rechten zijn nu als volgt:
drwxr-xr-x tom yourname
U kunt als volgt met de opdracht cd naar de map accounts navigeren:
cd-accounts
Probeer nu een bestand te maken met de volgende opdracht:
aanraaktest
U ontvangt de volgende foutmelding:
aanraken: kan 'testen' niet aanraken: toestemming geweigerd
De reden hiervoor is dat Tom de eigenaar is en rechten heeft gelezen, geschreven en uitgevoerd, maar dat je slechts een deel van de groep bent en alleen groepsrechten hebt.
Navigeer terug naar de basismap en wijzig de machtigingen voor accounts door de volgende opdrachten te typen:
cd ..
sudo chmod 750 accounts
Voer nu het ls-commando opnieuw uit:
ls -lt
De machtigingen voor de map accounts zijn nu als volgt:
drwxr-x ---
Dit betekent dat de eigenaar volledige machtigingen heeft, gebruikers met de groep "uwnaam" hebben machtigingen gelezen en uitgevoerd en alle anderen hebben geen machtigingen.
Probeer het. Navigeer naar de map Accounts en voer de aanraakopdracht opnieuw uit:
cd-accounts
aanraaktest
U hebt nog steeds de machtigingen om naar de map te navigeren, maar hebt niet de rechten om bestanden te maken. Als u slechts een normale gebruiker was, kunt u niet eens in de map met accounts komen.
Om dit uit te proberen, gaat u als volgt naar de gebruiker Tim en navigeert u naar de map Accounts:
altijd
cd / home / uwnaam / accounts
U krijgt een ongeautoriseerde foutmelding.
Dus waarom zou je groepsrechten gebruiken en geen individuele permissies instellen voor alle gebruikers? Als u een accountafdeling heeft die allemaal toegang zou moeten hebben tot bepaalde spreadsheets en documenten, maar niemand anders in het bedrijf zou dan in plaats van de rechten voor alle personen in accounts moeten instellen, kunt u de rechten voor de map instellen op een groep met de naam accounts en vervolgens voeg de gebruikers toe aan de groep.
Waarom is dit beter dan individuele gebruikersrechten instellen? Als een gebruiker de afdeling verlaat, kunt u deze gewoon uit de groep verwijderen in plaats van dat u de machtigingen voor een reeks mappen uitwerkt.
Hoe een groep te creëren
U kunt de volgende opdracht gebruiken om een groep te maken:
Hoe een gebruiker aan een groep toe te voegen
sudo gpasswd -a gebruikersnaam accounts
De bovenstaande opdracht kan worden gebruikt om één gebruiker toe te voegen aan de accountgroep.
Om een lijst met gebruikers toe te voegen als leden van de groep voert u de volgende opdracht uit:
sudo gpassword -M yourname, tom, tim accounts
Wanneer een gebruiker aan een account is toegevoegd, kan de gebruiker de groep aan zijn lijst met secundaire groepen toevoegen door de volgende opdracht uit te voeren:
nieuwe GRP-accounts
Elke gebruiker die niet tot de groep behoort, wordt gevraagd om het groepswachtwoord in te voeren.
Hoe de primaire groep voor een map te wijzigen
Nu we een groep met een gebruiker hebben, kunt u die groep aan de accountmap toewijzen met de volgende opdracht chgrp:
sudo chgrp accounts accounts
De eerste accounts is de naam van de groep en de tweede accounts is de naam van de map.
Hoe te controleren of een gebruiker bij een groep hoort
U kunt controleren of een gebruiker tot een groep behoort door de volgende opdracht uit te voeren:
groepen
Hiermee wordt de lijst met groepen geretourneerd waartoe een gebruiker behoort.
Hoe het groepswachtwoord te wijzigen
Om het groepswachtwoord te wijzigen, kunt u de volgende opdracht uitvoeren:
sudo gpasswd
U wordt gevraagd om een wachtwoord voor de groep in te voeren en dit te herhalen.
U kunt nu gebruikers toevoegen aan een groep op de hierboven aangegeven manier of een nieuwe gebruiker kan lid worden van de groep door simpelweg de volgende opdracht uit te voeren en het juiste wachtwoord in te voeren:
newgrp
Het is duidelijk dat je het groepswachtwoord niet aan iemand wilt geven, dus het is beter om de gebruiker zelf aan de groep toe te voegen.
Hoe groepen beperken tot alleen de opgegeven leden
Als u niet wilt dat iemand die het wachtwoord kent om lid te worden van een groep, kunt u de volgende opdracht uitvoeren:
Stel een gebruiker in als beheerder
U kunt gebruikers instellen als beheerders van een groep. Hiermee kan de gebruiker gebruikers toevoegen aan en verwijderen uit een bepaalde groep en het wachtwoord wijzigen
Hiertoe voert u de volgende opdracht uit:
Hoe een groepswachtwoord te verwijderen
U kunt het wachtwoord van een groep verwijderen met behulp van de volgende opdracht:
Hoe een gebruiker uit de groep verwijderen
Om een gebruiker uit de groep te verwijderen, voert u de volgende opdracht uit:
sudo gpassword -d tom accounts
Hoe geef ik een groep de rechten voor lezen, schrijven en uitvoeren op een bestand of map
Tot nu toe hebben gebruikers binnen de accountgroep toegang tot de accountmap, maar ze kunnen echt alles doen omdat ze alleen machtigingen voor lezen en uitvoeren hebben.
Om schrijfrechten aan de groep te geven, kunt u de volgende opdracht uitvoeren:
Samenvatting
Deze handleiding heeft enkele commando's geïntroduceerd om je te helpen bij het instellen van rechten op je Linux-systeem. U kunt ook de opdracht useradd gebruiken om gebruikers en groepsgebruikers in te stellen.




