lunedì 5 novembre 2012

Installare certificato SSL su Apache 2.X

SSL + APACHE 2.X

Questo breve testo illustra come abilitare SSL sul proprio web server Apache.
I passi da compiere al fine di abilitare il protocollo HTTPS su Apache sono:
  1. Creare il certificato
  2. Installare il modulo mod_ssl
  3. Configurazione del server web / virtualhost
Creiamo il certificato ssl

Procuriamoci openssl e installiamolo.

Per Debian e derivate:
  • apt-get install openssl
Per Fedora/Centos:
  • yum install openssl
Creiamo il certificato
  • openssl req -newkey rsa:1024 -x509 -nodes -days 365 -out /etc/apache2.pem -keyout /etc/apache2.pem
  •  ATTENZIONE: il valore 365 indica i giorni di validità del certificato

Abilitiamo mod_ss 

Per Debian e derivate basta semplicemente abilitare il modulo:
  • a2enmod ssl
Per  Fedora / Centos:
  • yum install mod_ssl
  • echo LoadModule ssl_module modules/mod_ssl.so >> /etc/httpd/conf.d/ssl.conf
Configuriamo Apache e virtualhost

Il protocollo HTTPS scambia informazioni dalla porta 443. A tal fine è necessario aprire tale porta.
Per Debian / Ubuntu:
echo 443 >> /etc/apache2/ports.conf 

Per  Fedora / Centos: 
echo 443 >> /etc/httpd/conf.d/ssl.conf 

Configuriamo il virtualhost:
<VirtualHost www.9w9.org:443>
DocumentRoot “/var/www/sito/htdocs”
ServerName www.9w9.org
SSLEngine on
SSLCertificateFile /etc/apache2.pem
</VirtualHost>

Dove al posto di 9w9.org bisogna mettere il nome del proprio dominio.

Adesso propagate le modifiche riavviando apache:
Per Debian e derivate:
/etc/init.d/apache2 restart
Per Fedora / Centos:
/etc/init.d/httpd restart

Buon HTTPS a tutti!