Raggruppa all'interno delle autorizzazioni dei file di gruppo


13

Ho provato a trovarlo qui, ma non potrei essere così dispiaciuto se è un duplicato.

Supponiamo di avere 2 gruppi e un utente: group1, group2, user1 con la seguente struttura: group1 è un membro del gruppo 2, user1 è un membro del gruppo1

Ora dì che ho i seguenti file con le relative autorizzazioni

file1 root:group1 660
file2 root:group2 660

Ora quando accedo a user1, sono in grado di modificare file1, ma non di modificare file2. A parte l'aggiunta di user1 a group2, c'è un modo per farlo? o non c'è modo?

Sto usando Ubuntu a proposito.


Se non sbaglio, le classiche autorizzazioni basate su gruppi in Linux non consentono di inserire un gruppo all'interno di un altro gruppo. Quindi hai installato qualcosa che abilita questa funzione?
Gunther Struyf,

Un utente può essere membro di diversi gruppi. Se aggiungi Utente1 a group2, è in grado di modificare File2. Il comando di tua scelta sarebbe useradd.
user1146332

@GuntherStruyf Non ho cambiato nulla ... Da quello che potrei dire, Ubuntu lo consente di default ...
Aram Papazian

@ user1146332 Il punto è non aggiungere user1 a group2. Se questo è l'unico modo allora posso farlo, ma teoricamente preferirei una struttura di nidificazione di gruppo ...
Aram Papazian

Risposte:


15

Non esiste un gruppo come membro di un gruppo. Un gruppo, per definizione, ha un set di membri utente. Non ho mai sentito parlare di una funzione che ti consentirebbe di specificare "sottogruppi" in cui ai membri dei sottogruppi viene automaticamente assegnata l'appartenenza al supergruppo al momento dell'accesso. Se /etc/groupelenca group1come membro di group2, designa l'utente chiamato group1(se esiste tale utente, il che è possibile: i nomi utente e i nomi dei gruppi vivono in spazi dei nomi diversi).

Se vuoi che l'utente1 abbia accesso a file2, hai diverse soluzioni:

  • Rendi file2accessibile al mondo (probabilmente non lo vuoi)
  • Rendi user1 il proprietario di file2: chown user1 file2
  • Aggiungi user1 a group2: adduser user1 group2
  • Aggiungi un ACL a file2quello che concede l'accesso a user1 o group`:

    setfacl -m user:user1:rw file2
    setfacl -m group:group1:rw file2
    

    Vedere Rendere tutti i nuovi file in una directory accessibili a un gruppo quando si abilitano gli ACL.


7
Sì, unix / linux non supporta i gruppi nidificati. Sarebbe utile se lo facesse, ma non lo fa. Windows lo fa e Active Directory lo fa. Lo fa anche LDAP, quindi dovrebbe essere possibile se i dati dell'account e del gruppo si trovano in LDAP anziché nei file / etc / passwd e / etc / group ... ma questo è eccessivo quando ci sono soluzioni semplici come ACL (o semplicemente aggiungere l'utente ad entrambi i gruppi)
cas
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.