Nota:
- Questa esercitazione è disponibile in un ambiente di laboratorio gratuito fornito da Oracle.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituire questi valori con quelli specifici del tuo ambiente cloud.
Creare utenti e gruppi su Oracle Linux
Introduzione
L'esercitazione seguente fornisce procedure dettagliate per eseguire l'amministrazione di utenti e gruppi su Oracle Linux. Si creeranno utenti e gruppi, implementeranno gruppi privati degli utenti e concederanno privilegi elevati degli utenti.
Obiettivi
In questo laboratorio:
- Creare un nuovo utente ed esplorare la directory home dell'utente
- Creare un nuovo gruppo e aggiungere un utente al gruppo
- Utilizza lo schema del gruppo privato utente e implementa l'accesso in scrittura a una directory
- Amministrare il comando
sudo
per la concessione dei privilegi root
Di cosa hai bisogno?
- Un sistema con Oracle Linux installato
Nota: quando si utilizza l'ambiente di laboratorio gratuito, vedere Oracle Linux Lab Basics per le connessioni e altre istruzioni d'uso.
Amministrazione degli account utente
In questa sezione vengono utilizzate le utility della riga di comando per creare un nuovo account utente, visualizzare i file aggiornati quando si aggiunge un nuovo utente, modificare un account utente, impostare una password per il nuovo utente ed eseguire il login come nuovo utente.
-
Aprire un terminale e connettersi all'istanza Oracle Linux.
-
Diventare l'utente root.
sudo su -
-
Come utente root, aggiungere un utente denominato alice.
useradd alice
L'utente viene aggiunto al file
/etc/passwd
. -
Visualizzare la voce alice nel file
/etc/passwd
.grep alice /etc/passwd
L'output mostra:
- L'UID e il GID del nuovo utente sono uguali (
1001
). - È stata creata una home directory per il nuovo utente (
/home/alice
). - La shell predefinita per il nuovo utente è
/bin/bash
.
- L'UID e il GID del nuovo utente sono uguali (
-
Visualizzare le directory home.
ls -l /home
In questo esempio l'utente opc esiste già.
È stata creata una home directory per il nuovo utente perché il parametro CREATE_HOME in/etc/login.defs
è impostato suyes
. -
Visualizzare il parametro CREATE_HOME nel file
/etc/login.defs
.grep CREATE_HOME /etc/login.defs
-
Visualizzare le impostazioni predefinite per un nuovo utente, memorizzate in
/etc/default/useradd
.cat /etc/default/useradd
Il parametro SKEL è impostato su
/etc/skel
. -
Visualizzare il contenuto della directory
/etc/skel
.ls -la /etc/skel
-
Visualizzare il contenuto della directory home di alice.
ls -la /home/alice
Il contenuto di SKEL (
/etc/skel
) viene copiato nella directory home del nuovo utente. -
Visualizzare la nuova voce alice nel file
/etc/group
.grep alice /etc/group
Poiché Oracle Linux utilizza uno schemaUPG (User Private Group), un nuovo gruppo privato (alice, GID=1001) è stato creato al momento della creazione dell'utente alice.
-
Modificare le informazioni GECOS per l'utente alice. Visualizzare la voce alice nel file
/etc/passwd
prima e dopo la modifica delle informazioni GECOS.grep alice /etc/passwd usermod -c "Alice Smith" alice grep alice /etc/passwd
-
Creare una password di
AB*gh246
per l'utente alice. Visualizzare la voce alice nel file/etc/shadow
prima e dopo la creazione di una password per alice.grep alice /etc/shadow passwd alice grep alice /etc/shadow
Il valore
!!
di alice viene sostituito da un valore per la password con hash. -
Uscire dal login e dal login root come utente alice. Quando richiesto, fornire la password di
AB*gh246
.exit su - alice
-
Verificare di essere l'utente alice e che la directory corrente sia la directory home dell'utente alice.
whoami pwd
-
Uscire dalla shell dell'utente alice e diventare l'utente root.
exit sudo su -
-
Come utente root, aggiungere un utente denominato oracle che verrà utilizzato in un secondo momento in questa esercitazione.
useradd oracle
-
Creare una password di
XY*gh579
per l'utente oracle.passwd oracle
Amministra conti gruppo
In questa sezione è possibile creare un nuovo account di gruppo e aggiungere un utente a questo nuovo gruppo.
-
Come utente root, aggiungere un gruppo denominato staff.
groupadd staff
Il gruppo viene aggiunto al file
/etc/group
. -
Visualizzare le ultime 10 voci nel file
/etc/group
.tail /etc/group
Il GID (
1003
) per il nuovo gruppo viene incrementato di uno. -
Aggiungere l'utente alice al gruppo staff. Visualizzare la voce di gruppo staff nel file
/etc/group
.usermod -aG 1003 alice grep staff /etc/group
L'utente alice dispone di un'appartenenza a un gruppo secondario nel gruppo staff.
-
Visualizza l'appartenenza al gruppo principale per l'alice.
grep alice /etc/passwd
Il gruppo primario dell'utente alice è ancora
1001
.
Implementa gruppi privati utente
In questa sezione è possibile utilizzare lo schema Gruppi privati utenti per consentire a utenti diversi di scrivere l'accesso ai file in una singola directory.
-
Come utente root, creare la directory
/staff
.mkdir /staff
-
Visualizzare la directory
/staff
e le relative autorizzazioni.ls -ld /staff
-
Modificare il proprietario del gruppo per la directory
/staff
nel gruppo staff. L'opzione-R
(ricorsiva) imposta il gruppo per i file e le directory in/staff
. Visualizza la directory/staff
e le relative autorizzazioni dopo aver modificato la proprietà del gruppo.chgrp -R staff /staff ls -ld /staff
Il proprietario della directory
/staff
è comunque root, ma ora il gruppo è staff. -
Impostare il bit setgid nella directory
/staff
. Quindi, visualizzare le autorizzazioni per la directory/staff
.chmod -R 2775 /staff ls -ld /staff
Le autorizzazioni di gruppo per la directory
/staff
sono state modificate. -
Aggiungere l'utente oracle al gruppo staff. Dopo avere aggiunto l'utente oracle, visualizzare la voce staff nel file
/etc/group
.usermod -aG staff oracle grep staff /etc/group
Sia gli utenti di alice che di oracle hanno l'appartenenza al gruppo secondario nel gruppo staff.
-
Diventare l'utente oracle. Non viene richiesta la password dell'utente oracle perché si è al momento l'utente root. Verificare di essere l'utente oracle e che la directory corrente sia la directory home dell'utente oracle.
su - oracle whoami pwd
-
Visualizza l'appartenenza al gruppo per l'utente oracle.
groups
L'utente oracle appartiene a due gruppi: oracle e staff.
-
Passare alla directory
/staff
. Creare un nuovo file nella directory/staff
denominataoracle_file
. Visualizzare le autorizzazioni e la proprietà del nuovo file.cd /staff touch oracle_file ls -l oracle_file
Le autorizzazioni vengono lette/scritte per il gruppo staff.
-
Diventare l'utente alice. Quando richiesto, fornire la password di
AB*gh246
. Verificare di essere l'utente alice.su - alice whoami
-
Visualizza l'appartenenza al gruppo per l'utente alice.
groups
L'utente alice appartiene a due gruppi: alice e staff.
-
Passare alla directory
/staff
. Creare un nuovo file nella directory/staff
denominataalice_file
. Visualizzare le autorizzazioni e la proprietà dei nuovi file.cd /staff touch alice_file ls -l
Le autorizzazioni vengono lette/scritte su entrambi i file del gruppo staff.
-
Come utente alice, utilizzare il comando
touch
per aggiornare l'indicatore orario suoracle_file
. Visualizzare i file per verificare che l'ora sia cambiata.touch oracle_file ls -l
L'aggiornamento dell'indicatore orario implica l'autorizzazione di scrittura sul file come utente alice, anche se il file è stato creato dall'utente oracle.
-
Uscire dalla shell dell'utente alice e dalla shell dell'utente oracle per tornare alla shell dell'utente root. Verificare di essere l'utente root.
exit exit whoami
Opzione 1: Concedere privilegi elevati a un utente
In questa sezione, è possibile concedere i privilegi sudo
a un utente aggiungendo una voce al file /etc/sudoers
.
-
Diventare l'utente alice. Non viene richiesto di immettere la password alice perché l'utente corrente è l'utente root. Verificare di essere l'utente alice.
su - alice whoami
-
Come utente alice, provare ad aggiungere newuser.
useradd newuser
L'utente alice non dispone dell'autorizzazione per aggiungere newuser.
-
Inserire il comando
sudo
prima del comandouseradd
precedente per aggiungere newuser. Quando richiesto, fornire la password diAB*gh246
.sudo useradd newuser
Il tentativo di eseguire questo comando di amministratore senza l'autorizzazione appropriata è riportato nel file
/var/log/secure
. -
Uscire dalla shell dell'utente alice per tornare alla shell dell'utente root. Visualizzare le voci sudoers nel file
/var/log/secure
.exit grep sudoers /var/log/secure
La voce alice: user NOT in sudoers per il tentativo di utilizzo del comando
/sbin/useradd
si trova nel file/var/log/secure
. Nell'esempio vengono visualizzate più voci. È possibile avere una sola voce. -
Come utente root, modificare il file
/etc/sudoers
utilizzando il comandovisudo
.visudo
Questo comando apre il file
/etc/sudoers
utilizzando l'editorvim
. -
Nel file
/etc/sudoers
aggiungere la riga seguente per concedere all'utente alice l'autorizzazione per eseguire il comando/sbin/useradd
.alice ALL=(ALL) /sbin/useradd
La nuova voce viene evidenziata. Salvare le modifiche e uscire dal comando
visudo
. -
Diventare l'utente alice. Tentativo di aggiungere newuser senza il comando
sudo
. Inserire il comandosudo
e tentare di aggiungere newuser una seconda volta. Quando richiesto, fornire la password diAB*gh246
.su - alice useradd newuser sudo useradd newuser
-
Verificare che il newuser sia stato aggiunto.
grep newuser /etc/passwd ls -l /home
Il nuovo utente ora esiste. Con la voce alice nel file
/etc/sudoers
, l'utente alice dispone dei privilegisudo
per eseguire il comando/sbin/useradd
. -
Uscire dalla shell alice per tornare alla shell root. Utilizzare il comando
visudo
ed eliminare la voce alice dal file/etc/sudoers
aggiunto in precedenza in questo laboratorio.exit visudo
La voce da eliminare è evidenziata. Eliminare l'intera riga o, come in questo esempio, inserire il carattere
#
per commentare la riga. Salvare le modifiche e uscire dal comandovisudo
. -
Verificare che l'utente alice non possa più aggiungere un nuovo utente. Diventare l'utente alice. Tentare di aggiungere anotheruser con il comando
sudo
.su - alice sudo useradd anotheruser
Il tentativo di eseguire questo comando di amministratore senza l'autorizzazione appropriata è riportato nel file
/var/log/secure
. -
Uscire dalla shell dell'utente alice per tornare alla shell dell'utente root.
exit
Opzione 2: Concedere privilegi elevati a un utente
In questa sezione, è possibile concedere i privilegi sudo
aggiungendo un utente al gruppo ruota.
-
Come utente root, visualizzare la voce wheel nel file
/etc/sudoers
.grep wheel /etc/sudoers
La voce %wheel ALL=(ALL) ALL nel file
/etc/sudoers
consente a qualsiasi membro del gruppo wheel di eseguire qualsiasi comando, se preceduto dasudo
. -
Aggiungere l'utente alice al gruppo wheel. Verificare che l'utente alice si trovi nel gruppo wheel.
usermod -aG wheel alice grep wheel /etc/group
L'utente alice dispone di un'appartenenza di gruppo secondaria nel gruppo ruota.
-
Diventare l'utente alice. Non viene richiesto di immettere la password alice perché l'utente corrente è l'utente root. Verificare di essere l'utente alice.
su - alice whoami
-
L'utente alice deve aggiungere rduser utilizzando il comando
sudo useradd
. Se richiesto, fornire la passwordAB*gh246
.sudo useradd thirduser
-
Verificare che l'terzoutente sia stato aggiunto. Il comando
ls
non riesce finché non si inseriscesudo
e non si fornisce la password alice. Ciò conferma che l'utente alice dispone dei privilegisudo
.grep thirduser /etc/passwd ls -la /home/thirduser sudo ls -la /home/thirduser
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi ad altri contenuti per la formazione gratuita sul canale YouTube di Oracle Learning. Inoltre, visitare education.oracle.com/learning-explorer per diventare Oracle Learning Explorer.
Per la documentazione sul prodotto, visitare Oracle Help Center.
Create users and groups on Oracle Linux
F49504-05
July 2022
Copyright © 2021, Oracle and/or its affiliates.