Il comando gpasswd consente di amministrare gruppi su Linux. Le password di gruppo non vengono utilizzate molto in parte a causa del rischio per la sicurezza che rappresentano: più persone che condividono una password aumentano le possibilità di esposizione accidentale o dolosa. Ogni membro del gruppo può aggiungere o rimuovere membri, controllando l’accesso al gruppo, il che potrebbe facilmente sfuggire di mano.
Ci sono alcuni modi per superare questo problema. Puoi evitare di usare password di gruppo quando possibile e usare meccanismi alternativi come sudoer o liste di controllo degli accessi. Puoi anche limitare l’accesso alle password di gruppo usando il controllo dei privilegi in modo che solo i membri autorizzati possano fare qualsiasi operazione.
Sintassi di base e opzioni del comando gpasswd
La sintassi di base del comando gpasswd consente di accettare due argomenti: un argomento di opzione o flag e il nome del gruppo in cui si desidera eseguire l’operazione. Ecco come appare:
gpasswd [option] group Ecco le opzioni che puoi utilizzare con il comando:
- -a, –aggiungi utente : Per aggiungere un utente al gruppo denominato.
- -d, –elimina utente : Per rimuovere un utente dal gruppo specificato.
- -h, –help : visualizza le istruzioni per utilizzare il comando.
- -R, –restrict : Imposta la password del gruppo su “!” in modo che solo i membri del gruppo con una password possano utilizzare newgrp per unirsi al gruppo specificato.
- -r, –remove-password : Per rimuovere la password dal gruppo nominato. La password del gruppo diventa vuota.
- -A, –amministratori utente : Imposta l’elenco degli utenti amministrativi.
- -M, –membri utente : Imposta l’elenco dei membri del gruppo.
- -Q, –root CHROOT_DIR: applica le modifiche nella directory CHROOT_DIR e utilizza i file di configurazione dalla directory CHROOT_DIR.
Nelle prossime sezioni della guida vedremo come utilizzare queste opzioni.
Impostazione della password per un gruppo
L’uso più comune del comando gpasswd è impostare una password per gruppi specifici. Per prima cosa creerò un gruppo su cui possiamo testarlo. Sentiti libero di saltare questo passaggio se hai già un gruppo. Per creare un nuovo gruppo sul tuo sistema Linux, esegui:
sudo groupadd demogroup Puoi usare qualsiasi nome diverso da “demogroup”. Per confermare se la creazione del gruppo è riuscita, visualizza tutti i gruppi usando:
cat /etc/group Puoi vedere il nuovo gruppo nell’elenco. Ora creiamo una password per il gruppo. Per farlo, usa:
sudo gpasswd demogroup Ti verrà chiesto di inserire prima la tua password utente (dato che hai usato sudo). Poi ti verrà chiesto di inserire una nuova password per il gruppo. Dopo aver inserito la nuova password, devi reinserirla per confermarla.
Ora, se provo ad accedere a questo gruppo, il sistema chiederà una password. Questo perché non sono un membro del gruppo. Per accedere al gruppo, esegui:
newgrp demogroup
Rimozione della password dal gruppo
Se vuoi rimuovere una password da un gruppo, puoi farlo usando il flag -r. Rimuovi la password passando il nome del gruppo insieme al flag in questo modo:
sudo gpasswd -r demogroup Se provi ad accedere al gruppo ora come membro, potrai farlo senza inserire la password.
Aggiungere un utente a un gruppo
Il comando gpasswd consente di aggiungere nuovi membri ai gruppi. L’opzione -a è a questo scopo. La sintassi del comando è la seguente:
sudo gpasswd -a user group Quindi, dopo aver aggiunto l’opzione -a, devi passare il nome utente del membro e poi il gruppo a cui vuoi aggiungere l’utente. Ad esempio, voglio aggiungere un utente al nuovo gruppo che ho creato in precedenza. Ecco il comando per farlo:
sudo gpasswd -a zunaid demogroup Puoi confermare se il membro è stato aggiunto o meno. Per farlo, usa il comando seguente:
getent group demogroup Come puoi vedere, mi sono aggiunto con successo al gruppo usando gpasswd. Per aggiungere più utenti, dovrai impartire comandi separati per ognuno, come questo:
sudo gpasswd -a user1 group sudo gpasswd -a user2 group
Rimozione di un utente da un gruppo
Se vuoi eliminare un utente da un gruppo specifico, hai l’opzione -d per questo. Proprio come il comando per l’aggiunta, fornisci semplicemente il nome utente e poi il nome del gruppo al comando, in questo modo:
sudo gpasswd -d user group Quindi se voglio rimuovermi da “demogroup”, questo è il comando che devo eseguire:
sudo gpasswd -d zunaid demogroup Di nuovo, puoi confermare se l’utente è stato rimosso correttamente elencando i membri del gruppo con questo comando:
getent group demogroup Potrebbe essere necessario riavviare il dispositivo o effettuare nuovamente l’accesso alla sessione affinché le modifiche abbiano effetto. Per rimuovere più utenti da un gruppo, utilizzare la stessa tecnica di comando ripetuto utilizzata per l’aggiunta.
sudo gpasswd -d user1 group sudo gpasswd -d user2 group
Impostazione dell’elenco dei membri del gruppo
Il comando gpasswd consente di sostituire i membri correnti del gruppo con i membri che si desidera aggiungere. In altre parole, è possibile svuotare il gruppo e quindi aggiungere tutti i nuovi membri che si desidera con un singolo comando. Il flag -M serve a questo scopo. Quindi, ad esempio, attualmente ci sono user1 e user2 in un gruppo. Si desidera rimuoverli e aggiungere user3 e user4. Per fare ciò, eseguire:
sudo gpasswd -M user2,user3 demogroup Ora se controlli la lista dei membri del gruppo, dovresti vedere che i membri precedenti non ci sono. Invece, troverai i nuovi membri.
getent group demogroup Puoi concedere a qualcuno i privilegi amministrativi di un gruppo usando il flag -A. Devi semplicemente passare il nome del membro e il gruppo di cui vuoi renderlo amministratore. Guarda il comando qui sotto:
sudo gpasswd -A zunaid demogroup Ciò conferisce all’utente “zunaid” privilegi amministrativi nel gruppo denominato “demogroup”.
Questo non fornisce alcun output al terminale. Tuttavia, puoi vedere l’elenco degli amministratori del gruppo per confermare se l’operazione è riuscita. Fallo con questo comando:
sudo cat /etc/gshadow
gpasswd semplifica la gestione dei gruppi
Ora hai imparato come usare il comando gpasswd per controllare l’accesso di gruppo su Linux. Ho trattato alcune delle sue operazioni più utili. Se vuoi saperne di più sul comando, dai un’occhiata al suo pagina di manuale o esegui il gpasswd -h comando sul tuo terminale.