Linux: Controllo di accesso, gestione utenti, gruppi, permessi. http://www.lugcr.it



Documenti analoghi
Utenti e gruppi. Ogni utilizzatore di UNIX ha associato: Nomeutente nome alfanumerici UID identità numerica

Gestione degli Utenti e dei Permessi

Link e permessi. Corso di Laurea Triennale in Ingegneria delle TLC e dell Automazione. Corso di Sistemi Operativi A. A

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Corso ForTIC C2 LEZIONE n. 3

Corso ForTIC C2 LEZIONE n. 8. Cos'è la shell Le variabili d'ambiente L'uso della shell per la realizzazione di semplici script

Dexma Newsletter System

Manuale LiveBox WEB ADMIN.

Permessi, utenti e gruppi

Appunti Corso Linux 2011 Lez. 6

Terza lezione: Directory e File system di Linux

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Manuale d uso Lexun Area Riservata proprietà di logos engineering - Sistema Qualità certificato ISO 9001 Det Norske Veritas Italia

Eleonline gestione dello spoglio elettorale

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

Manuale Utente Amministrazione Trasparente GA

CONFIGURAZIONE E GESTIONE DEI DATABASE (rev. 1.1)

Manuale LiveBox WEB ADMIN.

Benvenuti/e.

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.

1.0 GUIDA PER L UTENTE

Ca ra tteristiche dei sistem i GN U/L inux. Struttura di un sistema GNU/Linux Il filesystem La shell

I.S. Sobrero. Dipartimento di Informatica. Utilizzo. 16/02/2007 Marco Marchisotti

Procedura SMS. Manuale Utente

2.1 Installazione e configurazione LMS [4]

UNIWEB: GUIDA OPERATIVA PER L APERTURA DEGLI APPELLI (giugno 2011)

filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44

PSNET UC RUPAR PIEMONTE MANUALE OPERATIVO

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

ALF0021M MANUALE UTENTE MODULO "SETUP"

Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti

Guida rapida per i docenti all'uso della piattaforma di e-learning dell'istituto Giua

GESGOLF SMS ONLINE. Manuale per l utente

SCI Sistema di gestione delle Comunicazioni Interne > MANUALE D USO

Gestione degli Utenti e dei Permessi

Joomla! 2.5:Utenti e permessi - Il wiki di Joomla.it

Sistema Informativo Gestione Fidelizzazione Clienti MANUALE D USO

Progetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore

SERVIZIO DI MESSAGGISTICA ALL UTENTE. Manuale per l operatore

Documentazione. Divisione Sicurezza Dati

Organizzazione di Sistemi Operativi e Reti

NOZIONI BASE PER ESERCITAZIONI

U-GOV Ricerca. Vecchia interfaccia (operazioni di amministrazione) Nuova interfaccia (altre operazioni) Sandro Amato Gloria Cresta

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Promemoria delle principali funzioni di Gestione utenti e prestiti in SOL

FtpZone Guida all uso

GUIDA UTENTE PRIMA NOTA SEMPLICE

PORTALE CLIENTI Manuale utente

Guida alla procedura di inserimento materiale didattico sui minisiti degli insegnamenti

Manuale operativo - Procedura per la costruzione, la pubblicazione di questionari

FtpZone Guida all uso Versione 2.1

Samba: guida rapida - Guide@Debianizzati.Org

Usare MUD2011 con Windows 7

Registrazione nuovo utente. Per registrare un nuovo utente cliccare sul link Registrazione

Ast-Rubrica 1.4. Manuale. Del 26 Aprile 2009

Laboratorio di Programmazione

Interfaccia di base di GroupWise WebAccess

Manuale Utente Albo Pretorio GA

Sicurezza dei dati in EGRID

Nexus Badge Pc Access Manuale Installazione/Uso

Struttura del Micro Filesystem (µfs)

L'AMMINISTRATORE. Questa utenza non è abilitata all'acquisto.

Soluzione dell esercizio del 2 Febbraio 2004

CRM Configurazione e gestione accessi

YOUTUBE: UN CANALE PER LA PARTECIPAZIONE

Usare MUD2010 con Windows 7

REOL-Services Quick Reference Ver. 1.1 Tecno Press Srl. 1

Manuale LiveBox APPLICAZIONE WINDOWS PHONE V (465)

Corso di Amministrazione di Reti A.A. 2002/2003

NOZIONI BASE SHELL E SCRIPT LINUX

Manuale Servizio NEWSLETTER

Cliens Gestione Studio Legale Modifica dei Reports

LE CARATTERISTICHE DEI PRODOTTI MULTIVARIANTE

A tal fine il presente documento si compone di tre distinte sezioni:

MUSEO&WEB. un area riservata (OTEBAC) Roma, 15 giugno 2010

Sequenza di avvio di Linux:

Casalini Crypto. Documento di protocollo tecnico VRS 2.1

Manuale operatore per l utilizzo dell utente di dominio

A T I C _W E B G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O. Rev. 2.1

Creare un sito Multilingua con Joomla 1.6

Informativa sulla privacy

Gestione-Rifiuti.it. Usare MUD2010 con Windows Vista. Informazioni importanti per l utilizzo di MUD 2010 con Windows Vista

Manuale Utente SIRECO

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Monitor Orientamento. Manuale Utente

CONTENT MANAGEMENT SY STEM

Gestione Turni. Introduzione

Mac Application Manager 1.3 (SOLO PER TIGER)

Manuale Gestore. Utilizzo Programma. Magazzino

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

Struttura del sistema operativo GNU/Linux

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

19. LA PROGRAMMAZIONE LATO SERVER

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

1. Manuale d uso per l interfaccia web di Gestione PEC2

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

Come autenticarsi nel Back-End del sito Web per poter gestire i contenuti

cambiare utente mediante il comando su verificare chi siete e su che dir state lavorando Chi siete e che dir? (Inserisci la risposta)

Tabelle di riferimento Pulsanti Inserire documento Predisposizione doc Approvazione Doc Numerazione Doc Pubblicazione Albo Webservice

I file di dati. Unità didattica D1 1

Transcript:

Linux: Controllo di accesso, gestione utenti, gruppi, permessi http://www.lugcr.it 1

Perché? Perché devo utilizzare un preciso nome utente? 1 : salvaguardia del sistema Utilizzando il sistema come amministratore (root) si corre il rischio di danneggiare lo stesso 2 : sicurezza Utilizzando il sistema come utente il rischio che il proprio sistema diventi preda di estranei è molto basso 3 : riservatezza Utilizzando il sistema come utente i propri dati sono protetti da occhi indiscreti 2

Come? nome_utente : permette al sistema di dedicarci risorse, di riconoscerci, di distinguerci da altri utenti password : permette al sistema di verificare che siamo proprio noi permessi e proprietà : sono attribuiti a file e cartelle, permettono a noi e al sistema di capire chi può operare su di essi e, soprattutto, come 3

Permessi sui file e sulle directory Possono essere visti indifferentemente come caratteri o come valori ottali, ogni file e directory possiede 10 campi descrittivi del proprio stato (nella rappresentazione a caratteri), ne possiamo controllare il valore col comando ls -l. Il loro significato ed i valori possibili sono: 1. Tipo di file: d = directory, l = link, - = file,... 2. Permesso di lettura al proprietario del file: r = permesso accordato, - = permesso negato 3. Permesso di scrittura al proprietario del file: w = permesso accordato, - = permesso negato 4. Permesso di esecuzione al proprietario del file: x = permesso accordato, - = permesso negato 5. Permesso di lettura al gruppo di utenti del proprietario del file: r = permesso accordato, - = permesso negato 6. Permesso di scrittura al gruppo di utenti del proprietario del file: w = permesso accordato, - = permesso negato 7. Permesso di esecuzione al gruppo di utenti del proprietario del file: x = permesso accordato, - = permesso negato 8. Permesso di lettura a tutti gli altri utenti: r = permesso accordato, - = permesso negato 9. Permesso di scrittura a tutti gli altri utenti: w = permesso accordato, - = permesso negato 10.Permesso di esecuzione a tutti gli altri utenti: x = permesso accordato, - = permesso negato 4

Permessi sui file e sulle directory La rappresentazione ottale prevede di assegnare un valore numerico a ciascun tipo di permesso, così: Lettura = 4 Scrittura = 2 Esecuzione = 1 questi permessi possono essere attribuiti separatamente per: Proprietario del file (user) Gruppo a cui appartiene il proprietario (group) Altri utenti (others) ad ognuno di questi soggetti può essere assegnata una combinazione dei tre permessi elementari, così se si vuole, ad esempio, indicare la possibilità di accedere in lettura e scrittura ad un file il valore ottale corrispondente sarà: 4 + 2 = 6 5

Permessi speciali Sticky bit: fa sì che il file possa essere cancellato esclusivamente dal proprietario, anche se altri hanno il permesso di scrittura Gid: attribuisce all'eseguibile in funzione i privilegi del gruppo a cui appartiene Uid: attribuisce all'eseguibile in funzione i privilegi dell'utente a cui appartiene 6

Permessi speciali Esempio: se creiamo un file con 'touch' esso sarà di nostra proprietà: $ touch prova $ ls -l prova -rw-r--r-- 1 matteo users 0 2004-03-18 15:02 prova se attribuiamo a 'touch' lo Uid ogni nuovo file creato con touch avrà i permessi del proprietario di 'touch': $ touch prova $ ls -l prova -rw-r--r-- 1 root users 0 2004-03-18 15:06 prova 7

Come? Come si editano i permessi? chmod [opzioni] (modo) opcode permesso file chmod [opzioni] (modo) --reference=file_di_riferimento file modo (chi): u = utente g = gruppo o = altri (others) a = tutti (all) opcode (come): '+' = aggiunge un permesso '-' = rimuove un permesso '=' = assegna un permesso modo è opzionale, se non specificato esso assume il valore di default: a (all) opcode funziona solo con la modalità testuale, con la modalità ottale si attribuiscono direttamente i permessi desiderati 8

Esempi Alcuni esempi sui permessi: chmod u+x file chmod 751 file chmod u=rwx,g=rx,o=x file chmod =r file chmod 444 file chmod a-wx,a+r file chmod ugo=r aggiunge (+) il permesso di esecuzione (x) all'utente proprietario del file imposta (modalità ottale) lettura, scrittura, esecuzione al proprietario (7 in prima posizione), lettura ed esecuzione agli altri utenti facenti parte del gruppo cui appartiene il proprietario (5 in seconda posizione), esecuzione a chiunque altro idem come sopra ma in modalità testo imposta (modo non specificato) lettura a tutti imposta (modalità ottale) lettura a tutti per tutti gli utenti rimuove i permessi di scrittura ed esecuzione ed aggiunge solo quello di lettura imposta lettura a tutti 9

Impostazione di permessi speciali Per impostare i permessi speciali: Uid = 4 oppure s Gid = 2 oppure s Sticky bit = 1 oppure t esempi: chmod 4755 file chmod u+s file chmod 2755 file chmod g+s file assegna Uid assegna Uid assegna Gid assegna Gid 10

Proprietario Come si modifica il proprietario di un file? chown chown [opzioni] nuovoproprietario file [opzioni] --reference=file_di_riferimento file 11

La umask Domanda: Come facciamo a far sì che ogni file creato da un utente abbia i permessi corretti? Occorre settare la maschera dei permessi: umask Questa maschera rappresenta i permessi che NON vengono attribuiti alla creazione del file, la mancata attribuzione dei permessi corrisponde alla sottrazione del loro codice ottale alla stringa ottale dei permessi. PERMESSI DI DEFAULT PERMESSI UMASK = PERMESSI TOTALI solitamente la umask si utilizza col formato ottale si può, tuttavia, utilizzare anche il formato letterale, o simbolico, mediante il parametro: -S 12

La umask Esempio: #umask 000 non modifico i permessi di default nel creare nuovi files #touch prova #ls -l prova -rw-rw-rw- 1 root root 0 2004-03-19 09:29 prova cioè 666 #rm prova #umask 022 #touch prova #ls -l prova modifico i permessi di default nel creare nuovi files non impostando la scrittura per il gruppo del proprietario e per gli altri -rw-r--r-- 1 root root 0 2004-03-19 09:30 prova cioè 644 infatti 666 022 (umask) = 644 13

File di configurazione e programmi login su /etc/passwd /etc/group /etc/shadow /etc/motd /etc/securetty /var/spool/mail/* Permette l'accesso al sistema Permette di operare con l'identità di un altro utente Tabella delle caratteristiche salienti degli utenti Tabella delle caratteristiche salienti dei gruppi Tabella delle parole d'ordine quando non sono in /etc/passwd Messaggio di apertura o messaggio del giorno Elenco dei terminali da cui è consentito l'accesso all'utente root Messaggi di posta elettronica degli utenti 14

Login Il sistema (in realtà un ben preciso programma che si chiama login) controlla che esista un utente con il nome dato (username, non nome effettivo), e che la password corrisponda a quella registrata nel file /etc/passwd A questo punto, avete una "identità": lo username, a cui corrisponde uno userid (o uid) numerico; e appartenente ad alcuni gruppi, a cui corrispondono dei groupid (o gid) numerici. 15

Login Durante la fase di login diamo questi input: Username Password se il login ha successo otteniamo questi output: data e ora dell'ultimo accesso eventuale presenza di posta non letta motto del giorno accesso directory iniziale 16

Login Per controllare l'ultimo accesso al sistema: #lastlog Per controllare chi attualmente è connesso: $users $who $w 17

Login Per controllare la propria identità: $whoami Matteo $id uid=1001(matteo) gid=100(users) gruppi=100(users),6(disk),11(floppy) $logname restituisce il nome dell'utente con cui si ha inizialmente avuto accesso al sistema 18

Utenti Le informazioni sugli utenti sono contenute nel file: /etc/passwd il cui contenuto è organizzato come segue: utente:parola_d'ordine_cifrata:uid:gid:dati_personali:directory_home:shell utente parola_d'ordine_cifrata uid gid dati_personali directory_home shell nome utente (username) password cifrata, può invece essere contenuta in /etc/shadow User ID, identificativo utente (numerico) Group ID, identificativo gruppo (numerico) descrittivo utente (solitamente nome e cognome) solitamente /home/nomeutente ma può variare shell predefinita dell'utente (solitamente /bin/bash) 19

Utenti Storicamente il file /etc/passwd contiene l'elenco di tutti gli utenti e la loro password in forma criptata. Tutti gli utenti devono poter aver accesso in lettura a questo file, per cui l'esporre le password di tutti, seppur criptate, risulta rischioso per la sicurezza del sistema. Si è, allora, affiancato al normale /etc/passwd il file /etc/shadow che introduce nuove funzionalità: permesso in lettura solo a root, viene lasciato l'accesso il lettura a /etc/passwd per tutti gli utenti le password in /etc/shadow sono criptate con algoritmi più complessi e robusti è possibile gestire il tempo di scadenza, la durata minima e massima e i tempi di notifica della password Notare che: se la password è scritta in /etc/shadow, in /etc/passwd c'è solo una 'x' al posto della password criptata se in /etc/passwd il campo password è un '*', la password è nulla e l'utente non può accedere al sistema 20

Utenti Contenuto di: /etc/shadow Username:password:lastchange:min:max:warn:inactive:expire: Username Il nome dell'utente a cui fa riferimento la password Password Password criptata (13 caratteri). Puo assumere anche altri valori quali * (asterisco) che sta ad indicare che l'utente è disabilitato e!! (o nessun carattere) che significa che l'utente non ha password (cosa molto pericolosa in termini di sicurezza) lastchange min max warn inactive expire Numero di giorni compresi fra il 1 gennaio 1970 e l'ultima modifica della password Minimo numero di giorni dall'ultima data di modifica prima di poter nuovamente cambiare la password Durata massima della password (sempre in giorni) Numero di giorni di preavviso all'utente prima di invalidare la password Numero di giorni di inattività possibili per quell'utente Data dopo la quale quel login non può più essere usato 21

Utenti Le informazioni sui gruppi sono contenute nel file: /etc/group il cui contenuto è organizzato come segue: gruppo:parola_d'ordine_cifrata:gid:lista_di_utenti gruppo parola_d'ordine_cifrata gid lista_di_utenti nome del gruppo password del gruppo, di solito non si usa Group ID, identificativo numerico del gruppo lista di utenti appartenenti al gruppo, separati da ',' 22

Utenti Cambiare identità: $su: su per diventare root su nomeutente per cambiare utente su per ri-inizializzare l'ambiente a quello del nuovo utente, eseguendo per intera la sequenza di login 23

Utenti Gestione utenti: useradd» Aggiunge un utente e tutto quello che serve perchè possa accedere userdel Cancella un utente» usermod Modifica le informazioni dell'account» /etc/skel/ Contiene i file da aggiungere nella home di un nuovo utente» passwd Permette di modificare la parola d'ordine» chsh Cambia la shell abbinata all'utente» /etc/shells Elenco delle shell utilizzabili nel sistema» chfn» Modifica i dati personali dell'utente 24

Utenti useradd [opzioni] nomeutente opzioni: -d directory_home -g gruppo_iniziale -G gruppi_supplementari -m (crea directory, se non esiste, usando /etc/skel) -s shell userdel [opzioni] nomeutente opzioni: -r rimuove la directory_home e tutti i file contenuti al suo interno» 25

Utenti usermod [opzioni] nomeutente opzioni: -c commento imposta il campo comment -d directory_home imposta la directory_home -e data di scadenza imposta la data di scadenza dell'account -f n -giorni disabilita l'account dopo che sono trascorsi n -giorni dalla scadenza della password -g gruppo imposta il gruppo iniziale -G gruppi imposta i gruppi supplementari (lista senza spazi separata da virgole) -l nome imposta il nome di login -s shell imposta la shell di login 26

Utenti Come modificare la password: #passwd nomeutente utilizzabile in questa forma solo da root: permette di cambiare la password ad altri utenti senza chiedere la vecchia password. $passwd permette di modificare la propria password, per sicurezza viene chiesta la vecchia password. Si sconsiglia l'uso di accentate, potrebbe essere impossibile digitarle da alcuni terminali. 27

Utenti Vi sono alcuni utenti particolari, non esistenti nella realtà, ai cui è demandato il buon funzionamento del sistema: bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin: adm:x:3:4:adm:/var/log: lp:x:4:7:lp:/var/spool/lpd: sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mysql:x:27:27:mysql:/var/lib/mysql:/bin/bash rpc:x:32:32:rpc portmap user:/:/bin/false sshd:x:33:33:sshd:/: gdm:x:42:42:gdm:/var/state/gdm:/bin/bash pop:x:90:90:pop:/: nobody:x:99:99:nobody:/: 28

Gruppi Le informazioni inerenti i gruppi sono raccolte nel file: /etc/groups gruppo:parola_d'ordine_cifrata:gid:lista_di_utenti gruppo parola_d'ordine_cifrata gid lista_di_utenti nome del gruppo password del gruppo, di solito non si usa Group ID, identificativo numerico del gruppo lista di utenti appartenenti al gruppo, separati da ',' 29

Gruppi groupadd [opzioni] nomegruppo opzioni: -g gid imposta il numero gid del gruppo groupdel [opzioni] nomegruppo groupmod [opzioni] nomegruppo opzioni: -g gid imposta il numero gid del gruppo -n nome imposta il numero nome del gruppo 30

Trucchi Utente con funzione specifica: Creare un utente fittizio, con o senza parola d'ordine, al quale si associa un programma o uno script, al posto di una shell. La directory corrente nel momento in cui il programma o lo script viene eseguito è quella indicata come directory home (directory personale). L'esempio seguente mostra un record del file /etc/passwd preparato in modo da permettere a chiunque di eseguire il programma (o lo script) /usr/local/bin/ciao partendo dalla posizione della directory / tmp/ (il numero UID 505 e GID 100 sono solo un esempio): ciao::505:100:ciao a tutti:/tmp:/usr/local/bin/ciao 31

Trucchi Gruppo di utenti con lo stesso numero UID: ogni utente avrebbe un proprio nome e una parola d'ordine per accedere al sistema, ma poi, tutti i file apparterrebbero a un utente immaginario che rappresenta tutto il gruppo. Segue un esempio del file /etc/passwd: tutti:*:1000:1000:gruppo di lavoro:/home/tutti:/bin/sh alfa:34gdf6r123455:1000:1000:gruppo di lavoro:/home/tutti:/bin/sh bravo:e445gsdfr2124:1000:1000:gruppo di lavoro:/home/tutti:/bin/sh charlie:t654df7u72341:1000:1000:gruppo di lavoro:/home/tutti:/bin/sh Se esiste la necessità o l'utilità si possono assegnare anche directory personali e shell differenti. 32

Trucchi Un gruppo per ogni utente: ogni volta che si crea un nuovo utente, si crea anche un gruppo con lo stesso nome e, possibilmente, lo stesso numero (UID = GID). Questa tecnica si combina con una maschera dei permessi 002. I file vengono creati in modo predefinito con i permessi di lettura e scrittura, sia per l'utente proprietario che per il gruppo, mentre si esclude la scrittura per gli altri utenti, in questo modo si può concedere a un altro utente di poter partecipare al proprio lavoro: basta aggiungere il suo nome nell'elenco degli utenti associati al proprio gruppo. Si possono creare degli altri gruppi aggiuntivi, in base alle attività comuni e aggiungere a questi gruppi i nomi degli utenti che di volta in volta partecipano a quelle attività. Naturalmente, i file da condividere all'interno dei gruppi devono appartenere a questi stessi gruppi. 33

Trucchi - esempio Vediamo, per esempio, cosa sia necessario fare per gestire un gruppo di lavoro per un ipotetico progetto «alfa»: 1 la maschera dei permessi predefiniti (umask) degli utenti che faranno parte del progetto sia pari a 002, per consentire ogni tipo di accesso ai file e alle directory che verranno create da parte degli utenti del gruppo del progetto. 2 Si crea il gruppo alfa e a questo si abbinano tutti gli utenti che dovranno fare parte del progetto. Il record del file /etc/group potrebbe essere simile a quello seguente: alfa::101:tizio,caio,sempronio 3 Si crea una sorta di directory home per i file del progetto, con eventuali ramificazioni: # mkdir /home/progetti/alfa # mkdir /home/progetti/alfa/... 34

Trucchi - esempio 4 Si assegna l'appartenenza di questa directory (ed eventuali sottodirectory) al gruppo di lavoro. # chown -R root.alfa /home/gruppi/alfa 5 Ciò che viene creato all interno del gruppo di directory deve appartenere al gruppo delle directory stesse: # chmod -R 2775 /home/progetti/alfa tutte le directory del progetto ottengono l'attivazione del bit GID, attraverso il quale, in modo predefinito, i file creati al loro interno apparterranno allo gruppo delle directory stesse. 35

Ringraziamenti Intendo ringraziare: Gianluca Storti Paolo Poletti Daniele Giacomini Ellen Siever, Stephen Spainhour, Stephen Figgins, Jessica P. Hekman dai cui documenti ed opere ho tratto questi lucidi MATTEO VICINI 36