Differenze tra le versioni di "GARRCS:GARR-TCS-4"

Da WIKI IDEM GARR.
Jump to navigation Jump to search
(Pagina sostituita con '<div style="border: 2px solid #FFBF00; background-color: #FFF8DC; padding: 20px; border-radius: 8px; font-size: 3em; width: 80%; margin: 0 auto;"> '''Attenzione:''' La doc...')
Etichetta: Sostituito
 
(232 versioni intermedie di 4 utenti non mostrate)
Riga 1: Riga 1:
==GARR Certification Service==
+
<div style="border: 2px solid #FFBF00; background-color: #FFF8DC; padding: 20px; border-radius: 8px; font-size: 3em; width: 80%; margin: 0 auto;">
GARR CS (Certification Service) gestisce il servizio GEANT TCS (Trusted Certificate Service) per la comunità della ricerca italiana.
+
'''Attenzione:''' La documentazione del servizio GARR CS è stata trasferita.  
 
+
Puoi consultare la nuova versione della pagina al seguente link: [https://tcs-docs.aai.garr.it/ https://tcs-docs.aai.garr.it/].
===Adesione===
+
</div>
Per la procedura di adesione vedi https://www.servizi.garr.it/cs.
 
 
 
===Supporto===
 
Per richieste di adesione, supporto, problemi tecnici e gestione degli account Admin scrivete a <[mailto:garr-ca@garr.it garr-ca@garr.it]>.
 
 
 
Per aprire un '''''Ticket''''' verso Sectigo: https://sectigo.com/support-ticket
 
 
 
====Mailing list TCS-GARR====
 
Per domande generali sull'uso della piattaforma, sui tipi di certificati, la loro creazione ed il loro uso utilizzate la mailing list <[mailto:tcs@garr.it tcs@garr.it]>.
 
 
 
L'iscrizione alla lista è a cura di GARR CS ed è riservata ai Registration Authority Officers e i Department Registration Authority Officers nominati da ogni organizzazione.
 
 
 
La lista viene utilizzata da GARR CS per inviare annunci sullo stato del servizio e per lo scambio di informazioni tra i partecipanti.
 
 
 
I partecipanti alla lista sono liberi di utilizzare e redistribuire le informazioni ricevute, ma non di rivelare l'identità o l'affiliazione della fonte delle informazioni senza prima aver ottenuto un permesso specifico dalla fonte stessa.
 
 
 
====Link utili====
 
 
 
*Per '''''scaricare la root intermediate di GEANT''''' è disponibile il seguente repository: https://crt.sh/?CAName=%25GEANT+Vereniging%25
 
 
 
*Per conoscere i metodi di '''''validazione DCV alternativi''''' è disponile il seguente articolo di Sectigo: https://support.sectigo.com/Com_KnowledgeDetailPage?Id=kA01N000000zFU9
 
*Come '''''generare una richiesta''''' CSR con OpenSSL: https://support.sectigo.com/Com_KnowledgeDetailPage?Id=kA01N000000zFU6
 
*Come creare un unico '''''file di certificato completo''''' includendo la Private Key: https://support.sectigo.com/Com_KnowledgeDetailPage?Id=kA03l00000117PB
 
*Come creare un file '''''PKCS#7''''', (.p7b) a partire dal formato .crt /.cer in Windows: https://support.sectigo.com/Com_KnowledgeDetailPage?Id=kA03l00000117Se
 
*'''Internal domain/server names''' (Reserved IP Addresses): https://support.comodoca.com/Com_KnowledgeDetailPageSectigo?Id=kA01N000000zFUB
 
 
 
===Documentazione Sectigo===
 
La documentazione Sectigo è disponibile in https://support.sectigo.com/Com_KnowledgeProductPage?c=Sectigo_Certificate_Manager_SCM
 
 
 
In particolare:
 
 
 
*''SCM - Sectigo® Certificate Manager Quick Start Guide'' è una guida rapida per iniziare a lavorare con il portale SCM
 
*''SCM - Sectigo Certificate Manager Administrator's Guide'' è la guida completa del portale SCM per Amministratori
 
*''SCM - Sectigo Certificate Manager REST API'' è la guida per interfacciarsi al sistema con le API REST
 
 
 
GEANT Wiki TCS 2020 FAQ: https://wiki.geant.org/display/TCSNT/TCS+2020+FAQ
 
 
 
===Configurazione iniziale (Quickstart)===
 
Se stai accedendo per la prima volta al nuovo servizio TCS (Sectigo Limited) è necessario leggere con attenzione le informazioni che seguono.
 
 
 
====Definizioni====
 
''SCM'' = <u>Sectigo Certificate Manager</u>, il nome del portale per la gestione dei certificati x.509
 
 
 
''MRAO'' = <u>Master Registration Authority Officer</u>, ruolo amministrativo di alto livello riservato ad ogni NREN che ha sottoscritto il contratto GEANT TCS. Per GARR il ruolo è affidato ai membri del Servizio GARR CS.
 
 
 
''RAO'' = <u>Registration Authority Officer</u>, ruolo amministrativo a livello di Organizzazione che permette la gestione di dipartimenti, domini, certificati e ruoli amministrativi afferenti a tale Organizzazione
 
 
 
''DRAO'' = <u>Department Registration Authority Officer</u>, ruolo amministrativo a livello di Dipartimento che permette la gestione di domini, certificati e ruoli amministrativi afferenti a tale Dipartimento. (opzionale)
 
 
 
====Primi passi====
 
 
 
#E' necessario inizializzare una '''chiave di cifratura''' per ogni Organizzazione e Dipartimento creato nel Portale SCM. Si tratta di una chiave Escrow (https://it.wikipedia.org/wiki/Key_escrow) e senza un'inizializzazione non sarà possibile richiedere certificati personali tramite la GUI del Portale stesso. Per procedere scegliere dal menù principale in grigio scuro la voce ''Settings'' e poi ''Encryption''. Selezionare la Organizzazione e premere il bottone [Inizialize Encryption]. Seguire le istruzioni a video e salvare la chiave in maniera sicura per eventuale uso futuro.
 
#Per iniziare a richiedere certificati SSL server è necessario creare almeno 1 dominio e validarlo (vedi la sezione "'''Gestione Dominii'''")
 
#Prima di richiedere un certificato EV (Extended Validation) leggere la sezione dedicata più sotto e considerare che la CA deve verificare il numero telefonico aziendale principale e pertanto è necessario che l'ufficio sia presidiato.
 
 
 
====Aggiornamenti importanti====
 
Durante il primo mese di utilizzo della nuova piattaforma abbiamo sperimentato alcuni problemi che hanno talvolta  impedito l'emissione dei certificati. Ecco un elenco delle più importanti scoperte e soluzioni:
 
 
 
*certificati bloccati in stato '''Applied''': verificare che il CAA record permetta a Sectigo l'emissione dei certificati ([https://www.entrustdatacard.com/products/categories/ssl-certificates/caa-tool on-line check)]
 
*errore in fase di approvazione richiesta "'''Please fill all empty required fields of organization/department'''": declinare la richiesta, modificare i privilegi di RAO e DRAO aggiungendo "''SSL auto-approve''" e sottomettere una nuova richiesta.
 
*errore in fase di richiesta certificato "'''Anchor Certificate address details are different!'''": ricreare una nuova CSR minimale usando il comando openssl <code>openssl req -nodes -newkey rsa:3072 -keyout myserver.key -out server.csr -subj "/C=IT/CN=mysubdomain.mydomain.com"</code>e sottomettere nuovamente
 
*'''obbligatorio''' mantenere "City" e '''raccomandato''' rimuovere i campi non necessari "Address1", "State or Province", "Postal Code" al passo '''3. Basic Info''' >> '''<u>Click here for advanced options</u>'''
 
*dopo aver installato un certificato su un server, '''controllare''' la configurazione della ''certificate chain'': [[GARRCS:GARR-TCS-4#Installazione%20SSL%20Certificate|Paragrafo >> Installazione SSL certificate]]
 
*'''Non è consigliato''' abilitare utenti con il bottone [''Add Idp User''] perché per l'attivazione è necessario l'intervento manuale di un ''MRAO'':
 
**non usare l'opzione se la Org non ha un Idp in IDEM,
 
**se si decide comunque di creare con [''Add Idp User''] poi scrivere a <garr-ca@garr.it> per l'attivazione,
 
**il modo migliore per accedere a SCM con Idp è creare l'utenza Admin con [''Add''] ed inserire in ''IdP Person Id'' il valore ePPN dell'utente.
 
*'''Status''' dei sistemi Sectigo e prossimi aggiornamenti pianificati: https://sectigo.status.io/
 
 
 
==Registration Authority Officer==
 
Ogni organizzazione deve indicare nel documento di adesione 2 persone a cui sarà assegnato da GARR CS il ruolo di Registration Authority Officer (RAO) all'interno del portale Sectigo.
 
 
 
===Attivazione dei primi 2 Registration Authority Officer (RAO)===
 
Dopo la ricezione della documentazione di Adesione il servizio GARR CS procederà sul portale SCM alla creazione della Organizzazione e contestualmente alla creazione degli account per i due RAO indicati.
 
 
 
Dato che il portale SCM non prevede meccanismi dinamici di attivazione degli account è necessario poter comunicare '''out of band''' le credenziali per i primi 2 RAO, che inoltre devono essere riconosciuti dal GARR CS.
 
 
 
Per il riconoscimento e la trasmissione sicura delle credenziali, i RAO dovranno '''inviare un messaggio messaggio di posta elettronica firmato e cifrato''' come sotto indicato.
 
 
 
Una volta ricevute le credenziali temporanee riceverete una mail di conferma e sarà possibile [[GARRCS:GARR-TCS-4#Accesso al Portale Sectigo Certificate Manager .28SCM.29|accedere al portale SCM]].
 
 
 
====Trasmissione password temporanea e identificazione====
 
La trasmissione della password temporanea deve avvenire con un testo criptato creato come indicato in '''Cifratura'''. L'identificazione avviene invece mediante firma digitale del messaggio di posta elettronica con cui viene trasmesso il testo criptato con le modalità indicate in '''Firma'''.
 
 
 
=====Cifratura=====
 
Accedere al sito https://keybase.io/encrypt e completare con i seguenti valori:
 
 
 
*<u>Recipient:</u> digitare "keybm" (Barbara Monticini) e selezionare come destinatario
 
*<u>Message to encrypt:</u> scrivere a vostra scelta una password temporanea con cui sarà attivata la vostra utenza
 
*<u>Bottone [Encrypt]</u> per eseguire la cifratura del messaggio
 
 
 
Copiare tutto il testo -----BEGIN PGP MESSAGE----- ... -----END PGP MESSAGE----- comprese la prima e l'ultima riga e incollarlo in un nuovo messaggio di posta.
 
 
 
=====Firma=====
 
A partire dal messaggio creato al punto precedente, per l'invio firmato potete procedere in due modalità:
 
 
 
#apporre una firma S/MIME con il vostro client di posta e il vostro certificato digitale che può essere:
 
##un certificato personale rilasciato da TCS Digicert. Poteti richiederli fino al 30 Aprile, vedi le istruzioni video per chi non li avesse ancora attivati: [[Media:Premium-digicert.mp4|Premium-digicert.mp4]]
 
##un certificato personale per la firma qualificata.
 
#creare un documento di testo in cui sia dichiarata la vostra identità e nomina al ruo di RAO, firmarlo digitalmente anche con servizi di firma remota e allegarlo al messaggio. Questa modalità è utile anche per evitare l'invalidazione della firma dovuta a server di posta che modificano i messaggi in uscita.
 
 
 
Inviare il messaggio con destinatario <[mailto:garr-ca@garr.it garr-ca@garr.it]> e oggetto "Attivazione Account RAO per <Nome> <Cognome>".
 
 
 
====Videoconferenza con il servizio GARR CS per l'identificazione e la consegna delle credenziali====
 
Nel caso in cui non fosse possibile seguire la procedura di attivazione mediante firma e cifratura, in via eccezionale può essere concordata l'attivazione via videconferenza, tenendo conto che la priorità sarà data alle attivazioni che seguono la procedura ordinaria.
 
 
 
Contattare <[mailto:garr-ca@garr.it garr-ca@garr.it]> per fissare una videoconferenza in cui presentarsi e identificarsi con documento di identità (è richiesta una '''videocamera''')
 
===Accesso al Portale Sectigo Certificate Manager (SCM)===
 
L'istanza del portale Sectigo Certificate Manager (SCM) per GARR è accessibile su:
 
 
 
https://cert-manager.com/customer/GARR
 
 
 
Al primo accesso il Portale proporrà il cambio password. Memorizzare la password in maniera opportuna.
 
 
 
===Aggiunta e configurazione di Registration Authority Officer (RAO)===
 
I RAO creati da GARR CS sono autorizzati ad aggiungere ulteriori RAO e DRAO.
 
 
 
Dal menù principale in grigio scuro scegliere la voce ''Admins''. La pagina presenta la tabella degli amministratori della vostra organizzazione (sia RAO che DRAO).
 
 
 
Inizialmente la tabella include soltanto i due RAO nominati nel documento di adesione.
 
 
 
Per inserire un nuovo amministratore premere il bottone [+ Add] (per il momento sconsigliamo l'aggiunta di amministratori con il bottone [Add IdP User]).
 
 
 
La maschera di creazione di un nuovo amministratore (Add New Client Admin) si suddivide in 3 colonne: ''Credentials'', ''Privileges'', ''Role.''
 
 
 
====CREDENTIALS====
 
Compilare almeno i campi obbligatori:
 
 
 
*''Login''
 
*''Email''
 
*''Forename''
 
*''Surname''
 
*''Password''
 
*''Confirm Password''
 
 
 
La password impostata per il nuovo amministratore dovrà essere comunicata out-of-band al collega il quale potrà in seguito accedere al portale SCM.
 
 
 
Una nota speciale per il campo ''IdP Person Id'' che è collegato all'autenticazione via SAML con la Federazione IDEM e va configurato solo se il vostro Ente partecipa alla Federazione e solo dopo aver configurato l'identity provider con le istruzioni riportate nell'apposita [[GARRCS:GARR-TCS-4#Configurazione SAML|sezione dedicata]].
 
 
 
====PRIVILEGES====
 
E' consigliabile assegnare sempre i primi 5 privilegi:
 
 
 
*''Allow creation of peer admin users''
 
*''Allow editing of peer admin users''
 
*''Allow deleting of peer admin users''
 
*''Allow DCV''
 
*''Allow SSL details changing''
 
 
 
'''Una nota speciale per gli ultimi 2 privilegi:'''
 
 
 
*''Allow SSL auto approve'': se non abilitato, le richieste di certificati fatte da questo RAO dovranno essere sempre approvate dai RAO creati da GARR CS.
 
*''WS API use only'': usare solo se il RAO che si vuole creare non è una persona, ma un utente ad hoc da utilizzare in programmi e script che consumino le API di Sectigo accessibili via Web Service. Se il controllo viene impostato a true il RAO non potrà accedere al Portale in modalità GUI.
 
 
 
====ROLE====
 
Dopo aver premuto su ''Expand All'' selezionare la casella indicante ll'opportuna ''Organization'' che si trova sotto a:
 
 
 
*+ ''RAO Admin - SSL''
 
*+ ''RAO Admin - Client Certificate''
 
*+ ''RAO Admin - Code Signing''
 
 
 
 
 
E' possibile assegnare al RAO tutti e 3 i ruoli oppure un sottoinsieme a seconda delle necessità. La configurazione può essere cambiata successivamente.
 
 
 
Per modificare un amministratore già creato in precedenza selezionare dalla tabella degli amministratori la radio button relativa e premere il bottone [Edit].
 
 
 
La maschera di modifica di un amministratore (Edit Client Admin) è sostanzialmente identica alla maschera di creazione nuovo amministratore.
 
 
 
La differenza riguarda la sezione della password in cui è presente il link ''Reset password''.
 
 
 
===Reset della password===
 
Il reset della password di un account RAO può essere fatto da un qualsiasi altro RAO della stessa ''Organization''. Dal menù ''Admins'' selezionare il nome dell'amministratore da modificare, premere il bottone [Edit] e seguire il link ''Reset password''. La nuova password dovrà essere comunicata out-of-band al collega.
 
 
 
==Gestione Dominii==
 
Per emettere certificati (sia a livello di Organizzazione che di Dipartimento) è prima di tutto necessario creare un dominio, delegarne la gestione alla propria organizzazione (e/o dipartimento) e validarlo. Vediamo come.
 
 
 
===Creazione dominio (sia ruolo RAO che DRAO)===
 
Dal menù principale selezionare ''Settings'', poi ''Domains'', poi ''Delegation'' e premere il bottone  [+ Add]''.''
 
 
 
Nella finestra che si apre inserire il dominio alla voce ''Domain'' e selezionare l'organizzazione o il dipartimento a cui delegare il dominio e premere il bottone [OK].
 
 
 
Di default tutti i tipi di certificati disponibili sono abilitati per il dominio, se si vuole disabilitarne alcuni eliminare la spunta dalla casella corrispondente.<blockquote>'''IMPORTANTE''' Ripetere i passaggi precedenti aggiungendo nuovamente il dominio prefisso da <code>*.</code> , ad esempio se avete creato il dominio <code>ente.org</code> , adesso dovrete creare <code>*.ente.org</code>.  </blockquote>Una volta creati i dominii, si deve attendere che le deleghe di gestione all'Organizzazione siano approvata dagli MRAO e che le deleghe di gestione al Dipartimento siano approvate dal RAO a cui il dipartimento afferisce. Il richiedente riceverà una notifica non appena la deleghe saranno state approvate.
 
 
 
'''Esempi pratici:'''
 
Problema: richiedere certificati per il dominio garr.it
 
Soluzione: creare i domini garr.it e *.garr.it -> attendere la delega del MRAO -> validare il dominio garr.it
 
 
 
Problema: assegnare al dipartimento "mioDept" il sotto dominio miodept.garr.it per richiedere certificati per il sotto dominio miodept.garr.it
 
Soluzione: creare i domini miodept.garr.it e *.miodept.garr.it -> attendere la delega del RAO -> la validazione è automatica
 
===Validazione dominio===
 
<blockquote>Per conoscere i metodi di validazione DCV è disponile il seguente articolo di Sectigo: https://support.sectigo.com/Com_KnowledgeDetailPage?Id=kA01N000000zFU9  </blockquote>Dal menù principale selezionare ''Settings'', poi ''Domains'', poi ''DCV'' (che sta per Domain Control Validation), selezionare il dominio da validare nella tabella  e premere il bottone [DCV] ''.''
 
 
 
Nella finestra che si apre selezionare il metodo di validazione del dominio. Le scelte possibili sono ''Email'', ''HTTP, HTTPS, CNAME'', a seconda della scelta sono presentati requisiti diversi:
 
 
 
*''Email'': selezionare l'indirizzo a cui Sectigo invierà il messaggio di controllo.
 
 
 
*''HTTP'': seguire le istruzioni che consistono nel creare un file txt contenente un codice generato da Sectigo e posizionarlo in una location '''well-known''' sul server web attivato sul dominio da validare.
 
*''HTTPS'': come per HTTP, ma la location sarà in HTTPS.
 
*''CNAME'': seguire le istruzioni che consistono nel creare un record DNS di tipo CNAME con il valore indicato sul dominio da validare.
 
 
 
Una volta scelto il metodo ed annotate le istruzioni premere il bottone [Submit] per avviare la validazione. Nella schermata successiva sarà possibile confermare la scelta premendo il bottone [OK], o cancellare la richiesta di validazione e ripartire da capo premendo il bottone [Reset]. Anche una volta chiusa la finestra di validazione si potrà cancellare la richiesta, selezionando nuovamente il dominio, premendo il bottone [DCV]  e poi [Reset] come già detto.<blockquote>'''IMPORTANTE''' I dominii con prefisso <code>*.</code> sono validati contestualmente al dominio a cui sono associati ma graficamente lo saranno con uno o più giorni di attesa in più rispetto al dominio principale a cui sono collegati. </blockquote>
 
 
 
==Emissione Certificati==
 
Quanto segue riguarda l'emissione di certificati tramite portale SCM da parte degli Admins, ovvero RAO e DRAO.
 
 
 
Prima di procedere con la richiesta di certificati ''GEANT EV SSL'' e ''GEANT EV Multi-Domain'' consigliamo di consultare la sezione dedicata più sotto.
 
 
 
Per poter richiedere certificati ''GEANT IGTF Multi Domain'' (grid) è necessario modificare all'interno di Settings, Organizations, Edit il campo "Secondary Organization Name" prestando attenzione che contenga solo caratteri ASCII e che sia identico al campo O eventualmente usato in precedenza per i certificati grid con Digicert (in caso di dubbio consultare il portale Digicert per controllo). <u>Dato che il subject dei certificati grid è usato come "username" è fondamentale che questo rimanga inalterato per non causare problemi di accesso alla grid per gli utenti.</u> Seguire qui sotto le istruzioni specifiche.
 
 
 
===Richiesta SSL Certificate ([https://support.sectigo.com/Com_KnowledgeDetailPage?Id=kA01N000000rfS7 What is a CSR?])===
 
Dal menù principale selezionare ''Certificates'', poi  ''SSL Certificates'' e premere il bottone [+Add].
 
 
 
Nella finestra che si apre (Request New SSL Certificate) si deve scegliere la modalità di creazione tra:
 
 
 
*''Manual creation of CSR'': creare la private key e la CSR (Certificate Submission Request) in locale e copiare la CSR sul form della schermata successiva.
 
*''Auto generation of CSR'': la CSR e la private key sono create sul portale. (<u>Modalità non attivabile</u>)
 
*''Auto generation of CSR with auto installation'': riguarda le organizzazioni che si avvalgono dei Network Agents --- vedi documentazione Sectigo.
 
*''Auto generation of CSR in Azure Key Vault'': riguarda le organizzazioni che hanno configurato la Azure Key Vault.
 
 
 
====Manual creation of CSR====
 
Una volta selezionata la modalità ''Manual creation of CSR'', premere il bottone [Next >], incollare la CSR nel form della nuova schermata e premere il bottone [Next >]. Per creare la CSR e la relativa chiave potete utilizzare il seguente comando openssl:   
 
 
 
openssl req -nodes -newkey rsa:3072 -keyout myserver.key -out server.csr -subj "/C=IT/CN=mysubdomain.mydomain.com"
 
 
 
Nella schermata successiva vanno inserite le informazioni necessarie all'emissione. Una volta selezionati ''Organization'' e ''Department'' (default "none"), va scelto il '''''Certficate Type:''''' selezionare ''GEANT OV SSL'' per un certificato SSL per un solo nome di dominio o ''GEANT OV Multi-Domain'' per aggiungere SAN (Subject Alternative Names). <blockquote><u>'''Importante'''</u>: nei certificati ''GEANT OV SSL'' viene aggiunto in automatico un Subject Alternative Names che riporta il valore del CN ed eventualmente la versione con prefisso www. . Per questo motivo consigliamo di richiedere certificati ''GEANT OV Multi-Domain'' anche quando la richiesta presenta un solo fqdn.</blockquote>Completare la richiesta indicando il periodo di validità in ''Certificate Term'', il ''Server Software'' che determinerà il formato in cui scaricare il certificato ed eventuali ''Subject Alternative Names'' nel caso si stia richiedendo un certificato ''GEANT OV Multi-Domain''.
 
[[File:Advanced options.png|alt=Aprire le impostazioni avanzate|miniatura|254x254px|Aprire le impostazioni avanzate|nessuno]]
 
<u>'''Importante'''</u>: consigliamo di rimuovere i campi Postal Code, Address e State dal certificato. <u>Il campo City non va rimosso.</u>
 
 
 
Nella schermata successiva ci verrà richiesto se abilitare o meno il rinnovo automatico, ''Enable auto renewal of this certificate'', e quanti giorni prima iniziare il processo.
 
 
 
====Certificati Extended Validation (''GEANT EV SSL'' e ''GEANT EV Multi-Domain)''====
 
Nonostante questo tipo di certificato possa essere richiesto attraverso il modulo standard di richiesta certificati vi preghiamo di considerare la possibilità di validare a priori l'emissione dei certificati EV per la vostra Organizzazione grazie al meccanismo chiamato ''EV Anchor''.
 
 
 
Come nei precedenti contratti TCS ricordiamo che il tipo EV richiede, per l'emissione di un certificato, un livello di validazione molto alto e questo può creare lunghi tempi di attesa. ''EV Anchor,'' una volta ottenuta'','' permette di velocizzare la validazione dei successivi certificati EV creando appunto un'ancora riutilizzabile dall'Organizzazione. ''EV Anchor'' ha validità di un anno.
 
 
 
<u>Cosa succede se non sfrutto il meccanismo ''EV Anchor''?</u> Per ogni nuova richiesta di certificato EV si dovrà contattare il team di validazione Sectigo attraverso il sistema di ticketing https://sectigo.com/support-ticket.
 
 
 
<u>La mia organizzazione vuole attivare ''EV Anchor'', cosa dobbiamo fare?</u> Stabilire l'elenco dei domini per i quali il vostro Ente è interessato a ottenere certificati EV e assicurarsi di aver creato i domini all'interno del portale SCM. Per capire in cosa consiste la validazione EV consultare i documenti:  [https://support.sectigo.com/Com_KnowledgeDetailPage?Id=kA01N000000zFOr KB - EV Certificate Validation Checklist] e [https://support.sectigo.com/articles/Knowledge/EV-Certificate-Validation-Checklist-1527076098137?retURL=%2Fapex%2FCom_KnowledgeWeb2Casepagesectigo&popup=false EV Certificate Validation Checklist]. In seguito contattare <[mailto:garr-ca@garr.it garr-ca@garr.it]> per gli ulteriori passaggi.
 
 
 
====Certificati ''GEANT IGTF Multi Domain (grid)''====
 
Durante la richiesta di certificati ''GEANT IGTF Multi Domain'' arrivati al punto "3. Basic info" selezionare il link <u>Click here to hide advanced options</u> e spuntare il check '''Remove''' affinché resti deselezionato solo ''City.''
 
 
 
===Richiesta Client Certificate via SCM (aggiornato il 11.5.2020)===
 
La richiesta di Client Certificate da parte degli Admin via portale SCM è piuttosto scomoda e soprattutto non scabile per un numero alto di certificati. La '''soluzione consigliata''' è la richiesta via autenticazione federata con SAML (vedi paragrafo successivo).
 
 
 
Per richiedere un Client Certificate via SCM per un membro della propria organizzazione selezionare Certificates, poi Client Certificates e premere il bottone [+Add].
 
 
 
Nella finestra che si apre devono essere indicati o confermati:
 
 
 
*Organization e Department,
 
*alla voce Domain va selezione il dominio su cui emettere il certificato,
 
*in Email Address va inserita la parte locale (a sinistra della @domain) dell'indirizzo di posta che sarà associato al certificato,
 
*in Common Name va inserito il nome completo dell'utente,
 
*in First Name il nome proprio ed in Last Name il cognome.
 
*in SecretID impostare un valore specifico per questo utente che dovrà essere successivamente trasmesso al collega.
 
 
 
Una volta terminato l'inserimento premere il bottone [OK].
 
 
 
Prima di proseguire accertarsi di aver già attivato il <u>Self-Enrollment</u> per i certificati personali in ''Settings'', ''Organizations'', [Edit], TAB ''Client Certificates'', segno di spunta alla voce ''Self-Enrollment'' ed aver completato il campo ''Access Code'' con una stringa casuale fatta di numeri e lettere. Se la configurazione è stata portata a buon fine allora inviare una mail al collega che contenga il SecretID e la url da usare https://cert-manager.com/customer/GARR/smime.
 
 
 
Il collega che riceve la mail dovrà collegarsi alla url indicata e completare la richiesta con la propria email e il SecretID da voi indicato.
 
 
 
<!-- Selezionare la richiesta appena creata spuntando il radio button nell'elenco e premere il bottone [Certificates]. Nella finestra che si apre premere il bottone [Send Invitation]. Si aprirà un'ulteriore finestra dove deve essere indicato il Certificate Type ed il periodo di validità, Term, da 1  a 3 anni. I certificati di tipo GEANT IGTF-* sono per uso GRID, mentre per emettere un normale certificato client per uso personale va selezionato GEANT Personal Certificate, che è anche il default. Una volta premuto il bottone [OK], l'utente riceverà una mail di invito da parte di Sectigo contenente un link dove potrà scaricare il certificato in formato P12 dopo aver indicato la password con cui proteggere la private key del certificato e la passphrase per il suo utilizzo. -->
 
===Richiesta Client Certificate con portale self-service via SAML (aggiornato il 8.5.2020)===
 
Il portale per la richiesta self-service dei certificati personali (client certificate), personali IGTF (email e robot) è https://cert-manager.com/customer/garr/idp/clientgeant
 
 
 
L'accesso è possibile solo tramite autenticazione federata con [https://www.idem.garr.it IDEM] e previa configurazione dell'Identity Provider istituzionale.
 
 
 
====Configurazioni====
 
<u>Configurare la richiesta di ''certificati personali''</u>
 
 
 
*L'Identity Provider deve rilasciare un determinato insieme di attributi al Service Provider Sectigo. Dettagli nella sezione '''Configurazione SAML'''
 
*In SCM, selezionare ''Settings,'' ''Organizations,''  selezionare la propria organizzazione e premere il bottone [Edit]. Nella finestra di modifica editare il campo "Academic code (SCHAC Home Organization)" inserendoi il valore stabilito per l'attributo schacHomeOrganization rilasciato dall'Identity Provider. Generalmente coincide con il valore del dominio principale, o ''scope'', ma conviene coordinarsi con l'idp manager.
 
 
 
<u>Configurare anche la richiesta di ''certificati IGTF (grid)''</u>
 
 
 
*In SCM modificare all'interno di ''Settings,'' ''Organizations, Edit'' il campo "Secondary Organization Name" prestando attenzione che contenga solo caratteri ASCII e che sia identico al campo O eventualmente usato in precedenza per i certificati grid con Digicert (in caso di dubbio consultare il portale Digicert per controllo). ''Dato che il subject dei certificati grid è usato come "username" è fondamentale che questo rimanga inalterato per non causare problemi di accesso alla grid per gli utenti.''
 
*Aprire un ticket a <[mailto:garr-ca@garr.it garr-ca@garr.it]> per chiedere agli amministratori MRAO di far partire la validazione del "Secondary Organization Name"
 
 
 
====Richiesta client certificate tramite portale self-service====
 
 
 
#Andare su https://cert-manager.com/customer/garr/idp/clientgeant ed autenticarsi con il proprio IDP.
 
#Selezionare il tipo di certificato:
 
#*"GÉANT Personal Certificate" per i certificati personali standard (email signing/encryption e autenticazione client).
 
#*"GÉANT IGTF-MICS Personal" per certificati grid/IGTF personali.
 
#*"GÉANT IGTF-MICS-Robot Personal" per certificati grid/IGTF robot.
 
#Selezionare se si desidera che la chiave privata sia generata server-side o localmente:
 
#*Scegliere "Generate RSA" se si vuole un certificato con chiave privata generata server-side.
 
#*Scegliere "Generate ECC" se si vuole un certificato con chiave privata generata server-side e se si è interessati a testare i certificati ECC.
 
#*'''RACCOMANDATO''' Scegliere "Upload CSR" se <u>non</u> si vuole che la chiave privata sia generata server-side ma si vuole fornire una CSR generata in autonomia.
 
#**Di seguito trovate le istruzioni per la creazione della chiave e della CSR con  OpenSSL:
 
#***Creazione CSR con chiave RSA a 2048 bit: <code>openssl req -newkey rsa:2048 -keyout nome_cognome-key.pem -out nome_cognome-csr.pem -subj "/CN=Nome Cognome"</code>
 
#***Creazione CSR con chiave ECC a 256bit: <code>openssl req -newkey ec:<(openssl ecparam -name prime256v1) -keyout nome_cognome-key.pem -out nome_cognome-csr.pem -subj "/CN=Nome Cognome"</code>
 
#*Se si è scelto di generare il certificato server-side è necessario compilare il campo password con cui sarà cifrato il file PKCS#12 generato per voi.
 
#Premere "Submit" e accettare il contratto di licenza.
 
#In pochi istanti avverrà il download del certificato. Il formato dipende dalle scelte fatte durante la richiesta:
 
#*Con "Generate RSA/ECC", si riceverà un file PKCS#12 con nome '''certs.p12''' contenente chiave privata e certificato (file cifrato con la password scelta). Tale certificato potrà essere importato nel browser e nel client di posta con la funzione "Import Certificate" o similare.
 
#*Con "Upload CSR", si riceverà un file PEM-formatted chiamato '''certs.pem''' e contenente il certificato personale, il certificato intermedio della CA ed il root certificate di Sectigo . Per poter utilizzare il certificato per la firmare e crittografare i messaggi di posta elettronica è necessario creare un file in formato PKCS#12 contenente sia il certificato, sia la chiave. E' possibile farlo utilizzando OpenSSL con il seguente comando: <code>openssl pkcs12 -export -in certs.pem -inkey nome_cognome-key.pem -out nome_cognome.p12</code>
 
 
 
===Richiesta Code Signing Certificate===
 
Le richieste per questo tipo di certificato possono essere fatte '''solo''' con Browser '''IE'''.
 
 
 
Dal menù in grigio ''Certificates'' selezionare ''Code Signing Certificates'' e aggiungere il certificato con il bottone [Add].
 
 
 
Si aprirà una maschera che permette l'inserimento dei dati della persona che richiede il certificato code signing.
 
 
 
Selezionare la ''Organization'' e se necessario il ''Department'', il dominio da selezionare <u>deve coincidere con il dominio dell'indirizzo email</u> del richiedente, infine compilare l'indirizzo email e il nome del richiedente.
 
 
 
Il sistema invia subito un invito via email per la persona appena indicata.
 
 
 
La persona dovrà aprire la mail e usare il link nel browser IE.
 
 
 
In IE il richiedente troverà una form parzialmente già compilata e potrà così sottomettere la richiesta.
 
 
 
Dopo circa 10 minuti l'utente riceverà una nuova mail con il link per scaricare il certificato.
 
 
 
E' importante usare sempre IE sullo stesso pc usato in precedenza. Quando viene proposto lo scarico del certificato salvare con estensione .cer
 
 
 
Tramite le ''Opzioni Internet'' di IE importare il .cer e alla fine del processo il certificato code signing si troverà tra i certificati personali e potrà essere esportato in qualsiasi altro browser.
 
 
 
Istruzioni per esportare da IE: <nowiki>https://support.sectigo.com/Com_KnowledgeDetailPageFaq?Id=kA01N000000braq</nowiki>
 
 
 
===Installazione SSL Certificate===
 
Dopo aver installato il certificato <u>verificare</u> di aver configurato in maniera ottimale la ''certificate chain'' con uno dei seguenti 2 metodi:
 
 
 
#testando la configurazione in https://www.ssllabs.com/ssltest/
 
#usando il comando OpenSSL: <code>openssl s_client -connect myserver.mydomain.org:443</code>
 
 
 
<u>Interpretare</u> i risultati:
 
 
 
#tra i risultati del test Qualys SSL Labs cercare la voce "'''Chain issues'''" ed assicurarsi che sia visualizzato il valore "'''None'''"
 
#l'output del comando Openssl deve contenere solo la seguente ''certificate chain'':
 
 
 
<code>Certificate chain</code>
 
 
 
<code>0 s:C = IT, O = Consortium GARR, CN = cert.test.garr.it</code>
 
 
 
<code>   i:C = NL, O = GEANT Vereniging, CN = GEANT OV RSA CA 4</code>
 
 
 
<code>1 s:C = NL, O = GEANT Vereniging, CN = GEANT OV RSA CA 4</code>
 
 
 
<code>   i:C = US, ST = New Jersey, L = Jersey City, O = The USERTRUST Network, CN = USERTrust RSA Certification Authority</code>
 
 
 
<u>Soluzione</u>:
 
 
 
Per correggere eventuali problemi configurare come ''certificate chain'' solo i certificati delle CA intermedie di GEANT (ad esempio CN = GEANT OV RSA CA 4 e simili).
 
 
 
<u>Riferimenti</u>:
 
 
 
[https://wiki.geant.org/display/TCSNT/TCS+2020+FAQ#TCS2020FAQ-Q:Whatabouttheexpiringcertificatesinthecertificatechain? What about the expiring certificates in the certificate chain?]
 
 
 
[https://support.sectigo.com/articles/Knowledge/Sectigo-AddTrust-External-CA-Root-Expiring-May-30-2020?retURL=%2Fapex%2FCom_KnowledgeWeb2Casepagesectigo&popup=false Sectigo AddTrust External CA Root Expiring May 30, 2020]
 
 
 
===Installazione Client Certificate===
 
 
 
==Gestione Organizzazione==
 
 
 
===Modifica della configurazione dell'Organizzazione===
 
Dal menù principale in grigio scuro selezionare ''Settings'' e poi scegliere ''Organizations''. Nella tabella selezionare il radiobutton relativo alla ''Organization'' da modificare e premere il bottone [Edit].
 
 
 
Si aprirà una finestra pop-up (Edit Organization:) composta dalle seguenti sezioni: ''General'', ''Client Certificate'', ''SSL Certificate'', ''Code Signing Certificate'', ''Email Template''.
 
 
 
Per poter richiedere ''certificati IGTF (grid)'' è necessario nel Tab ''General'' modificare il campo "Secondary Organization Name" prestando attenzione che contenga solo caratteri ASCII e che sia identico al campo O eventualmente usato in precedenza per i certificati grid con Digicert (in caso di dubbio consultare il portale Digicert per controllo). Dato che il subject dei certificati grid è usato come "username" è fondamentale che questo rimanga inalterato per non causare problemi di accesso alla grid per gli utenti.
 
 
 
I Tab ''Client Certificate e'' ''SSL Certificate'' permettono di personalizzare la configurazione ed in particolare nella sezione ''SSL Certificate'' è possibile configurare ''Self Enrollment'' per gli utenti non amministrativi e ''SSL Types'' [Customize] per ridurre il numero dei tipi di certificati richiedibili via GUI e tramite la form ''Self Enrollment''. Per approfondimenti su ''Self Enrollment'' vedi la sezione '''Richiesta certificati SSL tramite codice o autenticazione SAML'''. 
 
 
 
===Aggiunta e configurazione Department===
 
<blockquote>Se necessario è possibile suddividere una Organizzazione in Dipartimenti con lo scopo di creare sotto-strutture che in autonomia possano gestire le richieste di certificati su determinati sotto-domini. Gli amministratori di tali sotto-strutture (DRAO) hanno poteri limitati al Dipartimento a cui sono assegnati e sui domini delegati a tale dipartimento. Per delegare un dominio ad un dipartimento seguire la sezione "'''Gestione domini'''"</blockquote>Dal menù principale in grigio scuro selezionare ''Settings'' e poi scegliere ''Organizations''. Nella tabella selezionare il radiobutton relativo alla ''Organization'' su cui operare e premere il bottone [Departments].
 
 
 
Si aprirà una finestra pop-up (Departments) che permette di aggiungere nuovi dipartimenti, visualizzare e modificare i dipartimenti già creati.
 
 
 
====Aggiungere un nuovo Dipartimento====
 
Premendo il bottone [Add] si aprirà un'ulteriore finestra di pop-up (Add New Department) composta dalle seguenti sezioni: ''General, Client Certificate, SSL Certificate, Code Signing Certificate''.
 
 
 
In ''General'' è possibile assegnare il nome al nuovo ''Department''.
 
 
 
In ''SSL Certificate'' è possibile configurare ''Self Enrollment'' per gli utenti non amministrativi e ''SSL Types'' [Customize] per ridurre il numero dei tipi di certificati richiedibili via GUI e tramite la form ''Self Enrollment''. Per approfondimenti su ''Self Enrollment'' consultare la sezione '''Richiesta certificati SSL tramite codice o autenticazione SAML'''.
 
 
 
In ''Client Certificate'' disabilitare la checkbox ''Allow Key Recovery by Master Administrators''.
 
 
 
In ''Code Signing Certificate'' è possibile abilitare tale tipo di certificato per questo Department se necessario.
 
 
 
Premere [OK] per salvare la configurazione del nuovo Department.
 
 
 
====Visualizzare e modificare i dipartimenti già creati====
 
Selezionando il radiobutton relativo al Department che si vuole visualizzare sarà possibile modificarlo (Edit), rimuoverlo definitivamente (Delete), aggiungere e consultare i domini delegati (Domains) e associarvi account ACME (ACME Accounts).
 
 
 
Per la gestione dei domini associati ad un Department fare riferimento alla sezione Gestione Dominii.
 
 
 
===Aggiunta e configurazione DRAO===
 
Prima di poter aggiungere un ruolo DRAO è necessario aver creato almeno un Department.
 
 
 
Possono aggiungere e modificare DRAO in un determinato Department tutti i ruoli RAO e i DRAO di quel Department .
 
 
 
Per aggiungere un amministratore DRAO seguire le istruzioni di creazione di un amministratore RAO eseguendo la seguente variazione per la sezione Role:
 
 
 
 
 
'''ROLE'''
 
 
 
Dopo aver premuto su ''Expand All'' selezionare la checkbox indicante il Department opportuno che si trova sotto a:
 
 
 
+ ''DRAO Admin - SSL''
 
 
 
+ ''DRAO Admin - Client Certificate''
 
 
 
+ ''DRAO Admin - Code Signing''
 
 
 
 
 
E' possibile assegnare ad un DRAO tutti e 3 i ruoli oppure un sottoinsieme a seconda delle necessità. La configurazione può essere cambiata successivamente.
 
 
 
Per modificare un amministratore già creato in precedenza selezionare dalla tabella degli amministratori la radio button relativa e premere il bottone [Edit].
 
 
 
La maschera di modifica di un amministratore (Edit Client Admin) è sostanzialmente identica alla maschera di creazione nuovo amministratore.
 
 
 
La differenza riguarda la sezione della password in cui è presente il link ''Reset password''.
 
 
 
===Reset della password===
 
Il reset della password di un account DRAO può essere fatto da qualsiasi DRAO dello stesso ''Department'' e dai RAO della stessa ''Organization''. Dal menù ''Admins'' selezionare il nome dell'amministratore da modificare, premere il bottone [Edit] e seguire il link ''Reset password''. La nuova password dovrà essere comunicata out-of-band al collega.
 
 
 
===Richiesta certificati SSL tramite codice o autenticazione SAML (per utenti non admin)===
 
È possibile richiedere certificati SSL con autenticazione basata su codice o su autenticazione federata SAML via IDEM. In questo modo sarà possibile far richiedere i certificati anche ad utenti che non siano RAO o DRAO. Nel portale SCM questa funzionalità è definita ''Self Enrollment''.
 
 
 
Per abilitare il ''Self Enrollment'' selezionate ''Settings'', poi ''Organizations'', selezionare l'organizzazione e premere il bottone [Edit].
 
 
 
Nella finestra che si aprirà selezionare ''SSL Certificate':''
 
 
 
*spuntare la casella ''Self Enrollment'' ed inserire un codice di accesso in ''Access Code'' per abilitare il ''Self Enrollment'' basato su codice. L'accesso avverrà tramite la URL https://cert-manager.com/customer/GARR/ssl ed il codice indicato, il codice andrà comunicato out-of-band agli utilizzatori. Il codice potrà essere utilizzato da chiunque e per questo motivo '''sconsigliamo''' l'utilizzo di questa modalità.
 
*spuntare la casella ''Self Enrollment'' ed inserire un codice di accesso in ''Access Code'' e poi spuntare ''Self Enrollment via SAML'' per abilitare il ''Self Enrollment'' basato su SAML. L'accesso averrà tramite la URL generata e mostrata sotto il campo ''Token'' e l'autenticazione SAML, in questo modo l'accesso sarà limitato ai soli utenti della propria organizzazione e tutti gli accessi saranno autenticati su base personale. Il codice ''Access Code'' è obbligatorio ma sarà ignorato.
 
 
 
'''Raccomandiamo''' di non spuntare la casella ''Automatically Approve Self Enrollment Requests'' per mantenere il controllo delle richieste di certificati SSL richiesti tramite ''Self Enrollment''. È inoltre possibile limitare i tipi di certificati che si possono richiedere, così come i formati in cui scaricarli.
 
 
 
Una volta terminata la configurazione del ''Self Enrollment'' premendo il bottone [OK], andranno distribuite le URL per la richiesta dei certificati.
 
 
 
====SSL Certificate Enrollment: accesso ed emissione====
 
Gli utenti che accederanno alle URL del SSL Certificate Enrollment dovranno autenticarsi tramite il proprio Identity Provider o con il codice di accesso loro fornito.
 
 
 
Una volta acceduti dovranno selezionare il ''Certificate Type'', il ''Certificate Term'' ed il ''Server Software'' per cui stanno richiedendo il certificato, incollare la Certificate Submission Request nel campo ''CSR'', mentre i campi rimanenti sono opzionali. Una volta premuto il bottone [ENROLL] il RAO riceverà una notifica di richiesta e potrà approvare la richiesta del certificato dal menù ''Certificates'' del portale SCM.
 
 
 
Una volta approvata la richiesta ed emesso il certificato, l'utente riceverà infine un messaggio di posta elettronica contenente i link per scaricare il certificato richiesto.
 
 
 
==Configurazione SAML==
 
Il portale SCM è disponibile in eduGAIN ed è accessibile tramite tutti gli Identity Provider della Federazione IDEM che sono pubblicati in eduGAIN e consumano correttamente i metadata di federazione (vedi [[Metadata]]).
 
 
 
===Accesso al portale SCM per RAO e richiesta certificati SSL===
 
Le organizzazioni che intendono abilitare il proprio Identity Provider per l'<u>accesso al portale SCM</u> devono rilasciare i seguenti attributi al Service Provider di Sectigo (entityID = <code><nowiki>https://cert-manager.com/shibboleth</nowiki></code>):
 
 
 
*eduPersonPrincipalName
 
*email
 
*displayName (facoltativo)
 
*givenName (facoltativo)
 
*sn (facoltativo)
 
 
 
Per verificare che il vostro Identity Provider stia rilasciando correttamente gli attributi necessari, Sectigo mette a disposizione una pagina di controllo al seguente indirizzo:
 
 
 
https://cert-manager.com/customer/garr/ssocheck/.
 
 
 
Una volta configurato e verificato il rilascio degli attributi, l'accesso federato via SAML andrà abilitato nelle sezioni del portale SCM che lo prevedono (ad esempio per ''IdP Person Id'' e per il ''Self Enrollment via SAML'').
 
 
 
===Accesso al portale self-service via SAML per richiesta Client certificate===
 
Le organizzazioni che intendono abilitare il proprio Identity Provider anche per la richiesta dei client certificate tramite <u>il portale self-service via SAML</u> devono rilasciare i seguenti attributi al Service Provider di Sectigo (entityID = <code><nowiki>https://cert-manager.com/shibboleth</nowiki></code>):
 
 
 
*eduPersonPrincipalName (<nowiki>urn:oid:1.3.6.1.4.1.5923.1.1.1.6</nowiki>)
 
*email (<nowiki>urn:oid:0.9.2342.19200300.100.1.3</nowiki>)
 
*displayName (<nowiki>urn:oid:2.16.840.1.113730.3.1.241</nowiki>)
 
*givenName (<nowiki>urn:oid:2.5.4.42</nowiki>)
 
*sn (<nowiki>urn:oid:2.5.4.4</nowiki>)
 
*cn (<nowiki>urn:oid:2.5.4.3</nowiki>)
 
*schacHomeOrganization (<nowiki>urn:oid:1.3.6.1.4.1.25178.1.2.9</nowiki>) con valore pari al "Academic code (SCHAC Home Organization)" impostato in SCM
 
*eduPersonEntitlement (<nowiki>urn:oid:1.3.6.1.4.1.5923.1.1.1.7</nowiki>) con valore <code><nowiki>urn:mace:terena.org:tcs:personal-user</nowiki></code>
 
 
 
Di seguito un esempio di configurazione per Shibboleth Identity Provider >= 3.2.0:
 
 
 
in primo luogo dovete
 
 
 
e un esempio di configurazione per Shibboleth Identity Provider < 3.2.0:
 
 
 
né tantomento
 
 
 
Per verificare il rilascio attributi al portale self-service SAML accedere, dopo l'autenticazione, a https://cert-manager.com/Shibboleth.sso/Session
 
 
 
==ACME account==
 
Il protocollo ACME, ''Automated Certifcate Management Environment'', è uno standard IETF (RFC 8555) per la gestione automatizzata dei certificati X.509.
 
 
 
Il protocollo ACME è stato implementato per la prima volta da [https://letsencrypt.org Let's Encrypt], la Certification Authority libera e gratuita gestita dal [https://www.abetterinternet.org/ Internet Security Research Group (ISRG)]. E' bene ricordare che se da una parte Let's Encrypt fornisce un servizio formidabile, dall'altra supporta solo i certificati di tipo DV.
 
 
 
Il client di riferimento per l'uso di Let's Encrypt e del protocollo ACME è [https://certbot.eff.org certbot] ed è l'unico attualmente supportato da Sectigo, almeno in forma ufficiale.
 
 
 
Sectigo supporta il protocollo ACME e certbot per le operazioni principali di gestione dei certificati: creazione, rinnovo e revoca.
 
 
 
'''Riferimenti'''
 
 
 
*RFC 8555: rfc:8555
 
*Let's Encrypt: https://letsencrypt.org
 
*Certbot, il client ACME raccomandato:A https://certbot.eff.org
 
*Supporto ACME in Sectigo: vedi il capitolo "Using the Sectigo ACME Service" della guida ''SCM - Sectigo Certificate Manager Administrator's Guide/''
 
 
 
===Creazione account ACME su SCM===
 
Per poter iniziare ad utilizzare ACME con Sectigo è necessario creare uno o più account ACME per la propria organizzazione.
 
 
 
Accedete a SCM con il vostro account RAO, dal menù principale selezionare ''Settings'' e poi ''Organizations''. Nell'elenco sottostante selezionate il radiobutton della vostra organizzazione, e poi premete il bottone [ACME Accounts]. Nella finestra che si aprirà premete il tasto [Add] per aggiungere un nuovo account. Nella finestra di creazione dell'account dovrete:
 
 
 
*inserire il nome del account nel campo ''Name.''
 
*scegliere il ''Acme Server'' dal menù a tendina:
 
**https://acme.sectigo.com/v2/OV per i certificati OV.
 
**https://acme.sectigo.com/v2/EV per i certificati EV (ATTENZIONE, per i certificati di tipo EV in ACME, l'organizzazione deve essere già abilitata, vedi sopra la sezione ''Certificati Extended Validation'').
 
*nella sezione ''DOMAINS'' scegliere i dominii per cui abilitare questo account e premere il tasto [OK].
 
 
 
L'account verrà creato immediatamente e vi verranno comunicati i dati di creazione che dovrete copiare e conservare:
 
 
 
*''ACME URL''
 
*''Account ID''
 
*''Key ID''
 
*''HMAC Key''
 
 
 
<blockquote>'''IMPORTANTE''' ''Key ID'' e ''HMAC Key'' sono le credenziali dell'account ACME appena creato e il portale Sectigo ve le mostrerà solo per breve tempo, quindi è importantissimo copiarle e conservarle in un luogo sicuro, altrimenti sarà necessario eliminare e ricreare l'account.</blockquote>Una volta creato l'account e visualizzate le credenziali, sarete riportati sull'elenco degli account ACME disponibili per l'organizzazione, dove vedrete che l'account appena creato è in stato ''pending''. <u>Non vi preoccupate l'account è già operativo e può essere già utilizzato.</u>
 
 
 
L'account creato è di tipo EAB (External Account Binding), ed i certificati relativi saranno classificati in SCM con status ''External''. Inoltre le Certification Authority intermedie per i certificati emessi tramite ACME sono diverse da quelle utilizzate per i certificati emessi tramite SCM o tramite le API di Sectigo. Ad esempio per i certificati di tipo OV avremo la CA intermedia ''Sectigo RSA Organization Validation Secure Server CA'' invece che ''GEANT OV RSA CA 4''. Ovviamente dal punto di vista funzionale non c'é alcuna differenza.
 
 
 
===Installazione di certbot===
 
Riportiamo qui le istruzioni per l'installazione di certbot limitatamente ad alcuni ambienti di base, per maggiori informazioni vi consigliamo di consultare le istruzioni ufficiali su https://certbot.eff.org
 
 
 
Tutti i comandi che seguono devono essere eseguiti da root o con sudo.
 
 
 
===='''Debian 9 e 10 + Apache'''====
 
apt-get install certbot python-certbot-apache
 
<blockquote>'''IMPORTANTE''' La versione di certbot disponibile per Debian 9 e 10 è purtroppo molto datata (0.3x). I comandi presentati in questa guida sono comunque tutti supportati e sono stati testati, ma se volete o dovete installare una versione più recente potete utilizzare la versione ''snap'', vedi le istruzioni per Ubuntu 18.04 e 20.04 più sotto.</blockquote>
 
 
 
===='''CentOS 7 e 8 + Apache'''====
 
 
 
*In primo luogo dovrete abilitare il repository EPEL (Extra Packages for Enterprise Linux), vedi https://fedoraproject.org/wiki/EPEL#Quickstart
 
*Per CentOS 7 usare yum:
 
 
 
  yum install certbot python-certbot-apache
 
 
 
*Per CentOS 8 usare dnf:
 
 
 
dnf install certbot python-certbot-apache
 
 
 
===='''Ubuntu 18.04 e 20.04''' --- istruzioni valide anche per Debian 9 e 10====
 
 
 
*In primo luogo installare ''snapd'', vedi https://snapcraft.io/docs/installing-snapd
 
*Rimuovere eventuali pacchetti certbot precedentemente installati:
 
 
 
apt-get remove certbot
 
 
 
*Infine installare certbot tramite snap:
 
 
 
snap install --classic certbot
 
 
 
===Registrazione account ACME e uso di certbot===
 
Tutti i comandi che seguono devono essere eseguiti da root o con sudo.
 
 
 
Prima di cominciare a gestire i certificati è necessario registrare il nostro account Sectigo ACME con il comando che segue:
 
certbot register --email <EMAIL_RAO> --server <nowiki>https://acme.sectigo.com/v2/OV</nowiki> --eab-kid <KEY ID> --eab-hmac-key <HMAC KEY>
 
Sostituire <KEY ID> e <HMAC KEY> con i corrispondenti valori che vi si siete segnati durante la creazione dell'account ACME su SCM.
 
 
 
Il processo di registrazione comporta l'accettazione dei Terms of Service; vi verrà inoltre richiesto se volete condividere la mail con la Electronic Frontier Foundation.
 
 
 
Il risultato sarà la creazione dell'account e della relativa chiave nella directory <code>/etc/letsencrypt/accounts</code>.<blockquote>'''IMPORTANTE''' Fate immediatamente un backup della directory <code>/etc/letsencrypt/accounts</code> dato che '''la procedura di registrazione non è ripetibile''' e se perdete la chiave dovrete eliminare e ricreare l'account ACME su SCM e procedere ad una nuova registrazione. Inoltre per poter utilizzare lo stesso account EAB su altri server dovrete copiarvi il contenuto della directory <code>/etc/letsencrypt/accounts</code>, quindi è indispensabile preservarla.</blockquote>
 
 
 
====Validazione dei dominii====
 
certbot supporta anche la validazione dei dominii tramite ''.well-known'' path, ma nel nostro caso i dominii sono già stati creati e validati su SCM, quindi non tratteremo questa parte.
 
 
 
====Creazione dei certificati====
 
certbot permette di creare ed installare automaticamente i certificati dei virtual host presenti e correttamente configurati sul nostro server web, o semplicemente di creare i certificati senza installazione automatica.
 
 
 
Con il comando <code>run</code> si creano ed installano chiave e certificato per il virtualhost certbot.aai-test.garr.it:
 
certbot run --apache --email davide.vaghetti@garr.it --server <nowiki>https://acme.sectigo.com/v2/OV</nowiki> --domain certbot.aai-test.garr.it
 
Le modalità di installazione possono variare a seconda delle distribuzioni, ma in generale certbot, una volta creati chiave e certificato, tenterà di individuare la configurazione del virtualhost apache corrispondente e di modificarla per farla puntare al certificato ed alla chiave appena creati.
 
 
 
Per limitarsi alla <u>sola creazione del certificato</u> e della relativa in formato PEM, utilizzare invece il comando <code>certonly</code> con l'opzione <code>--standalone</code>:
 
 
 
certbot certonly --standalone --email davide.vaghetti@garr.it --server <nowiki>https://acme.sectigo.com/v2/OV</nowiki> --domain certbot.aai-test.garr.it
 
 
 
Per richiedere un <u>certificato con SAN multipli</u>, quindi per più nomi di dominio, ripetere l'opzione <code>--domain DOMINIO</code> o utilizzare una lista di nomi di dominio separata da virgola, ma senza spazi, come da esempio:
 
certbot certonly --apache --email davide.vaghetti@garr.it --server <nowiki>https://acme.sectigo.com/v2/OV</nowiki> --domain d1.aai-test.garr.it,d2.aai-test.garr.it,d3.aai-test.garr.it
 
Alcune opzioni utili in fase di creazione dei certificati:
 
 
 
*<code>--quiet</code> silenzia il comando, utile per automation.
 
 
 
*<code>--non-intereactive</code> utile per automation, ma necessita di ulteriori opzioni.
 
 
 
*<code>--rsa-key-size BITS</code> per specificare la grandezza della chiave in bits, il default è 2048.
 
 
 
Tutti i certificati creati vengono salvati in <code>/etc/letsencrypt/archive/<DOMAIN></code> e collegati in <code>/etc/letsencrypt/live/<DOMAIN></code> se attivi. Inoltre le chiavi sono salvate in <code>/etc/letsencrypt/keys</code> e le csr in <code>/etc/letsencrypt/csr</code>, dove permangono anche una volta revocati i relativi certificati pubblici.
 
 
 
====Revoca dei certificati====
 
Per revocare i certificati emessi utilizzare il comando <code>revoke</code>:
 
 
 
certbot revoke --email davide.vaghetti@garr.it --server <nowiki>https://acme.sectigo.com/v2/OV</nowiki> --cert-name certbot.aai-test.garr.it
 
 
 
Nel caso di certificati per più nomi di dominio, basterà specificare uno dei nomi validi. Inoltre tramite l'opzione <code>--cert-path</code> è possibile utilizzare il percorso del certificato al posto del nome di dominio:
 
certbot revoke --email davide.vaghetti@garr.it --server <nowiki>https://acme.sectigo.com/v2/OV</nowiki> --cert-path /etc/letsencrypt/live/certbot.aai-test.garr.it/cert.pem
 
 
 
====Rinnovo dei certificati====
 
La semplicità con cui è possibile rinnovare i certificati è molto probabilmente il maggior punto di forza di ACME e certbot.
 
 
 
Il rinnovo avviene con il comando <code>renew</code> e rinnova automaticamente tutti i certificati presenti in <code>/etc/letsencrypt</code> e che stanno per scadere entro 30 giorni:
 
certbot renew
 
Ci sono una serie di opzioni utili per il rinnovo dei certificati che è bene conoscere:
 
 
 
*<code>--quiet</code> silenzia il comando, utile per richiamare il rinnovo da cron.
 
*<code>--force-renewal</code> forza il rinnovo di tutti i certificati indipendentemente dalla loro data di scadenza.
 
*<code>--reuse-key</code> rinnova solo il certificato, ma non emette anche una nuova chiave (default false).
 
 
 
Molti dei pacchetti di installazione di certbot includono già una configurazione di base per il rinnovo dei certificati via cron. Ad esempio su Debian 10 il pacchetto certbot installa il seguente cron job in <code>/etc/cron.d/certbot</code>:
 
# /etc/cron.d/certbot: crontab entries for the certbot package
 
#
 
# Upstream recommends attempting renewal twice a day
 
#
 
# Eventually, this will be an opportunity to validate certificates
 
# haven't been revoked, etc.  Renewal will only occur if expiration
 
# is within 30 days.
 
#
 
# Important Note!  This cronjob will NOT be executed if you are
 
# running systemd as your init system.  If you are running systemd,
 
# the cronjob.timer function takes precedence over this cronjob.  For
 
# more details, see the systemd.timer manpage, or use systemctl show
 
# certbot.timer.
 
SHELL=/bin/sh
 
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
 
0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(43200))' && certbot -q renew
 
E' anche possibile forzare il rinnovo del certificato di un solo dominio utilizzando il comando certonly e le opportune opzioni. Ad esempio per forzare il rinnovo del nome di dominio d1.aai-test.unipi.it, riutilizzando la chiave esistente:
 
certbot certonly --standalone --force-renewal --reuse-key --agree-tos --email davide.vaghetti@garr.it --server <nowiki>https://acme.sectigo.com/v2/OV</nowiki> --domain d1.aai-test.garr.it
 
====Utilizzo su più server====
 
Per utilizzare certbot su più server avete due opzioni:
 
 
 
#creare un account ACME su SCM per ogni server da abilitare e registrarlo seguendo le istruzioni di sopra.
 
#copiare le chiavi di uno degli account ACME già registrati su tutti i server da abilitare.
 
 
 
La seconda opzione dovrebbe essere la più conveniente nella maggior parte delle situazioni. Una volta installato certbot, sarà sufficiente copiare sul server da abilitare tutto il contenuto della directory <code>/etc/letsencrypt/accounts</code> dal server su cui è stata effettuata la registrazione iniziale.
 
<br />
 

Versione attuale delle 14:30, 9 ott 2024

Attenzione: La documentazione del servizio GARR CS è stata trasferita. Puoi consultare la nuova versione della pagina al seguente link: https://tcs-docs.aai.garr.it/.