OpenSSL permette di implementare il protocollo SSL V2/V3 (Secure Sockets Layer) e il protocollo TLS V1 (Transport Layer Security) e consiste in un insieme di librerie per uso generale utilizzabili da terzi programmi.
E' un progetto interamente sviluppato da volontari e si basa sulle librerie SSLeay sviluppate da Eric A. Young e Tim J. Hudson. Le librerie non sono soggette a licenza GPL ma ad una licenza Apache-Style ovvero sia ha la possibilità di utilizzarle anche per uso commerciale ma con alcune limitazioni espresse nella licenza.
L'installazione tramite sorgenti o binari si effettua come qualsiasi altro package.
Procedura di massima per l'installzione di OpenSSL tramite sorgenti
- Scaricare i sorgenti dal sito ufficiale e verificare MD5Sum.
- Scompattare il package:
[root@dido src]# tar zxvf openssl-0.9.6g.tar.gz
- Lanciare lo script configure con le opzioni che si preferiscono.
Storicamente la directory di installazione di OpenSSL e' /usr/local/ssl:
[root@dido src]# cd openssl-0.9.6g
E' possibile richiamare l'elenco delle opzioni disponibili con il seguente comando
[root@dido openssl-0.9.6g]# ./config --help
[.....]
Lo script config dovrebbe in modo del tutto automatico capire per quale sistema si stanno compilando le librerie, nel caso in cui dovesse fallire è possibile intervenire manualmente specificando le direttive
[root@dido openssl-0.9.6g]# ./config
Operating system: i686-whatever-linux2
Configuring for linux-elf
Configuring for linux-elf
IsWindows=0
[...]
Da tenere presente che non e' necessario installare del tutto le librerie per installare mod_ssl, ma potrebbe essere necessario per altri package come OpenSSH.
- Compilare con il comando make con le varie opzioni per la compilazione ed installazione:
[root@dido openssl-0.9.6g]# make
Per eseguire Test di verifica:
[root@dido openssl-0.9.6g]# make test
Per eseguire l'installazione delle librerie, binari e manuali
[root@dido openssl-0.9.6g]# make install
Oppure lanciare tutti e tre i comandi in una singola linea di comando
[root@dido openssl-0.9.6g]# make all test install > compile.log
Compilazione delle librerie Dinamiche
E' possibile compilare OpenSSL in modo tale che vengano caricate come librerie dinamiche, la procedura cambia a seconda dell'OS ma chi utilizza Linux può appoggiarsi al comando make specificando come target linux-shared e spostare manualmente le librerie.
[root@dido openssl-0.9.6g]# make
[...]
[root@dido openssl-0.9.6g]# make test
[...]
Occorre lanciare prima il comando make install poiché deve creare l'enviroment per librerie che si dovranno spostare manualmente
[root@dido openssl-0.9.6g]# make install
[...]
[root@dido openssl-0.9.6g]# make linux-shared
[...]
[root@dido openssl-0.9.6g]# mv lib* /usr/local/apache/libexec/ssl
[root@dido openssl-0.9.6g]# chmod 0664 /usr/local/apache/libexec/ssl/lib*
Installazione e configurazione di openssl e mod_ssl, Creazione di chiavi e certificati.