El primer paso que tendremos que hacer será generar un certificado SSL para nuestro Apache.
Instalaremos los paquetes necesarios:
# aptitude install openssl
Activamos el módulo SSL en nuestro Apache:
# a2enmod ssl
Creando el certificado:
Creamos la clave privada RSA, para equilibrar entre seguridad y compatibilidad será de fotaleza 1024 bits:
# openssl genrsa -out servidor.key 1024
Protegemos la clave privada quitando privilegios:
creamos el certificado sin cifrar para que cada vez que se inicie el apache no nos pida la clave de acceso:
# openssl req -new -x509 -nodes -sha1 -days 365 -key servidor.key -out servidor.crt
Respondemos a las preguntas del estándar X.509.
Unimos la clave y el certificado para que pueda ser utilizado por apache:
# cat servidor.crt servidor.key > servidor.pem
# rm servidor.key
Protegemos la clave privada quitando privilegios:
# chmod 400 servidor.pem
Creamos los directorios donde pondremos la clave y el certificado para el apache:
# mkdir -p /etc/apache2/ssl
# mkdir -p /etc/apache2/crt
Moveremos la clave y el certificado en dichos directorios:
# mv servidor.pem /etc/apache2/ssl
# mv servidor.crt /etc/apache2/crt
Ahora crearemos un sitio web de ejemplo que utilice SSL:
Crearemos los ficheros del ejemplo:
# mkdir -p /var/www/ejemploSSL
# echo Esta es una web de ejemplo con SSL > /var/www/ejemploSSL/index.html
Crearemos el site del ejemplo:
# nano /etc/apache2/sites-available/ejemploSSL
En en fichero ejemploSSL introduciremos:
ServerName tuservidor.com
ServerAlias tuservidor
SSLEngine on
SSLCertificateFile /etc/apache2/crt/servidor.crt
SSLCertificateKeyFile /etc/apache2/ssl/servidor.pem
DocumentRoot /var/www/ejemploSSL/
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
ErrorLog /var/log/apache2/ejemplossl-err.log
TransferLog /var/log/apache2/ejemplossl-transfer.log
Guardaremos y cerraremos el fichero.
Ahora habilitaremos el site:
# a2ensite ejemploSSL
Recargaremos la configuración del apache:
# /etc/init.d/apache2 force-reload
ó
# service apache2 force-reload
Comprobaremos la dirección:
https://nuestro_host/ejemploSSL
Nota: recordad abrir el puerto 443 (SSL) a vuestro firewall para que funcione!
Ya tenemos nuestra site con SSL ;-)
Una guía genial, muy bien comentado todo.Muchas gracias!!
ResponderEliminarSólo un apunte... en el último apartado: comproBaremos
;D
Un abrazo!