Accounts

From I.N.F.N. Wiki
Revision as of 14:20, 16 October 2015 by Terreni (talk | contribs) (Cambio del gruppo)

Jump to: navigation, search

User Pisa, 30 Novembre 2011 (CET) (G. Terreni)

Note sulla creazione di account sui mezzi di calcolo della sezione



Queste note prescindono dalla verifica amministrativa del diritto del richiedente ad avere accesso alle risorse di calcolo di Sezione


Introduzione

Al momento in sezione sono presenti diversi ambienti informatici con metodi di autenticazione diversi e indipendenti:

  • account AFS / kerberos e accesso al Sistema Informativo INFN Nazionale (AAI)
  • account dominio Windows
  • accesso a GRID

Di seguito sono descritte le operazioni da eseguire per creare un account AFS/kerberos e AAI

Per un sommario dei comandi per la gestione dei volumi AFS consultare questa pagina
in alternativa al sito della documentazione OpenAFS

Preparazione account AFS / kerberos e AAI

Prima di procedere e' necessario avere i seguenti dati del richiedente:

  1. Cognome e Nome
  2. Codice Fiscale
  3. Gruppo informatico primario


Si decide lo username di 8 caratteri massimo.
Anche se i nuovi sistemi supportano username piu' lunghi, sia per continuita' con il passato sia per evitare eventuali problemi, e' consigliabile attenersi a questa regola.

Si verifica che lo username scelto non sia gia' presente in AAI.
Poiche' INFN AAI richiede che lo username sia unico a livello nazionale, e' necessario verificare che qualche altra sezione non lo abbia gia' inserito in AAI; per fare questa verifica ci si collega con protoserv2 (vedi istruzioni) con il comando:

ssh -p 57847 protoserv2@godiva.infn.it
> SHO all:username

se lo username e' gia' in uso vengono ritornati i dati relativi ad esso, altrimenti il seguente messaggio di errore:

line nn: ERROR - entry not found

Si inserisce lo username in AAI
L'inserimento dello username in AAI si effettua con il seguente comando:

> ADD pi.infn.it:username:CodiceFiscale:Nome:Cognome:kerberos_principal:email_canonico

per esempio:
> ADD pi.infn.it:terreni:TRRRGPP59S23V454K:Giuseppe:Terreni:terreni@PI.INFN.IT:giuseppe.terreni@pi.infn.it

Creazione account locale
Login su galilinux come root e poi si prende il token di admin con il comando:

galilinux ~ # klog admin
password: xxxxxxxx

galilinux ~ # cd /afs/pi.infn.it/project/local/

A questo punto nel file passwd.all si cerca l'ultimo userid (UID) usato e il successivo lo si assegna al nuovo utente.
Si edita passwd.all e si aggiunge una riga con il nuovo username:

username:x:UID:GUID:Nome COGNOME:/home/username:/bin/tcsh

dove GUID e' il valore numero del gruppo informatico principale al quale lo username appartiene.

Si edita group.all e si inserisce lo username nel gruppo cui appartiene ed eventualmente nei gruppi secondari

gruppo:!:nnnn:user1,user2,user3,...,username

dove gruppo e' il nome del gruppo, nnnn il suo valore numerico (GUID) e user1,..,username gli utenti del gruppo

Si edita infine il file /afs/pi.infn.it/project/local/mail/userdb e si inserisce la nuova entry per l'alias di posta
secondo il formato:

username nome.cognome@pi.infn.it


A questo punto si lancia il comando:

galilinux ~ # /usr/local/lxmng/make_passwd

Questo genera i file /etc/passwd e /etc/group per galilinux (sulle altre macchine saranno generati automaticamente all'ora successiva)
Per vedere le informazioni del nuovo account dare il comando:

galilinux ~ # id username

Generazione account e credenziali AFS / Kerberos

A questo punto siamo pronti per la generazione vera e propria dell'account posizionandoci in:

galilinux ~# cd /root/utils/creazione

ed eseguendo lo shell script

galilinux ~ # ./crea.sh usename UID group GUID expiration-date

dove UID e GUID sono gli identificativi numerici restituiti dal comando precedente "id username"
e l' expiration-date e' la data di scadenza dell'account nel formato dd/mm/yyyy.
Mentre i campi username UID group GUID sono obbligatori il campo expiration-date e' facoltativo
e se non e' specificato si assume per default la data del 31/12/2037.

Lo script richiede per prima cosa di immettere la password di amministratore di kerberos;
successivamente viene chiesta la password dell'account da creare (ripetuta due volte).

Al termine della procedura l'account e' pronto per essere rilasciato all'utente.

Per esempio il comando:

galilinux ~ # ./crea.sh bianchi 9090 cms 1023 31/03/2012

creera' l'account bianchi appartenete al gruppo cms con scadenza al 31 marzo 2012.

Generazione account WINDOWS

La generazione dell'account nel dominio Windows, quando richiesto, viene fatta utilizzando l'interfaccia
standard del sistema Windows.
Si assegna lo stesso username e la stessa password AFS/kerberos (anche se sono indipendenti l'una dall'altra).

Consegna delle credenziali dell'account all'utente

Una volta generati gli account e verificato che tutto funziona regolarmente, si predispongono due documenti:

1. Credenziali dell'account (solo AFS/kerberos) oppure (AFS/kerberos e Windows)
2. Documento di assunzione di responsabilita' (Presa d'atto)

Il primo, da rilascare a l'utente, contiene i dati dell'account (username, password,...) e delle brevi raccomandazioni sul corretto utilizzo dello stesso.
Il secondo contiene l'assunzione di responsabilita' e deve essere firmato dall'utente e conservato dal Servizio Calcolo.

Esempi di operazioni comuni sulla gestione degli account

Di seguito alcune note sulle piu' comuni operazioni che possono essere richieste nella gestione degli account.

Reload della cache del file delle password

Occasionalmente puo' essere necessario fare un refresh/reload del file /etc/passwd nella cache
per rendere immediatamente disponibili alcuni tipi di correzioni effettuate
(per es. errore nella indicazione della login shell).
A questo scopo dare il comando:

     /etc/init.d/nscd restart


oppure

     nscd -i passwd



Cambio password

Fare login su afs1.pi.infn.it come root e digitare i seguenti comandi:

     afs1 ~ # kadmin.local
kadmin.local: cpw -pw xxxxxxx username
kadmin.local: exit
afs1 ~ #


dove xxxxxxxx e' la nuova password per l'account username

Cambio dell'expiration date

Fare login su afs1.pi.infn.it come root e digitare i seguenti comandi:

     afs1 ~ # kadmin.local
kadmin.local: modprinc -expire "mm/gg/aaaa hh:mm:ss CET" username
kadmin.local: exit
afs1 ~ #


dove "mm/gg/aaaa hh:mm:ss CET" e' la nuova expiration date per l'account username

Cambio dello username

Per cambiare (rimominare) lo username di un utente deve essere fatta la seguente serie di operazioni.
Supponiamo per esempio di dover rinominare l'account rossi in bianchi.

     1. cambiare la entry rossi in bianchi nel file /afs/pi.infn.it/project/local/passwd.all
2. cambiare la entry rossi in bianchi nel file /afs/pi.infn.it/project/local/group.all
3. cambiare la entry rossi in bianchi nel file /afs/pi.infn.it/project/local/mail/userdb
4. cambiare la entry rossi in bianchi nel file /etc/passwd del mailserver
5. cambiare la entry rossi in bianchi nel file /etc/group del mailserver
6. rinominare la directory rossi in bianchi nella /home/..."" del mailserver
7. rinominare il volume AFS (home directory dell'account) con il comando
vos examine user.rossi
vos rename user.rossi user.bianchi
8. rimuovere il mount point del vecchio volume con il comando
fs rmmount -dir /afs/pi.infn.it/user/rossi
9. creare il nuovo mount point per il volume rinominato con il comando
fs mkmount -dir /afs/pi.infn.it/user/bianchi -vol user.bianchi
10. rimuovere il 'principal kerberos' del vecchio username con il comando
kadmin.local delprinc rossi
11. aggiungere il nuovo kerberos principal con il comando
kadmin.local addprinc -pw xxxxxxx -expire "mm/gg/aaaa hh:mm:ss CET" bianchi
12. assegnare al nuovo username gli stessi permessi AFS (appartenenza ai gruppi) del vecchio con il comando
pts mem rossi (per vedere i vecchi gruppi di appartenenza)
pts delete rossi
pts createuser bianchi -id UID (dove UID e' l'UID del vecchio account rossi)
pts adduser -user bianchi -group 'i vecchi gruppi di appartenenza'
13. dare il comando /usr/local/lxmng/make_passwd
14. cambiare il link public_html nella home dell'utente in modo che rifletta il nome della nuova home



Cambio del gruppo

Per cambiare il gruppo di un utente devono essere fatte le seguenti operazioni.

Fare login su galilinux.pi.infn.it come root e prendere il token afs con il comando:

     galilinux ~# klog admin

Cambiare directory con il comando:

     galilinux ~# cd /root/utils/creazione

eseguire lo script:

     galilinux ~# ./cambiagruppo.sh username uid new_group new_groupid old_group

andare sul mailserver e cambiareil gruppo in /etc/passwd e in /etc/group

sempre sul mail server cambiare il gruppo a tutto l'albero della home dell'utente.

Creazione nuovo gruppo

Fare login su galilinux.pi.infn.it come root e digitare i seguenti comandi:

     galilinux ~# klog admin         (per prendere il token AFS)

editare quindi /afs/pi.infn.it/project/local/group.all ed inserire il nuovo gruppo

     galilinux ~ # pts creategroup -name nomegruppo -id -abcd

dove nomegruppo e' il nome del nuovo gruppo e -abcd l'identificativo numerico (GIUD) dello stesso.