Setup di una CA su linux. Setup di una CA su linux. Sommario. Introduzione alle PKI. Esigenze e motivazioni. Applicazioni e servizi PKI



Documenti analoghi
Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti

La firma digitale CHE COSA E'?

Comunicazioni sicure su Internet: https e SSL. Fisica dell Informazione

La Firma Digitale La sperimentazione nel Comune di Cuneo. Pier Angelo Mariani Settore Elaborazione Dati Comune di Cuneo

Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC.

Installazione LAMP. Installare un server lamp su Linux Ubuntu. Per installare un server LAMP in Ubuntu come prima cosa apriamo il terminale:

Manuale Utente del Portale CA. Prerequisiti per l Attivazione della Firma Digitale su CNS/CRS. Sistema Operativo Windows

CONFIGURAZIONE XAMPP + SSL (HTTPS)

Quasar Sistemi S.r.l.

Sicurezza: necessità. Roberto Cecchini Ottobre

Overview su Online Certificate Status Protocol (OCSP)

Informatica per la comunicazione" - lezione 13 -

Software Servizi Web UOGA

MANUALE DI INSTALLAZIONE CERTIFICATO DIGITALE PER LA SICUREZZA CERTIFICATION AUTHORITY DEL SISTEMA PIEMONTE

Manuale Utente Prerequisiti per DigitalSign Lite Sistema Operativo Linux a 64 bit

Sistema di gestione Certificato MANUALE PER L'UTENTE

Applicazioni per l autenticazione Sicurezza nelle reti di TLC - Prof. Marco Listanti - A.A. 2008/2009

Procedura installazione del software per la visualizzazione del fascicolo sanitario elettronico

Documenti cartacei e digitali. Autenticità. Cosa si vuole garantire? Riservatezza. Integrità 11/12/2012. PA digitale: documenti e firme (I.

Problematiche correlate alla sicurezza informatica nel commercio elettronico

UNIVERSITA DI CATANIA

Firma digitale: aspetti tecnologici e normativi. Milano,

Protezione della posta elettronica mediante crittografia

La VPN con il FRITZ!Box Parte II. La VPN con il FRITZ!Box Parte II

Utilizzo di Certificati SSL e relative implicazioni

Certificati digitali con CAcert Un'autorità di certificazione no-profit

PROCEDURA AGGIORNAMENTO LISTE MEDIANTE L INTERFACCIA WEB

Xampp. Valeriano Maysonnave - A.A. 2014/2015 -

Guida alla registrazione on-line di un DataLogger

La Firma Digitale. Manuale d uso Fornitore. Introduzione alla Firma Digitale. Aprile 2015

Avviso 1/2014 Procedura Caricamento Documentazione con Firma Digitale

Accreditamento al SID

Allegato 3 Sistema per l interscambio dei dati (SID)

Gennaio. SUAP On Line i pre-requsiti informatici: La firma digitale

CONFIGURAZIONE SERVER APACHE (XAMPP): ACCESSO SICURO A DIRECTORY DEL FILE SYSTEM.

Procedure di utilizzo e di descrizione applicativa

Il web server Apache Lezione n. 3. Introduzione

DOCUMENTO ELETTRONICO E FIRMA DIGITALE

MANUALE PARCELLA FACILE PLUS INDICE

Sicurezza nelle applicazioni multimediali: lezione 7, sicurezza dei protocolli. Sicurezza dei protocolli (https, pop3s, imaps, esmtp )

Studio Legale. Guida operativa

Allegato A: Regole tecniche per la gestione dell identità.

Protezione delle informazioni in SMart esolutions

Manuale LiveBox WEB ADMIN.

Introduzione ai certificati S/MIME e alla posta elettronica certificata...2 Procedura di installazione del certificato personale S/MIME rilasciato

Elementi di Sicurezza e Privatezza Laboratorio 4. Chiara Braghin. Caso di studio: Apache Web Server

Regione Piemonte Portale Rilevazioni Crediti EELL Manuale Utente

1 Presentazione progetti in modalità completamente digitale Descrizione delle modalità di presentazione dei progetti

Istruzioni operative instal azione FirmaVerifica3.0 Pag.1 di 27

19. LA PROGRAMMAZIONE LATO SERVER

Guida alla configurazione della posta elettronica dell Ateneo di Ferrara sui più comuni programmi di posta

FOXWave Gestione gare ARDF IZ1FAL Secco Marco Sezione ARI BIELLA

IPSec VPN Client VPN vs serie ZyWALL con PSK e Certificati digitali

SSL: applicazioni telematiche SSL SSL SSL. E-commerce Trading on-line Internet banking... Secure Socket Layer

Meccanismi di autenticazione sicura. Paolo Amendola GARR-CERT

Elementi di Sicurezza e Privatezza Laboratorio 10 Uso di OpenSSL per generare certificati X.509. Chiara Braghin chiara.braghin@unimi.it!

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

Finanziamenti on line -

Configurazione di sicurezza di XAMPP

DiKe Guida rapida all'uso

IBM SPSS Statistics per Linux - Istruzioni di installazione (Licenza per sito)

RICEZIONE AUTOMATICA DEI CERTIFICATI DI MALATTIA 1.1. MALATTIE GESTIONE IMPORT AUTOMATICO 1.2. ATTIVAZIONE DELLA RICEZIONE DEL FILE CON L INPS

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

BREVE GUIDA ALL USO DI CNS E SMART CARD aggiornata a febbraio 2009

Manuale d uso. Applicazione client Postecert Firma Digitale per Post box

PSNET UC RUPAR PIEMONTE MANUALE OPERATIVO

INTEGRATA OTTIMIZZAZIONE DEI PROCESSI AZIENDALI

Firma Digitale Remota

La VPN con il FRITZ!Box - parte II. La VPN con il FRITZ!Box Parte II

Guida all accesso sicuro al sito dberw.univr.it

Aruba Sign 2 Guida rapida

PORTALE CLIENTI Manuale utente

Manuale LiveBox WEB ADMIN.

Console di Amministrazione Centralizzata Guida Rapida

Sistema Informativo Valutazioni e PRocedimenti Ambientali (SIPRA)

CERTIFICATI DIGITALI. Manuale Utente

LA FORMAZIONE E LA CONSERVAZIONE DELLA MEMORIA DIGITALE

LA RICHIESTA DEL CERTIFICATO COL TIMBRO DIGITALE MODALITA' DI RICHIESTA ED EMISSIONE

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

Guida alla compilazione on-line delle domande di Dote Scuola A.S per le Famiglie INDICE

Manuale per la configurazione di AziendaSoft in rete

Lextel Servizi Telematici per l Avvocatura

Guida alla compilazione on-line delle domande di Dote Scuola A.S per le Famiglie INDICE

Configurazione avanzata di XAMPP

CONFIGURAZIONE WAMP SERVER + SSL (HTTPS)

PRODUZIONE PAGELLE IN FORMATO PDF

Installazione di GFI WebMonitor

VERIS. Manuale Utente - Verifica Emissibilità, Inquiry Revoche - - Installazione e gestione -

Sommario. 1. Cos è SecureDrive Caratteristiche Privacy dei dati: SecureVault... 4

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

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo

Servizio Telematico Paghe

STATO MAGGIORE DELLA DIFESA Comando C4 Difesa

Assistenza Utente firmatario

Portale tirocini. Manuale utente Per la gestione del Progetto Formativo

Fatturazione Elettronica verso la P.A. Il servizio offerto da dovidea

Protocollo Informatico (D.p.r. 445/2000)

Serve a garantire la nostra privacy nell era era della comunicazione digitale.

Utilizzo della smart card di Ateneo (CMRT)

DALL IMMAGINE AL TESTO...SEMPLICEMENTE

Transcript:

Setup di una CA su linux A cura di: De Maio Arnaldo (056101767) De Rogatis Antonello (056101616) Prof: Alfredo De Santis Setup di una CA su linux Sistemi di elaborazione dell informazione: Sicurezza su reti Anno accademico: 2003/2004 Setup di una CA su Linux 1 Setup di una CA su Linux 2 Sommario Introduzione alle PKI Crittografia moderna CA e PKI OpenCA Setup OpenCA Utilizzo OpenCA Introduzione alle PKI Esigenze e motivazioni Applicazioni e servizi Aderenza agli standard Limiti alla diffusione Setup di una CA su Linux 3 Setup di una CA su Linux 4 Esigenze e motivazioni Le PKI (infrastruttura a chiave pubblica) nascono dall esigenza di avere un autorità imparziale, garante dell autenticità della firma digitale apposta su di un documento elettronico. Garantiscono l autenticità di un documento elettronico alla stessa maniera in cui un Comune attesta la validità di un documento apponendo su di esso un timbro (le cose non stanno esattamente così, ma l esempio rende il significato, vedremo ) Setup di una CA su Linux 5 Applicazioni e servizi Identificazione, remote access, autorizzazione, Non-ripudio data storage sicuro networking/communications sicure con unità aziendali, clienti, partner PKI e-mail sicura Commercio on-line sicuro Comunicazioni ufficiali con gli enti pubblici Integrità del sistema Setup di una CA su Linux 6 1

Aderenza agli standard Le PKI devono aderire agli standard IETF legati allo sviluppo delle infrastrutture a chiave pubblica L aderenza agli standard garantisce interoperabilità di prodotti e applicazioni Limiti alla diffusione Disorganizzazione del flusso di lavoro: ne limita lo sviluppo soprattutto nelle autorità pubbliche Definizione delle politiche interne: non è semplice definire le procedure e individuare i responsabili del servizio Setup di una CA su Linux 7 Setup di una CA su Linux 8 Limiti alla diffusione Inadeguatezza delle leggi: le leggi attuali spesso risultano out of target Mancanza di applicativi: Per sviluppare nuove applicazioni e migliorare quelle esistenti sono richiesti tempo e investimenti Crittografia moderna Prerogative fondamentali: Riservatezza: l'informazione deve essere intelligibile solo da chi ne è autorizzato Integrità: deve essere possibile rilevare se l'informazione è stata alterata Autenticazione: la parte autenticansi deve dimostrare alla parte autenticante chi sostiene di essere Setup di una CA su Linux 9 Setup di una CA su Linux 10 Crittografia moderna Principali primitive: Algoritmi simmetrici Funzioni hash Algoritmi asimmetrici Algoritmi simmetrici Gli interlocutori devono condividere una chiave segreta di cifratura-decifratura. Sono basati su trasformazioni a blocchi, quindi sono veloci e possono essere applicati a messaggi di lunghezza arbitraria Esempi: DES, AES, RC5, ecc Sono soggetti ad attacchi di crittoanalisi lineare e differenziale Setup di una CA su Linux 11 Setup di una CA su Linux 12 2

Algoritmi simmetrici Funzioni hash Applicate a messaggi di lunghezza variabile, forniscono una rappresentazione non ambigua e non falsificabile del messaggio Proprietà fondamentali: 1. Sicurezza forte: difficile trovare due messaggi con lo stesso valore hash 2. Sicurezza debole: dato M è difficile trovare M tale che hash(m)=hash(m ) 3. One-way: dato y=hash(m) è difficile trovare M. Setup di una CA su Linux 13 Setup di una CA su Linux 14 Funzioni hash Vantaggi: Sono facili da calcolare Comprimono l input Funzioni hash Producono un output di dimensione fissa, che varia a seconda della funzione utilizzata Standard più diffusi: MD4 MD5 SHS Setup di una CA su Linux 15 Setup di una CA su Linux 16 Algoritmi asimmetrici Fondano la loro sicurezza su problemi matematici computazionalmente difficili Ogni interlocutore ha una coppia di chiavi (pubblica,privata) Le applicazioni principali sono 1. accordo su chiavi 2. non ripudio Accordo su chiavi Processo in virtù del quale due interlocutori si scambiano la chiave di cifratura simmetrica su canale fidato in maniera riservata Riservatezza assicurata dal fatto che il mittente cifra il dato (chiave simmetrica) con la chiave pubblica del destinatario, il quale sarà l unico in grado di poterlo decifrare, perché è l unico che conosce la chiave privata relativa Setup di una CA su Linux 17 Setup di una CA su Linux 18 3

Accordo su chiavi Accordo su chiave Principali problemi: Chi garantisce la fiducia del canale? Come fa il mittente a verificare che il destinatario è davvero il possessore di quella chiave pubblica e non è un intruso? Setup di una CA su Linux 19 Setup di una CA su Linux 20 Non ripudio Non ripudio 1. Bob cifra un messaggio con la sua chiave privata 2. Rende nota la coppia (messaggio,cifratura) 3. A meno che il messaggio o la cifratura non vengano modificati da intermediari, nessuno può contestare l autenticità del messaggio 4. Chiunque può decifrare con la chiave pubblica di Bob e confrontare il risultato con il messaggio in chiaro Setup di una CA su Linux 21 Setup di una CA su Linux 22 CA e PKI Certificato a chiave pubblica CA e suoi compiti CRL RA PKI Firma digitale Certificati digitali Certificato a chiave pubblica Documento digitale inerente un soggetto. Garantisce che la chiave pubblica presente sul certificato appartiene realmente al soggetto Garantisce quindi la corrispondenza tra chiave pubblica e privata Setup di una CA su Linux 23 Setup di una CA su Linux 24 4

Certificato a chiave pubblica Certificato a chiave pubblica Tale garanzia è fornita dalla firma digitale apposta sul certificato da una autorità di certificazione (CA) I certificati sono emessi secondo lo standard x509 (vedremo ) Setup di una CA su Linux 25 Setup di una CA su Linux 26 CA E un' autorità fidata che emette i certificati e garantisce con la propria firma l'autenticità di una chiave corrispondente ad un dato utente. Ha il compito di certificare l'identita' del possessore della coppia di chiavi La CA dimostra l autenticità del certificato emesso apponendo la sua firma digitale sul certificato CA La firma è apposta calcolando l hash del certificato e applicando (su questi) l algo di firma con la sua chiave privata. Qualsiasi utente può verificare la validità del certificato: basta applicare l algo inverso dandogli in input la firma apposta sul certificato e la chiave pubblica della CA (che è sul certificato stesso o che comunque è ben nota) e confrontare il risultato con l hash del certificato (che possiamo sempre calcolare). Setup di una CA su Linux 27 Setup di una CA su Linux 28 Compiti di una CA Autenticazione dell'identità dei richiedenti: identifica con certezza la persona che fa richiesta della certificazione della chiave pubblica Validazione delle richieste di certificati Registrazione della chiave: emissione di un certificato per una chiave pubblica Setup di una CA su Linux 29 Compiti di una CA Revoca di un certificato: cancellazione di un certificato precedentemente emesso per motivi come la richiesta di revoca da parte dell'interessato stesso, scadenza del periodo di validità del certificato, abusi o falsificazioni del certificato o avanzamento tecnologico Manutenzione di un archivio dei certificati e delle chiavi pubbliche relative ai possessori Setup di una CA su Linux 30 5

Compiti di una CA Pubblicazione dell'elenco dei certificati revocati o sospesi Valutazione della fiducia: verifica della validità di un certificato e delle operazioni autorizzate Recupero di una chiave: ricostruzione di una chiave smarrita CRL E l acronimo di Certificate Revocation List Ogni certificato digitale ha un suo periodo di validità La CA può, per vari motivi, revocare il certificato quando è ancora valido La CRL è la lista contenente tutti i certificati revocati dalla CA e le relative informazioni riguardanti la revoca Setup di una CA su Linux 31 Setup di una CA su Linux 32 CRL La CRL è divisa in segmenti. Ogni segmento oltre a contenere i vari record, contiene: 1. il nome della CA che ha rilasciato il segmento 2. la data e l ora del rilascio del segmento 3. la firma della CA relativa al segmento CRL La CRL contiene un record per ogni certificato revocato. Alcuni dei campi appartenenti ad ogni record sono: 1. Numero seriale del certificato revocato 2. Data e ora di revoca 3. Dati sul possessore della relativa chiave pubblica 4. Ragioni di revoca Setup di una CA su Linux 33 Setup di una CA su Linux 34 RA RA E l acronimo di Registration Authority Costituiscono il contatto diretto fra la CA e l entità che richiede il certificato Interfaccia la CA, che è offline per ragioni di sicurezza, con il mondo esterno Verifica l identità del soggetto richiedente Setup di una CA su Linux 35 Setup di una CA su Linux 36 6

PKI E l acronimo di Public Key Infrastructure E' una combinazione di componenti hardware e software, policies e procedure. Fornisce la minima sicurezza affinchè sia possibile scambiare dati attraverso il canale informatico, tramite i certificati digitali. PKI Le componenti più importanti di una PKI sono: CA RA Policy di sicurezza CPS Setup di una CA su Linux 37 Setup di una CA su Linux 38 PKI Abbiamo gia parlato di CA e RA Le policy di sicurezza stabiliscono i principi su cui si basa l'organizzazione e forniscono informazioni sui livelli di sicurezza che si intende raggiungere Un CPS (Certificate Practice Statement) e' un documento contenente le operazioni procedurali che permettono di raggiungere la sicurezza referenziata nella policy PKI Di solito per PKI intendiamo una struttura formata da più CA legate fra loro gerarchicamente Una PKI si basa sul concetto di thirdpart-trust, per cui due entità si fidano reciprocamente senza aver mai stabilito una relazione di fiducia Setup di una CA su Linux 39 Setup di una CA su Linux 40 PKI Ciò è reso possibile da una terza parte che si eleva come garante della relazione di fiducia Tale parte è la radice comune del sottoalbero di certificazione Un cammino di certificazione è una sequenza di nodi tra l'entità richiedente il certificato, e una CA radice PKI Una CA radice e' una CA sicura Una CA può considerarsi sicura: 1. Se è la radice comune del sottoalbero di certificazione delle due parti 2. Se è la radice assoluta dell albero di certificazione. In questo caso il suo certificato sarà self-signed (autocertificazione) Setup di una CA su Linux 41 Setup di una CA su Linux 42 7

PKI Firma digitale E un informazione che viene aggiunta ad un documento informatico al fine di garantirne integrità e provenienza Utilizzata per autenticare una qualunque sequenza di simboli binari, indipendentemente dal loro significato Varia con il variare del documento Setup di una CA su Linux 43 Setup di una CA su Linux 44 Firma digitale Firma digitale Per firmare un documento digitale è necessario: 1. generare l'impronta hash del documento da firmare 2. generare la firma applicando l algo di firma sull'impronta con la chiave privata del firmatario 3. apposizione della firma sul documento tramite concatenazione di bytes Setup di una CA su Linux 45 Setup di una CA su Linux 46 Firma digitale Firma digitale IL processo di verifica di una firma digitale (apposta su documento) consiste nel: 1. calcolare l impronta hash del documento ricevuto, con la stessa funzione utilizzata dal firmatario 2. applicare l algo inverso dandogli in input la firma e la chiave pubblica del firmatario 3. confrontare i risultati ottenuti ai punti 1 e 2 Setup di una CA su Linux 47 Setup di una CA su Linux 48 8

Certificati digitali Come è fatto un certificato digitale? contiene dati non sensibili e non soggetti a frequenti cambiamenti sull'identità dell'intestatario: la chiave pubblica estensioni atte a facilitare la gestione del certificato e dei servizi fruibili Certificati digitali: x509 Standard per la definizione del formato dei certificati Costituisce il framework di autenticazione per i servizi di directory distribuite x500 Attualmente la versione maggiormente diffusa è la 3 Setup di una CA su Linux 49 Setup di una CA su Linux 50 Certificati digitali: x509 Certificati digitali: x509 Campi del certificato x509: 1. Versione 2. Numero seriale del certificato 3. Identificatore dell'algoritmo di firma 4. Nome del pubblicatore 5. Periodo di validità Setup di una CA su Linux 51 Setup di una CA su Linux 52 Certificati digitali: x509 Certificati digitali: x509 6. Nome del soggetto 7. Informazioni sulla chiave pubblica del soggetto 8. Identificativo unico del pubblicatore 9. Identificativo unico del soggetto 10. Estensioni (opzionali e presenti solo nella v3) Setup di una CA su Linux 53 Setup di una CA su Linux 54 9

OpenCA Introduzione Caratteristiche Software utilizzati Ciclo di vita degli oggetti Interfacce Setup di una CA su Linux 55 OpenCA: introduzione Nasce nel 1999 Toolkit per l implementazione di una PKI È Open Source È Community Driven Versione utilizzata: 0.9.1.8 rilasciata nel febbraio 2003 Il codice è disponibile all indirizzo http://www.openca.org Setup di una CA su Linux 56 OpenCA: caratteristiche Interfaccia grafica HTML Portabilità: è interamente scritto in C e Perl Modularità: separazione funzionale tra 1. Comandi 2. Librerie di utilità 3. Oggetti crittografici OpenCA: caratteristiche Dal punto di vista tecnologico: Supporto per principali DBMS ed SQL Supporto per il Backup ed il Restore dei dati Possibilita' di configurare RA/CA sulla stessa macchina in modo che condividano lo stesso DB (come abbiamo fatto noi!) Setup di una CA su Linux 57 Setup di una CA su Linux 58 OpenCA: software utilizzati OpenSSL: software crittografico che fornisce le funzionalità di base per la generazione dei certificati digitali mod_ssl: software crittografico, basato su OpenSSL, che fornisce supporto per il web server Perl: linguaggio di script flessibile e di facile utilizzo mod_perl: interprete Perl per Apache OpenCA: software utilizzati Apache: server web utilizzato sia come server per l RA Server ed il Public Server, sia come interfaccia ai programmi di supporto sulla CA Autoconf: tool per configurare makefiles e creare packages Setup di una CA su Linux 59 Setup di una CA su Linux 60 10

OpenCA: ciclo di vita degli oggetti OpenCA: interfacce Node: serve per lo scambio di dati, per la gestione del database e per l import/export functionalities CA: ha tutte le funzionalità per creare certificati e revocare certificati Setup di una CA su Linux 61 Setup di una CA su Linux 62 OpenCA: interfacce RA: server on-line che usa https per editare, approvare e cancellare richieste LDAP: componente che implementa il relativo standard per l accesso alle directory tramite la rete internet è utilizzato come repository per i certificati digitali all'interno della PKI OpenCA: interfacce PUB: interfaccia pubblica che include tutte le funzionalità per l utente 1. genera CSR(certificate signing request) per IE, Mozilla 1.1 e Netscape Navigator 2. genera richieste e chiavi private 3. riceve dai server richieste PKCS#10 in formato PEM Setup di una CA su Linux 63 Setup di una CA su Linux 64 OpenCA: interfacce 1. rilascia certificati 2. elenca cerificati e CRL 3. cerca certificati e testa certificati nel browser Setup OpenCA Installazione Configurazione Apache Inizializzazione CA Configurazione CA Server management di CA CA handling RA PUB Setup di una CA su Linux 65 Setup di una CA su Linux 66 11

Installazione I passi fondamentali sono: 1. scaricare il codice sorgente dal sito www.openca.org 2. scompattare l'archivio (tar -xvfz openca- 0.9.1.8.tar.gz) 3. posizionarsi nella directory dell'archivio scompattato Installazione 4. configurare i sorgenti 5. compilare i sorgenti 6. installare il software (poi vedremo!!!) Setup di una CA su Linux 67 Setup di una CA su Linux 68 Installazione Requisiti software: 1. Perl 5.1.8 o successive 2. OpenSSL 0.9.7 o successive I primi 3 passi sono immediati, restano da spiegare la configurazione e la compilazione Installazione: configurazione Configurazione della CA offline: per configurare la CA basta lanciare il comando configure con i seguenti parametri: [root@localhost anto]#./configure --with-openca-prefix=/usr/local/openca --with-web-host=www.my_ca.it --with-httpd-user=apache --with-httpd-group=101 Setup di una CA su Linux 69 Setup di una CA su Linux 70 Installazione: configurazione --with-caorganization=progetto_sicurezza --with-ca-locality=fisciano --with-ca-country=it --with-service-mail-account=arna-@libero.it --with-hierarchy-level=ca --with-module-prefix=/usr/local Installazione: configurazione Spiegazione parametri: --with-openca-prefix=/usr/local/openca: directory in cui vengono installate le componenti --with-web-host=www.my_ca.it: indica l URL per i servizi forniti dalla CA --with-httpd-user=apache: setta lo username di Apache --with-httpd-group=101: identifica il gruppo a cui appartiene l utente Apache Setup di una CA su Linux 71 Setup di una CA su Linux 72 12

Installazione: configurazione --with-hierarchy-level=ca: stabilisce il livello al quale la CA agisce nella gerarchia --with-module-prefix=/usr/local: stabilisce la directory nella quale vengono installati i moduli perl I parametri precedenti sono gli unici strettamente necessari nel caso in cui si siano installati gli altri software preventivamente tramite rpm e non si voglia utilizzare SQL Installazione: configurazione Configurazione dell RA: lanciamo configure con gli stessi parametri come per la ca offline cambiando solo il livello nella gerarchia al quale agisce l'ra --with-hierarchy-level=ra Setup di una CA su Linux 73 Setup di una CA su Linux 74 Installazione: compilazione Compilazione di codice comune per tutte le componenti della CA: [root@localhost anto]#./make Per verificare se la compilazione è andata a buon fine: [root@localhost anto]#./make-test Installazione: compilazione Compilazione di codice della ca e canode: [root@localhost anto]#./make install-ca Tale comando crea 4 directory in /usr/local: OpenCA, apache, man, perl5 Compilazione di codice per ra,ranode,public,ldap: [root@localhost anto]#./make install-ext Setup di una CA su Linux 75 Setup di una CA su Linux 76 Installazione: compilazione Le interfacce html delle componenti vengono installate nella directory /usr/local/apache/htdocs Gli script-cgi relativi vengono installati in /usr/local/apache/cgi-bin Configurazione Apache: concetti preliminari File di configurazione del demone httpd: /etc/httpd/conf/httpd2.conf È un file di configurazione xml-based Vediamo quali sono i concetti fondamentali per settare Apache Setup di una CA su Linux 77 Setup di una CA su Linux 78 13

Configurazione Apache: concetti preliminari Virtual host: tag che permette di eseguire più di un sito web (es. www.pippo1.it e www.pippo2.it) sulla stessa macchina. Può essere di 2 tipi: 1. Ip-based 2. Name-based Configurazione Apache: concetti preliminari Directive: comando di configurazione che controlla uno o più aspetti del comportamento di Apache Directory: sottosezione di virtual host che serve a definire il comportamento di una sottodirectory della directory root Setup di una CA su Linux 79 Setup di una CA su Linux 80 Configurazione Apache: CA L interfaccia grafica della componente CA offline si serve di Apache E necessario modificare il file httpd2.conf Configurazione Apache: CA Nuova sezione virtual host: Configurata sull indirizzo di loopback Prende come URL il valore del parametro with-web-host Setup di una CA su Linux 81 Setup di una CA su Linux 82 Configurazione Apache: CA Codice della nuova sezione: <VirtualHost www.my_ca.it> ServerAdmin arna-@libero.it DocumentRoot /usr/local/apache/htdocs ServerName www.my_ca.it Configurazione Apache: CA <Directory /usr/local/apache/htdocs> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all </Directory> Setup di una CA su Linux 83 Setup di una CA su Linux 84 14

Configurazione Apache: CA ScriptAlias /cgi-bin/ /usr/local/apache/cgibin/ <Directory /usr/local/apache/cgi-bin> AllowOverride None Options None Order allow,deny Allow from all </Directory> </VirtualHost> Configurazione Apache: CA ServerAdmin: setta l'indirizzo e-mail dell'amministratore del sito DocumentRoot: setta il nome host e la porta che il web server usa per essere identificato La porta di default è 80 Setup di una CA su Linux 85 Setup di una CA su Linux 86 Configurazione Apache: CA Options: caratteristiche del server abilitate per la directory usr/local/apache/htdocs Indexes: crea l'indice html dei file nella directory /usr/local/apache/htdocs Configurazione Apache: CA FollowSymlinks: segue i link simbolici nella medesima directory MultiViews: negozia parametri come descritto in HTTP1.1 Setup di una CA su Linux 87 Setup di una CA su Linux 88 Configurazione Apache: CA AllowOverride: settata a none indica che il file.htaccess per il servizio specifico non può sovrascrivere le direttive di configurazione del file httpd2.conf Order: controlla l'ordine in cui allow e deny sono valutate determinando così la politica degli accessi Configurazione Apache: CA Allow: stabilisce in base all'ip quali hosts hanno accesso all'area specifica nella quale la direttiva è inserita Setup di una CA su Linux 89 Setup di una CA su Linux 90 15

Configurazione Apache: CA Script Alias: Prende 2 argomenti URL-path: è un alias per il path (secondo argomento) File-path: path nel file-system dove risiedono gli script cgi Configurazione Apache: RA Anche le altre interfacce hanno bisogno di sezioni virtual host per essere configurate: Codice: Listen 127.0.0.3:443 <VirtualHost 127.0.0.3:443 > Setup di una CA su Linux 91 Setup di una CA su Linux 92 Configurazione Apache: RA ServerAdmin arna-@libero.it DocumentRoot /usr/local/apache/htdocs ServerName www.my_ra.it SSLEngine on SSLCertificateFile /usr/local/openca/var/crypto/cacerts/cacert.pe m SSLCertificateKeyFile /usr/local/openca/var/crypto/keys/cakey.pem Configurazione Apache: RA <Directory /usr/local/apache/htdocs/pub/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all </Directory> Setup di una CA su Linux 93 Setup di una CA su Linux 94 Configurazione Apache: RA <Directory /usr/local/apache/htdocs/ra/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from 127.0.0.3 </Directory> Configurazione Apache: RA <Directory /usr/local/apache/htdocs/ra_node/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from 127.0.0.3 </Directory> Setup di una CA su Linux 95 Setup di una CA su Linux 96 16

Configurazione Apache: RA <Directory /usr/local/apache/htdocs/ldap/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from 127.0.0.3 </Directory> Setup di una CA su Linux 97 Configurazione Apache: RA ScriptAlias /cgi-bin/ /usr/local/apache/cgi-bin/ <Directory /usr/local/apache/cgi-bin> AllowOverride None Options None Order allow,deny Allow from all </Directory> </VirtualHost> Setup di una CA su Linux 98 Configurazione Apache: RA Utilizza il protocollo https sulla porta 443 Nuove direttive: Listen: Mette apache in ascolto sulla porta 443 SSLEngine: settata ad On per abilitare il supporto SSL necessario per https Configurazione Apache: RA SSLCertificateFile: specifica il path del certificato della CA in formato pem SSLCertficateKeyFile: specifica il path della chiave privata della CA Setup di una CA su Linux 99 Setup di una CA su Linux 100 Configurazione Apache: avvio Httpd2 è un demone è lanciato allo start up del sistema dal superdemone initd Httpd2 risiede in /usr/sbin Avvio: httpd2 k start Configurazione Apache: avvio Riavvio: httpd2 -k restart rende immediate le modifiche di configurazione senza dover riavviare il sistema Arresto: httpd2 -k stop Non resta altro che lanciare mozilla e digitare l url www.my_ca.it!! Setup di una CA su Linux 101 Setup di una CA su Linux 102 17

Inizializzazione CA Inizializzazione CA Inizializzazione suddivisa in 3 fasi: 1. 2. 3. Inizialize the Certification Authority Create the initial administrator Create the initial RA certificate Setup di una CA su Linux 103 Inizializzazione CA: fase 1 Si suddivide ulteriormente in cinque passi: 1. DBSetup: inizializza il database per la CA 2. Key pair Setup: genera e cifra la chiave privata della CA 3. Request Setup: genera la richiesta di certificazione per la CA stessa 105 2. Setup di una CA su Linux 106 Inizializzazione CA: fase1dbsetup Inizializzazione CA: fase 1 1. 104 Inizializzazione CA: fase 1 Crea la configurazione iniziale per la CA Setup di una CA su Linux Setup di una CA su Linux Certificate Setup: genera il certificato della CA Final Setup: 1. 2. Costruisce la catena di certificati necessari Esporta l intera configurazione su floppy Setup di una CA su Linux Inizializza il modulo DBI per la CA 107 Setup di una CA su Linux 108 18

Inizializzazione CA: fase1 Key pair Setup Inizializzazione CA: fase1 Key pair Setup Vengono mostrati 3 prompt: Imposta l algo di cifratura per la chiave privata Imposta la lunghezza della chiave 3. Imposta la passphrase per la cifratura della chiave 1. Directory nella quale viene messo il certificato della CA 2. Mostra info sull algo e sulla modalità operativa utilizzata Setup di una CA su Linux 109 Inizializzazione CA: fase1 Request Setup Chiave privata cifrata e formattata in formato PEM Setup di una CA su Linux 110 Inizializzazione CA: fase1 Request Setup 1. Genera la richiesta di certificato per la CA. Ci vengono chieste info per il Disntiguished Name quali: E-mail Common Name Organization Unit Name Organization Name Iso-Country 2. Setup di una CA su Linux Campi del Distinguished Name che identifica la CA 111 Inizializzazione CA: fase1 Certificate Setup Setup di una CA su Linux 112 Inizializzazione CA: fase1 Final Setup Ricostruisce la catena di certificazione, nel caso in cui il certificato non sia autofirmato Genera il certificato autofirmato Viene salvato in /usr/local/openca/var/crypt o/cacerts/cacert.pem Esporta, per sicurezza, la configurazione attuale su floppy Setup di una CA su Linux 113 Setup di una CA su Linux 114 19

Inizializzazione CA: fase 2 Inizializzazione CA: fase 2 Crea il profilo ed il certificato per il primo operatoreamministratore della CA Crea la richiesta di certificazione per il primo amministratore della CA. Il ruolo impostato dovrà essere CA-Operator Setup di una CA su Linux 115 Setup di una CA su Linux 116 Inizializzazione CA: fase 2 Inizializzazione CA: fase 2 Specifica il gruppo di chi effettua la richiesta. In questo caso usiamo TrustCenter Specifica il ruolo del richiedente. In questo caso è CA Operator Setup di una CA su Linux 117 Setup di una CA su Linux 118 Inizializzazione CA: fase 2 Inizializzazione CA: fase 2 PIN usato per verificare la richiesta di certificazione RA alla quale inoltrare la richiesta. Utilizziamo TrustCenter itself Setup di una CA su Linux 119 Setup di una CA su Linux 120 20

Inizializzazione CA: fase 2 Inizializzazione CA: fase 2 Lunghezza della chiave privata. 1024 bits è un buon valore Continuiamo Setup di una CA su Linux 121 Setup di una CA su Linux 122 Inizializzazione CA: fase 2 Inizializzazione CA: fase 2 Dati inseriti Richiesta di conferma del certificato Cliccando su here si visualizza la lista delle richieste pendenti sul server RA Setup di una CA su Linux 123 Setup di una CA su Linux 124 Inizializzazione CA: fase 2 Inizializzazione CA: fase 2 ID della richiesta Distinguished Name Data di sottomissi one della richiesta Ruolo delle Richiesta Permette di rimodificare i campi della richiesta Setup di una CA su Linux 125 Setup di una CA su Linux 126 21

Inizializzazione CA: fase 2 Inizializzazione CA: fase 2 Dati della richiesta Permette di rilasciare il certificato o di cancellare la richiesta. Queste operazioni sono effettuabili solo immettendo la passphrase Setup di una CA su Linux 127 Setup di una CA su Linux 128 Inizializzazione CA: fase 2 Inizializzazione CA: fase 2 Rilascia il certificato (richiede passphrase) Il certificato viene memorizzato in /usr/local/openca/var/cry pto/certs Cancella la richiesta Operazioni effettuabili sul certificato Setup di una CA su Linux 129 Setup di una CA su Linux 130 Inizializzazione CA: fase 2 Inizializzazione CA: fase 2 Scarica il certificato e la chiave privata cifrata nel browser dell utente in un formato prestabilito. Per Mozilla tale formato è PKCS12 Modifica della passphrase per la CA Inizia la procedura di revoca del certificato e la rimozione della chiave pubblica dal Database Permette di scaricare il certificato su un dispositivo di sicurezza quale es. SmartCard Setup di una CA su Linux 131 Setup di una CA su Linux 132 22

Inizializzazione CA: fase 3 Configurazione CA Crea il certificato per l amministratore iniziale dell RA Visualizza i ruoli possibili e permette di aggiungerne nuovi Tali fasi sono le stesse descritte nel caso precedente Setup di una CA su Linux 133 Setup di una CA su Linux 134 Configurazione CA Configurazione CA Ruoli possibili Aggiunge un ruolo di certificazione ACL dei moduli della PKI. Visualizza info e proprietario di ogni modulo Setup di una CA su Linux 135 Setup di una CA su Linux 136 Configurazione CA Configurazione CA Simile al punto precedente. Permette di firmare, esportare e importare l'intera configurazione della PKI. Operazioni possibili Setup di una CA su Linux 137 Setup di una CA su Linux 138 23

Configurazione CA Configurazione CA Visualizza i moduli delle PKI e permette di aggiungerne nuovi. Mostra gli script relativi alle operazioni Setup di una CA su Linux 139 Setup di una CA su Linux 140 Configurazione CA Server management di CA permette di accedere alle interfacce degli altri moduli dell'openca quali RA LDAP e Public Mostra gli scripts che implementano le operations e permette di cancellare lo script relativo ad un'operation implementa caratteristiche fondamentali per la comunicazione del modulo CA con gli altri moduli Setup di una CA su Linux 141 Setup di una CA su Linux 142 Server management di CA Gestione CA inizializza il Database e permette di importare la configurazione della CA nel nodo permette l import/export della configurazione effettua il backup di tutto il contenuto del database; c'è la possibilità sia di reinizializzare il Database che di effettuarne il restore Sezioni per la gestione della CA Setup di una CA su Linux 143 Setup di una CA su Linux 144 24