Sistemi Operativi

Transcript

Sistemi Operativi
ì
Sistemi Operativi
Corso di Laurea Triennale in Ingegneria Informatica
Esercitazione3
•  Shell (prosecuzione)
•  Permessi (prosecuzione)
•  Gestione utenti
(prosecuzione)
[email protected]
Domande sulle lezioni passate?
[email protected]
Soluzioneesercizipassati
ì 
ì 
ì 
ì 
cd
mkdir –p visibile/segreta
echo 'vero' > visibile/notizia.txt
cp visibile/notizia.txt visibile/
segreta/cronaca.txt
ì  chmod u-x visibile
ì  chmod u+x visibile
ì  Supponendo che i diritti del gruppo e di others siano
solo di lettura ed esecuzione ma non di scrittura:
ì 
chmod 655 visibile
[email protected]
Soluzioneesercizipassati
ì  Risposte alle domande
1.  Si riesce a vedere il contenuto di visibile (al
proprietario è consentito l'accesso in lettura).
2.  Non si può vedere il file notizia.txt dentro visibile (non
si può attraversare visibile).
3.  Non si può vedere il contenuto di segreta .
4.  Non si può vedere il notizia.txt dentro segreta .
ì  adduser utente2
1.  supponendo che la maschera di default sia rwxr-xr-x,
utente può vedere il contenuto della home di utente2 .
2.  supponendo che la home di utente2 abbia un gruppo
diverso da utente:
chmod o-r ~
[email protected]
Soluzioneesercizipassati
groups root
adduser utente3 (login root)
mkdir /home/utente3/temp (root)
ls –l /home/utente3/temp (l’utente proprietario è root e
il gruppo proprietario è wheel)
chown utente3:utente3 /home/utente3/temp
ls –l
chgrp admin /home/utente3/temp
rmuser utente2
rmuser utente3
[email protected]
Shell
§  Per informazioni su una shell usare il
manuale.
§  man bash,
§  man sh.
§  Leggere nella pagina di manuale info
su redirezione e pipeline
§  Le shell che un utente può utilizzare
sono elencate nel file /etc/shells.
[email protected]
Permessi–secondaparte
[email protected]
Permessi–comandochmod
ì  chmod permette di modificare i permessi.
ì  La sintassi generale di chmod è la seguente:
ì  chmod [who][how][which]
who: a chi modificare i permessi: owner (u),
group (g), others (o), all (a).
§ 
how:
§ 
§  '+' aggiunge un permesso,
§  '-' toglie un permesso,
§  '=' assegna un permesso.
[email protected]
Permessi–comandochmod
ì  Rappresentazione simbolica:
ì  chmod a+rwx directory1
ì  Rappresentazione ottale:
ì  chmod 0741 file
ì  opzione -R : modifica ricorsivamente i permessi delle
directory indicate e del loro contenuto.
[email protected]
GestioneUtenti–secondaparte
[email protected]
GestioneUtenti–creazioneerimozione
adduser : crea un nuovo utente.
§  adduser nomeUtente
§ 
deluser : rimuove l'utente *
§  deluser nomeUtente *
§ 
[email protected]
Permessi–chown,chgrp
ì  Il comando chown permette di modificare il
proprietario e/o il gruppo assegnato ad un file
o directory.
ì  Il comando chgrp permette di modificare il
gruppo assegnato ad un file o directory.
[email protected]
GestioneUtenti-password
§  File con le informazioni sugli utenti:
§ 
/etc/passwd
§  File con le informazioni sugli utenti e le
password criptate:
§  /etc/shadow
ð  si possono aprire con il comando
vipw e vipw -s, che li apre con
l’editor predefinito.
[email protected]
GestioneUtenti-password
man 5 passwd
password
dati personali
fab:*:1001:1001:delvi:/home/fab:/bin/sh
utente
UID GID
[email protected]
home
shell
GestioneUtenti-password
Campo
Significato
utente
Nomeutente
password
Password(cifrata)
UID(userid)
Iden8ficatoreunivocodell’utentenelsistema(numero)
GID(groupid)
Iden8ficatoreunivocodelgrupponelsistema(numero)
da8personali
Nomina8vocompletoealtreinformazioni
cartellahome
Percorsoassolutodellacartellapersonale(home)
shell
Interpretedeicomandidau8lizzareperl’utente
•  Shell
•  Puòessereimpostataa/sbin/nologin o /bin/false(ingenerepergliuten8di
sistema).
•  Intalcasononèpossibilefarelogincontaleutente.
[email protected]
GestioneUtenti–passwordshadow
ì  man 5 shadow
ì  Tu>osuunasolariga:
userName:pwdCrypt:pwdAge:pwdAgeMin:pwdAgeMax:
pwdNotificationPeriod:pwdInactivityPeriod:
pwdExpiryDate:reservedForFutureUse
[email protected]
GestioneUtenti–passwordshadow
Uten8disistema
§  Campopasswordcriptata
*indicacheilloginnonèpossibile(nessuna
stringacriptatagenera*).
§ 
ì 
Approfondimento→cifratura,hashedintorni…èman 3 crypt
[email protected]
GestioneUtenti–passwordshadow
Campo
Significato
pwdchange
Datadimodificadellapassword
expire
Datadiscadenzaaccount
da8personali
Nomina8vocompletoealtreinformazioni
cartellahome
Percorsoassolutodellacartellapersonale(home)
shell
Interpretedeicomandidau8lizzare
§ Shell
§ Puòessereimpostataa/sbin/nologin(ingenere
pergliuten8disistema).
ð Intalcasononèpossibilefarelogincontale
utente.
[email protected]
GestioneGruppi
Campo
Significato
gruppo
Nomedelgruppo
password
Passwordcifratadelgruppo
GID(groupid)
Iden8ficatoreunivocodelgruppo(numero)
listauten8
Uten8appartenen8algruppo(separa8davirgole)
password
elenco utenti
studenti:x:1010:fabio,domenico,luca
gruppo
GID
[email protected]
GestioneUtenti–creazionemanuale
Editare il file /etc/shadow aggiungendo una
riga per il nuovo utente (comando vipw):
•  utilizzare un UID libero,
•  conviene lasciare la password vuota e
cambiarla in seguito con il comando
passwd.
•  la home va creata esplicitamente
•  Editare /etc/group aggiungendo un nuovo
gruppo per il nuovo utente:
•  utilizzare un GID libero.
•  Creare la cartella home del nuovo utente.
• 
[email protected]
GestioneUtenti–creazionemanuale
l 
Cambiareipermessidellacartellahome:accesso
completoalsoloproprietario(es755).
l 
l 
l 
Crearel’ambientebasenellahome:copiaretuNifile
(compresiifilenascos8)in/etc/skel nellahome
dell’utente*.
Cambiareproprietarioegruppodellahomeedeifile
appenacopia8inquellidelnuovoutente.
Impostarelapassworddell’utente
l 
loggarsiconilnuovoutente,
l 
digitareilcomandopasswd.
[email protected]
Esercizio-intro
ì  vipw→'vi/etc/passwd'+altro(vedeteilmandi
vipw)
ì  vipw-s→'vi/etc/shadow'+altro
ì  vigr→'vi/etc/group'+altro
[email protected]
Esercizio1/2
l 
l 
l 
l 
l 
Eseguire il login come utente root.
Creare, utilizzando il comando adduser, un utente
pippo (impostare come home la cartella /tmp/pippo).
Creare manualmente un utente pluto (impostare
come home la cartella /tmp/pluto).
pluto può creare file nella home di pippo? In caso
negativo modificare i diritti delle home di pippo e
pluto in modo che i due utenti possano fare tale
operazione a vicenda.
Creare un nuovo gruppo floppyusr a cui deve
appartenere l'utente pluto.
[email protected]
Esercizio2/2
l 
l 
l 
pluto appartiene al nuovo gruppo (comando id)?
Eseguire logout e nuovo login di pluto. Cosa
cambia?
Creare una cartella /tmp/floppy
appartenente al gruppo floppyusr.
Assegnare a questa cartella i diritti in modo che:
l 
l 
i membri del gruppo floppyusr abbiano accesso
illimitato,
a tutti gli altri utenti non sia consentito alcun
tipo di accesso.
[email protected]