Per installare un certificato innanzitutto bisogna assicurarsi di avere installato il supporto SSL sul server web.
Generare una coppia di chiavi con OpenSSL
Andare nella directory dove si vuole generare la coppia di chiavi, esempio:
cd /usr/local/apache/ssl.certs/
e lanciare il comando:
openssl req -new -nodes -keyout private.key -out public.csr
Ora OpenSLL porrā una serie di domande a cui si dovra rispondere.
Assicurarsi che le informazioni inserite siano corrette.
Using configuration from /etc/ssl/openssl.cnf
Generating a 1024 bit RSA private key
.++++++
............++++++
writing new private key to 'private.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
what you are about to enter is what is called a Distinguished Name or a ID.
There are a quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IT
State or province Name (full name) [Some-State]:Milan
Locality Name (eg,city) []:Milano
Organization Name (eg, company) [Internet Widgits Pty Ltd]: pippo spa
Organization Unit Name (eg, section) []:Information Technology
Common Name (eg, YOUR name) []:www.pippo.com
Email Address []:[email protected]
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:password
An optional company name []:
Nel mio esempio ho creato una chiave privata chiamata private.key e una chiave pubblica (CSR) chiamata public.csr.
Attenzione, la chiave privata non č criptata! Lanciare il seguente comando per criptarla:
[root@eberk ssl.certs]# openssl rsa -in private.key -des3 -out secureprivate.key
Nota: con la chiave privata criptata, Apache in fase di start chiederā ogni volta la passphrase inserita durante la generazione della chiave.
Ora cambiarne i permessi di modo che solo root possa leggere il file.
[root@eberk ssl.certs]# chmod 400 secureprivate.key
Rimuovere la vecchia chiave non criptata.
Una volta generato il CSR (e sicuri che i dati inseriti siano corretti) aprire il file con un editor di testi (notepad o VI vanno bene, word no, in quanto aggiunge caratteri invisibili), copiate il contenuto del file in una mail nel seguente modo.
-----BEGIN NEW CERTIFICATE REQUEST-----
MIIBJTCB0AIBADBtMQswCQYDVQQGEwJVUzEQMA4GA1UEChs4lBMHQ
XJpem9uYTENA1UEBxMETWVzYTEfMB0GA1UEChMWTWVs3XbnzYSBDb
21tdW5pdHkgQ29sbGVnZTEA1UEAxMTd3d3Lm1jLm1hcmljb3BhLmV
kdTBaMA0GCSqGSIb3DQEBAQUAA0kAMEYCQQDRNU6xslWjG41163gA
rsj/P108sFmjkjzMuUUFYbmtZX4RFxf/U7cZZdMagz4IMmY0F9cdp
DLTAutULTsZKDcLAgEDoAAwDQYJKoZIhvcNAQEEBQADQQAjIFpTLg
fmBVhc9SQaip5SFNXtzAmhYzvJkt5JJ4X2r7VJYG3J0vauJ5VkjXz
9aevJ8dzx37ir3P4XpZ+NFxK1R=
-----END NEW CERTIFICATE REQUEST-----
Aggiungere nella mail il server software da certificare dopo averne verificato la compatibilitā.
Altre cose da aggiungere sono, se ci sono, i contatti e-mail le varie sezioni aziendali (es sezione tecnica), ed il metodo di pagamento.
Inviata la mail, verrā spedito tramite E-mail il certificato rilasciato dalla CA..
Infine per installare il certificato occorre editare il file di configurazione del server (nel nostro esempio httpd.conf) ed aggiungere i path della chiave privata e del certificato, esempio:
SSLCertificateFile /etc/sslcrt/public.crt
SSLCertificateKeyFile /etc/ssl/crt/private.key
Installazione e configurazione di openssl e mod_ssl, Creazione di chiavi e certificati.