RICHIEDERE ED OTTENERE I CERTIFICATI

 


La richiesta di un certificato e' un'operazione complessa in quanto richiede la creazione di un file contenente le informazioni dell'host per il quale si richiede il certificato. Se si prova ad editare un file contenente tale richiesta si notano sequenze apparentemente senza senso di caratteri. In realta' queste sequenze contengono informazioni cifrate sull'host per il quale si richiede il certificato. Modificare tali sequenze vorrebbe dire distruggere la perfetta corrispondenza tra le informazioni cifrate e le informazioni dell'host stesso, come nome, dominio, ... . La modifica manuale dei file di certificazione puo' provocare malfunzionamenti nei meccanismi di sicurezza e di autenticazione.

A danno della semplicita', ma sicuramente a favore di maggiore sicurezza, il toolkit di Globus sfrutta meccanismi altamente sofisticati e complicati per garantire sicurezza. Questi meccanismi si appoggiano sull'infrastruttura GSI (Grid Security Infrastructure). E' fortemente consigliato pertanto eseguire attentamente le operazioni necessarie alla certificazione.

Richiedere un certificato per un host vuol dire richiedere la certificazione di una macchina che dovrà avere funzionalità di server. E' importante sottolineare cio' per comprendere che non e' assolutamente necessario richiedere la certificazione di una unita' client che viene sfruttata dagli utenti che hanno bisogno di utilizzare gli strumenti del Toolkit Globus. In tale contesto saranno solo gli utenti gli unici obbligati a possedere un certificato. Schematicamente la certificazione avviene in questo modo:

L'utente che vuole utilizzare Globus sfrutta i comandi messi a disposizione del Toolkit per effettuare delle ricerche, sottomettere Job, ... interrogando il Server che viene specificato nel comando stesso. E' pertanto necessario autenticarsi al server. Cio' puo' essere fatto mediante la spedizione del proprio certificato. Il meccanismo di sicurezza realizzato dal GSI richiede la certificazione anche del server pertanto anche il server deve spedire il proprio certificato al client.
In dettaglio, il Client deve possedere un certificato di "User" che non e' assolutamente vincolato alla macchina fisica su cui sta operando. Sulla stessa macchina potrebbero lavorare altri utenti ma non deve essere reso possibile l'accesso agli strumenti Globus agli utenti non autorizzati.
Viceversa, il Server deve possedere i certificati di "Host" perche' virtualmente e' una macchina utilizzata non da "utenti" ma da un "amministratore" che e' unico ed e' il gestore della macchina. Una differenza importante riguarda il TIPO di certificati di cui deve poter disporre un SERVER. Esistono infatti certificati per:

Ciascun certificato rende il Server "valido" per alcune applicazioni ma non per altre. Ad esempio per poter rispondere a richieste riguardanti GRAM per la sottomissione di Job, GridFTP per il trasferimento dei file... è necessario un certificato di Host. Quando si vuole rendere possibile richiedere informazioni riguardanti il servizio MDS e' necessario che il Server possegga il certificato LDAP oltre a quello di Host.

 

RICHIEDERE UN CERTIFICATO PER UN 'HOST'

La macchina HOST e' un server e si puo' immaginare sia utilizzata da un unico amministratore: l'utente ROOT. Soltanto avviando la macchina come utente ROOT e' possibile fare richiesta di un certificato di Host. Entrati come ROOT e' quindi possibile digitare il seguente comando:

                "grid-cert-request -service host -host <hostname.domain>"

N. B.: Ricordarsi di sostituire <hostname.domain> con il nome COMPLETO della propria macchina!!!

Il comando in questo caso specifica che si sta richiedendo un certificato come HOST. Se il comando va a buon fine, verra' prodotto il file

                "hostcert_request.pem"

nella directory

                "$GLOBUS_LOCATION/etc/grid-security"

Questo file contiene le informazioni sull'host di cui si sta richiedendo la certificazione.

Il file "usercert_request.pem" NON VA MODIFICATO e va inviato alla Certification Authority. Il messaggio e-mail che deve essere spedito deve contenere ESCLUSIVAMENTE il contenuto del file "usercert_request.pem". Attenzione che tale file NON deve essere un ALLEGATO. Si consiglia di creare un nuovo messaggio e incollare il contenuto del file direttamente. NON deve essere specificato NESSUN OGGETTO. L'email deve essere inviata all'indirizzo:

                "ca@globus.org"

N. B. : La CA garantisce di rispondere entro 2 giorni lavorativi. Tuttavia e' stato possibile riscontrare tempi di risposta anche molto brevi.

Una volta ricevuta la risposta della CA procedere all'installazione del certificato ottenuto.

 

INSTALLAZIONE DEL CERTIFICATO DELL'HOST OTTENUTO DALLA CA

La Certification Authority risponde alla richiesta di certificazione mediante un messaggio e-mail contenente il certificato firmato dalla stessa CA. E' consigliabile salvare il messaggio e-mail senza editarne il contenuto. ll file salvato deve essere definito:

                "hostcert.pem"

e va salvato nella directory

                "/etc/grid-security"

Non cercare tale directory nella GLOBUS_LOCATION, bensi' partire da "/" come indicato.

N. B. : Questa directory non è accessibile (soprattutto in scrittura) se non si è l'utente ROOT. Ciò ha senso in quanto soltanto l'amministratore di sistema puo' modificare la configurazione dei certificati dell'host.

 

RICHIEDERE UN CERTIFICATO PER UN 'SERVER LDAP'

Il Server LDAP e' il Server che deve essere in grado di rispondere alle richieste dell'ambiente MDS. Il meccanismo di autenticazione e' analogo a quello indicato nella figura in alto. C'e' un'unica sottile differenza che riguarda la possibilita' di accettare le richieste da parte di Client ANONIMI. Alcuni comandi del Toolkit di Globus permettono infatti, se pur con funzionalita' limitate, l'accesso ad utenti non qualificati; ne sono esempio alcuni comandi relativi all'MDS.

La richiesta di un certificato LDAP puo' essere effettuata dall'utente ROOT della macchina Server mediante il comando:

            "grid-cert-request -service LDAP -host <hostname.domain>"

N. B.: Ricordarsi di sostituire <hostname.domain> con il nome COMPLETO della propria macchina!!!

In caso di successo, il comando creera' il file

            "ldapcert_request.pem"

nella directory

            "$GLOBUS_LOCATION/etc/grid-security/ldap"

Questo file va spedito NON in ALLEGATO mediante un messaggio e-mail SENZA OGGETTO alla Certification Authority il cui indirizzo e':

            "ca@globus.org"

N. B. : La CA garantisce di rispondere entro 2 giorni lavorativi. Tuttavia e' stato possibile riscontrare tempi di risposta anche molto brevi.

Una volta ricevuta la risposta della CA procedere all'installazione del certificato ottenuto.

 

INSTALLAZIONE DEL CERTIFICATO DEL SERVER LDAP OTTENUTO DALLA CA

Come gia' spiegato a proposito dell'installazione di un certificato per l'host, la Certification Authority risponde alla richiesta di certificazione mediante un messaggio e-mail contenente il certificato firmato dalla stessa CA. E' consigliabile salvare il messaggio e-mail senza editarne il contenuto. ll file salvato deve essere definito:

                "ldapcert.pem"

e va salvato nella directory

                "/etc/grid-security/ldap"

Non cercare tale directory nella GLOBUS_LOCATION, bensi' partire da "/" come indicato.

N. B. : Questa directory non è accessibile (soprattutto in scrittura) se non si è l'utente ROOT. Ciò ha senso in quanto soltanto l'amministratore di sistema puo' modificare la configurazione dei certificati dell'host.

 

ISCRIVERE UN NUOVO "USER" AL PROPRIO SERVER

Globus prevede che utenti remoti richiedano l'esecuzione dei comandi da macchine conosciute soltanto grazie ai certificati. L'utente remoto che chiede di sottoporre un Job ad un server non necessita di un account sulla macchina server stessa. Mediante il proprio PROXY l'utente mette a disposizione del server il proprio certificato per essere riconosciuto. La macchina server deve soltanto SAPERE che c'e' un'utente remoto che potrebbe richiedere una connessione ed in tal caso accettarla. Se fosse necessario creare un nuovo account per ciascun utente che vuole connettersi alla macchina server, sarebbe complicato per l'amministratore di sistema (server) gestire gli accessi ed i diritti di utilizzo. All'utente remoto non è mai permesso l'accesso diretto alla macchina server (cosa che presumibilmente sarebbe possibile mediante la creazione di un account privato). Per facilitare il lavoro agli amministratori di sistema e rafforzare i meccanismi di sicurezza per riconoscere gli utenti e' necessario soltanto configurare un file contenente l'elenco delle SUBJECT STRING degli utenti ai quali si vuole permettere l'utilizzo dei comandi Globus e dello USERNAME. Il file in questione e' il:

            "grid-mapfile"

che si trova nella directory

            "/etc/grid-security"

L'utente che vuole essere iscritto in questo file per poter essere riconosciuto deve fornire la propria SUBJECT STRING. Un esempio di tale stringa puo' essere il seguente:

            "/O=Grid/O=Globus/OU=domain/CN=Nome Cognome"

Deve inoltre fornire il proprio USERNAME.

Si rimanda alla Certificazione degli USER per i dettagli.

N. B. : La SUBJECT STRING coincide con il DISTINGUISHED NAME.

L'amministratore di sistema puo' iscrivere tale utente aggiungendo manualmente una riga nel "grid-mapfile". Tuttavia tale metodo e' sconsigliato onde evitare errori. E' meglio utilizzare i comandi forniti dal Toolkit di Globus. Per aggiunere uno USER occorre digitare:

            " grid-mapfile-add-entry -dn "SUBJECT STRING" -ln "USERNAME" "

N. B. : Ricordarsi di sostituire la Subject String e lo Username con i dati forniti dall'utente da iscrivere.

Se il comando va a buon fine, nel "grid-mapfile" verra' aggiunta una riga simile alla seguente:

            "/O=Grid/O=Globus/OU=domain/CN=Nome Cognome"     USERNAME

N. B. : Il "grid-mapfile" e' un file di configurazione di Globus ed e' necessario essere ROOT per poterlo modificare (anche utilizzando il comando "grid-mapfile-add-entry").

 

Configurazione di GlobusHome Page di Grasso FabrizioMappa del Sito (Sommario)Installazione del Replica Catalog