Configuracion de SSL en Apache, tanto en Windows como en Linux y OpenSolaris
Windows:
1) Instalar el apache.
Se deben descargar los binarios desde http://apache.adcserver.com.ar/httpd/binaries/win32/ e instalarlos, apache_2.2.9-win32-x86-openssl-0.9.8h-r2.msi . Es importante que se descargue el openssl
2) Instalar el OpenSSL.
Se deben descargar los binarios de http://www.slproweb.com/products/Win32OpenSSL.html ,el paquete tiene como requisito los Visual C++ 2008 Redistributable que se descargan desde el mismo sitio.
3) Crear los certificados:openssl req -new -out NOM_HOST.csr -keyout NOM_HOST.pem
Como nota, en la serie de preguntas que realiza, cuando solicita ingresar el Common Name se debe ingresar un valor igual al de NOM_HOST
openssl rsa -in NOM_HOST.pem -out NOM_HOST.key openssl x509 -in NOM_HOST.csr -out NOM_HOST.cert -req -signkey NOM_HOST.key -days 365
Donde NOM_HOST es el nombre del host
4) Habilitar el modulo SSL en el apache.
Se debe descomentar la siguiente linea en el archivo httpd.conf
LoadModule ssl_module modules/mod_ssl.so
y agregar
listen 443
ServerName NOM_HOST
SSLEngine on
SSLCertificateFile C:\certificados\NOM_HOST.cert
SSLCertificateKeyFile C:\certificados\NOM_HOST.key
Se reinicia el servidor web, en el browser se apunta a https://localhost, pide que se acepte el certificado y ya esta funcionando con SSL.
He intentado configurar el SSL en el apache-nossl que esta en el site, agregarle el modulo y demas yerbas pero no me funciono.
Linux:
La creacion del certificado y su firma es la misma que en el caso de Windows en el item 3.
deki:/etc/apache2/sites-available#a2enmod ssl
Module ssl installed; run /etc/init.d/apache2 force-reload to enable.
4.2) Modificar el archivo /etc/apache2/ports.conf agregando la linea
Listen 443
4.3) Configurar el host para usar SSL
Ya tenia en uso un vhost, asi que lo copie con otro nombre (lo llame dekiseguro) y las modificaciones que le hice fueron las siguientes:
SSLEngine on SSLcertificateFile /opt/certs/nom_host.cert SSLCertificateKeyFile /opt/certs/nom_host.key Posteriormente se debe habilitar el vhost
deki:/etc/apache2/sites-available# a2ensiteWhich site would you like to enable?Your choices are: default deki dekiseguro Site name? dekiseguroSite dekiseguro installed; run /etc/init.d/apache2 reload to enable.Una vez reiniciado o recargado el apache ya esta; y como solucion medio truchaal vhost que apuntaba al puerto 80 le agregue las ultimas 3 lineas.
Bad Request
Your browser sent a request that this server could not understand.
Reason: You’re speaking plain HTTP to an SSL-enabled server port.
Instead use the HTTPS scheme to access this URL, please.
Hint: https://deki/