Amministratore Linux - Gestione utenti

Quando parliamo di gestione degli utenti , dobbiamo comprendere tre termini importanti:

  • Users
  • Groups
  • Permissions

Abbiamo già discusso in modo approfondito le autorizzazioni applicate a file e cartelle. In questo capitolo, discuteremo di utenti e gruppi.

Utenti CentOS

In CentOS, ci sono due tipi di account:

  • System accounts - Usato per un demone o un altro software.

  • Interactive accounts - Solitamente assegnato a un utente per l'accesso alle risorse di sistema.

La principale differenza tra i due tipi di utente è:

  • System accountssono usati dai demoni per accedere a file e directory. Questi di solito non sono consentiti dal login interattivo tramite shell o login della console fisica.

  • Interactive accounts vengono utilizzati dagli utenti finali per accedere alle risorse di elaborazione da una shell o da una console fisica.

Con questa conoscenza di base degli utenti, creiamo ora un nuovo utente per Bob Jones nel reparto contabilità. Un nuovo utente viene aggiunto con l'estensioneadduser comando.

Di seguito sono riportati alcuni adduser interruttori comuni -

Interruttore Azione
-c Aggiunge un commento all'account utente
-m Crea la directory home dell'utente nella posizione predefinita, se inesistente
-g Gruppo predefinito da assegnare all'utente
-n Non crea un gruppo privato per l'utente, solitamente un gruppo con nome utente
-M Non crea una directory home
-S Shell predefinita diversa da / bin / bash
-u Specifica l'UID (altrimenti assegnato dal sistema)
-G Gruppi aggiuntivi a cui assegnare l'utente

Quando crei un nuovo utente, usa le opzioni -c, -m, -g, -n come segue:

[[email protected] Downloads]# useradd -c "Bob Jones  Accounting Dept Manager" 
-m -g accounting -n bjones

Ora vediamo se il nostro nuovo utente è stato creato -

[[email protected] Downloads]# id bjones 
(bjones) gid = 1001(accounting) groups = 1001(accounting)

[[email protected] Downloads]# grep bjones /etc/passwd 
bjones:x:1001:1001:Bob Jones  Accounting Dept Manager:/home/bjones:/bin/bash

[[email protected] Downloads]#

Ora dobbiamo abilitare il nuovo account usando il comando passwd -

[[email protected] Downloads]# passwd bjones 
Changing password for user bjones. 
New password:  
Retype new password:  
passwd: all authentication tokens updated successfully.

[[email protected] Downloads]#

L'account utente non è abilitato consentendo all'utente di accedere al sistema.

Disattivazione degli account utente

Esistono diversi metodi per disabilitare gli account su un sistema. Questi vanno dalla modifica manuale del file / etc / passwd. O anche usando il comando passwd con l' estensione-linterruttore. Entrambi questi metodi hanno un grosso svantaggio: se l'utente ha accesso ssh e utilizza una chiave RSA per l'autenticazione, può comunque accedere utilizzando questo metodo.

Ora usiamo il comando chage , cambiando la data di scadenza della password in una data precedente. Inoltre, potrebbe essere utile annotare l'account sul motivo per cui lo abbiamo disattivato.

[[email protected] Downloads]# chage -E 2005-10-01 bjones
 
[[email protected] Downloads]# usermod  -c "Disabled Account while Bob out of the country 
for five months" bjones

[[email protected] Downloads]# grep bjones /etc/passwd 
bjones:x:1001:1001:Disabled Account while Bob out of the country for four 
months:/home/bjones:/bin/bash

[[email protected] Downloads]#

Gestisci gruppi

La gestione dei gruppi in Linux rende conveniente per un amministratore combinare gli utenti all'interno dei contenitori applicando i set di autorizzazioni applicabili a tutti i membri del gruppo. Ad esempio, tutti gli utenti in Accounting potrebbero aver bisogno di accedere agli stessi file. Pertanto, creiamo un gruppo di contabilità, aggiungendo gli utenti di contabilità.

Per la maggior parte, tutto ciò che richiede autorizzazioni speciali dovrebbe essere fatto in un gruppo. Questo approccio in genere consente di risparmiare tempo rispetto all'applicazione di autorizzazioni speciali a un solo utente. Ad esempio, Sally è responsabile dei rapporti e solo Sally ha bisogno di accedere a determinati file per i rapporti. Tuttavia, cosa succede se un giorno Sally si ammala e Bob fa i rapporti? O cresce la necessità di reportistica? Quando viene creato un gruppo, un amministratore deve farlo solo una volta. L'aggiunta di utenti viene applicata in base alle esigenze di modifica o espansione.

Di seguito sono riportati alcuni comandi comuni utilizzati per la gestione dei gruppi:

  • chgrp
  • groupadd
  • groups
  • usermod

chgrp - Modifica la proprietà del gruppo per un file o una directory.

Creiamo una directory per le persone nel gruppo contabilità per archiviare i file e creare directory per i file.

[[email protected] Downloads]# mkdir /home/accounting

[[email protected] Downloads]# ls -ld /home/accounting
drwxr-xr-x. 2 root root 6 Jan 13 10:18 /home/accounting

[[email protected] Downloads]#

Successivamente, assegniamo la proprietà del gruppo al gruppo contabile .

[root[email protected] Downloads]# chgrp -v  accounting /home/accounting/ 
changed group of ‘/home/accounting/’ from root to accounting

[[email protected] Downloads]# ls -ld /home/accounting/ 
drwxr-xr-x. 2 root accounting 6 Jan 13 10:18 /home/accounting/

[[email protected] Downloads]#

Ora, tutti nel gruppo di contabilità hanno letto ed eseguono le autorizzazioni per / home / contabilità . Avranno bisogno anche dei permessi di scrittura.

[[email protected] Downloads]# chmod g+w /home/accounting/

[[email protected] Downloads]# ls -ld /home/accounting/ 
drwxrwxr-x. 2 root accounting 6 Jan 13 10:18 /home/accounting/

[[email protected] Downloads]#

Poiché il gruppo contabile può occuparsi di documenti sensibili, dobbiamo applicare alcune autorizzazioni restrittive per altro o mondo .

[[email protected] Downloads]# chmod o-rx /home/accounting/

[[email protected] Downloads]# ls -ld /home/accounting/ 
drwxrwx---. 2 root accounting 6 Jan 13 10:18 /home/accounting/

[[email protected] Downloads]#

groupadd - Usato per creare un nuovo gruppo.

Interruttore Azione
-g Specifica un GID per il gruppo
-K Sostituisce le specifiche per GID in /etc/login.defs
-o Consente di ignorare la non autorizzazione dell'ID gruppo non univoco
-p Password di gruppo, che consente agli utenti di attivarsi

Creiamo un nuovo gruppo chiamato segreto. Aggiungeremo una password al gruppo, consentendo agli utenti di aggiungersi con una password nota.

[[email protected]]# groupadd secret

[[email protected]]# gpasswd secret 
Changing the password for group secret 
New Password:  
Re-enter new password:

[[email protected]]# exit 
exit

[[email protected] ~]$ newgrp secret 
Password:

[[email protected] ~]$ groups 
secret wheel rdc

[[email protected] ~]$

In pratica, le password per i gruppi non vengono utilizzate spesso. I gruppi secondari sono adeguati e la condivisione delle password tra altri utenti non è una grande pratica di sicurezza.

Il groupscomando viene utilizzato per mostrare a quale gruppo appartiene un utente. Lo useremo dopo aver apportato alcune modifiche al nostro utente attuale.

usermod viene utilizzato per aggiornare gli attributi dell'account.

Di seguito sono riportati gli interruttori usermod comuni .

Interruttore Azione
-un Aggiunge, aggiunge l'utente a gruppi supplementari, solo con l'opzione -G
-c Commenta, aggiorna il valore del commento utente
-d Directory home, aggiorna la directory home dell'utente
-G Raggruppa, aggiunge o rimuove i gruppi di utenti secondari
-g Gruppo, gruppo primario predefinito dell'utente
[[email protected]]# groups centos 
centos : accounting secret

[[email protected]]#

[[email protected]]# usermod -a -G wheel centos

[[email protected]]# groups centos
centos : accounting wheel secret

[[email protected]]#