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:
[root@localhost Downloads]# useradd -c "Bob Jones Accounting Dept Manager"
-m -g accounting -n bjones
Ora vediamo se il nostro nuovo utente è stato creato -
[root@localhost Downloads]# id bjones
(bjones) gid = 1001(accounting) groups = 1001(accounting)
[root@localhost Downloads]# grep bjones /etc/passwd
bjones:x:1001:1001:Bob Jones Accounting Dept Manager:/home/bjones:/bin/bash
[root@localhost Downloads]#
Ora dobbiamo abilitare il nuovo account usando il comando passwd -
[root@localhost Downloads]# passwd bjones
Changing password for user bjones.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost 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.
[root@localhost Downloads]# chage -E 2005-10-01 bjones
[root@localhost Downloads]# usermod -c "Disabled Account while Bob out of the country
for five months" bjones
[root@localhost Downloads]# grep bjones /etc/passwd
bjones:x:1001:1001:Disabled Account while Bob out of the country for four
months:/home/bjones:/bin/bash
[root@localhost 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.
[root@localhost Downloads]# mkdir /home/accounting
[root@localhost Downloads]# ls -ld /home/accounting
drwxr-xr-x. 2 root root 6 Jan 13 10:18 /home/accounting
[root@localhost Downloads]#
Successivamente, assegniamo la proprietà del gruppo al gruppo contabile .
[root@localhost Downloads]# chgrp -v accounting /home/accounting/
changed group of ‘/home/accounting/’ from root to accounting
[root@localhost Downloads]# ls -ld /home/accounting/
drwxr-xr-x. 2 root accounting 6 Jan 13 10:18 /home/accounting/
[root@localhost Downloads]#
Ora, tutti nel gruppo di contabilità hanno letto ed eseguono le autorizzazioni per / home / contabilità . Avranno bisogno anche dei permessi di scrittura.
[root@localhost Downloads]# chmod g+w /home/accounting/
[root@localhost Downloads]# ls -ld /home/accounting/
drwxrwxr-x. 2 root accounting 6 Jan 13 10:18 /home/accounting/
[root@localhost Downloads]#
Poiché il gruppo contabile può occuparsi di documenti sensibili, dobbiamo applicare alcune autorizzazioni restrittive per altro o mondo .
[root@localhost Downloads]# chmod o-rx /home/accounting/
[root@localhost Downloads]# ls -ld /home/accounting/
drwxrwx---. 2 root accounting 6 Jan 13 10:18 /home/accounting/
[root@localhost 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.
[root@localhost]# groupadd secret
[root@localhost]# gpasswd secret
Changing the password for group secret
New Password:
Re-enter new password:
[root@localhost]# exit
exit
[centos@localhost ~]$ newgrp secret
Password:
[centos@localhost ~]$ groups
secret wheel rdc
[centos@localhost ~]$
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 |
[root@localhost]# groups centos
centos : accounting secret
[root@localhost]#
[root@localhost]# usermod -a -G wheel centos
[root@localhost]# groups centos
centos : accounting wheel secret
[root@localhost]#