Startpagina > Pakket- en systeembeheer > setgid

setgid: SGID-bit begrijpen en instellen

setgid is een speciale permissiebit die wordt toegepast op bestanden of mappen. Wanneer ingesteld op een map, erven alle bestanden en submappen die in die map worden aangemaakt, het groepseigendom van de bovenliggende map. Wanneer ingesteld op een uitvoerbaar bestand, wordt het proces uitgevoerd met de groep-ID van de bestandseigenaar wanneer dat bestand wordt uitgevoerd. Dit is handig voor het vereenvoudigen van het groepspermissiebeheer in gedeelde omgevingen of om ervoor te zorgen dat specifieke programma's worden uitgevoerd met specifieke groepspremissies.

Overzicht

Het setgid-bit is een type bestandssysteempermissie dat anders werkt voor bestanden en mappen. Wanneer toegepast op een map, erven alle nieuwe bestanden en submappen die in die map worden aangemaakt, automatisch het groepseigendom van de bovenliggende map. Wanneer toegepast op een uitvoerbaar bestand, wordt het proces uitgevoerd met de groep-ID van de bestandseigenaar wanneer dat bestand wordt uitgevoerd.

Belangrijkste kenmerken

  • Map: Bestanden en submappen die in de map worden aangemaakt, erven het groepseigendom van de bovenliggende map.
  • Uitvoerbaar bestand: Het proces wordt uitgevoerd met de groep-ID van de bestandseigenaar wanneer het bestand wordt uitgevoerd.
  • Wordt ingesteld en verwijderd met het commando `chmod`.

Gebruiksvoorbeelden

Het setgid-bit wordt ingesteld met het commando `chmod`. U kunt numerieke modus (2xxx) of symbolische modus (g+s) gebruiken.

Setgid instellen op een map (symbolische modus)

sudo chmod g+s /shared_data

Stel het setgid-bit in op de map `/shared_data`, zodat alle bestanden en submappen die in deze map worden aangemaakt, het groepseigendom van `/shared_data` erven.

Setgid instellen op een map (numerieke modus)

sudo chmod 2770 /shared_data

Voeg het setgid-bit (2) toe aan de bestaande permissies (rwxrwx---) om het in te stellen op 2770.

Setgid instellen op een uitvoerbaar bestand

sudo chmod g+s /usr/local/bin/my_tool

Zorg ervoor dat een specifiek uitvoerbaar bestand altijd wordt uitgevoerd met specifieke groepspremissies. (Bijv. `my_tool` wordt uitgevoerd met `tool_group` permissies)

Setgid-bit verwijderen

sudo chmod g-s /path/to/item

Verwijder het setgid-bit van een bestand of map.

Setgid-instelling controleren

ls -l /path/to/item

Gebruik het commando `ls -l` om de permissies van een bestand of map te controleren. Als er een 's' staat op de positie van de groepspremissies, is setgid ingesteld.

Tips & Aandachtspunten

Het setgid-bit is een krachtige functie, dus wees voorzichtig bij gebruik.

Setgid-gebruik voor mappen

  • Zeer nuttig voor gedeelde werkmappen waar meerdere gebruikers bestanden moeten aanmaken met dezelfde groep.
  • Kan permissieproblemen verminderen door de groepseigendom van nieuw aangemaakte bestanden consistent te houden.

Aandachtspunten voor setgid op uitvoerbare bestanden

  • Het instellen van setgid op uitvoerbare bestanden kan leiden tot beveiligingskwetsbaarheden en moet zorgvuldig worden gebruikt.
  • Alleen toepassen op vertrouwde en beveiliging-geverifieerde uitvoerbare bestanden.

Interactie met umask

Wanneer een bestand wordt aangemaakt in een map met het setgid-bit ingesteld, wordt ook rekening gehouden met de `umask`-instelling. `umask` beperkt de standaardpermissies van nieuw aangemaakte bestanden, dus het moet correct worden ingesteld samen met setgid.


Hétzelfde categoriecommando