Siéntete en la libertad de compartir nuestro espacio y códigos en tus redes sociales, necesitamos de tu ayuda para hacer crecer esta comunidad.
Solución:
Tutorial PASO A PASO
Copiado del enlace:
Habilitación de SSL en WAMP
Esta guía paso a paso explica cómo puede habilitar SSL en WAMP.
-
Descargue WampServer 2.0 desde aquí e instálelo en la ubicación predeterminada (c:wamp).
-
Ahora, necesitamos tener un privado/público key par, así como una CA para firmar nuestro público key.
Primero, veamos cómo podemos crear un privado/público key par.
keytool -genkey -alias rpcert -keyalg RSA -keysize 1024 -dname "CN=identity-rp,L=SL,S=WS,C=LK" -keypass wso2key -keystore rpkeystore.jks -storepass wso2key
Esto creará un almacén de claves. [rpkeystore.jks] con público/privado key par.
Mi publicación anterior explica cómo puede exportar su privado key del almacén de claves. Simplemente siga los pasos que se dan allí y terminará con un servidor de archivos.keyque es tu privado key.
Ahora, necesitamos firmar nuestro certificado público con una CA.
Esto requiere que creemos una CA de muestra y, a continuación, se explica cómo hacerlo.
Aquí usamos OpenSSL para construir la infraestructura de CA requerida. Para Windows, puede descargar Win32 OpenSSL v0.9.8g desde aquí.
Una vez instalado, asegúrese de agregar C:OpenSSLbin [i.e [INSTALLED_LOCATION]bin]
a la variable de entorno PATH.
openssl req -x509 -newkey rsa:1024 -keyout cakey.pem -out cacert.crt
Lo anterior creará un público/privado key par para nuestra muestra CA.
Ahora, necesitamos crear una solicitud de firma de certificado para nuestro servidor.
Vaya a la carpeta donde creó el almacén de claves [rpkeystore.jks] y emita el siguiente comando.
keytool -certreq -v -alias rpcert -file csr.pem -keypass wso2key -storepass wso2key -keystore rpkeystore.jks
Ahora copie el csr.pem a la carpeta donde generó keys para la CA y emita el siguiente comando desde allí.
openssl x509 -req -days 365 -in csr.pem -CA cacert.crt -CAkey cakey.pem -CAcreateserial -out server.crt
Por ahora tenemos todos los archivos requeridos.
cacert.crt –> Certificado público de CA server.crt –> Certificado público de servidor firmado por el servidor de CA.key –> Servidor privado key.
Copie los tres archivos anteriores en c:wampbinapacheapache2.2.8conf
asumiendo que instaló WAMP en la ubicación predeterminada.
Edite también el archivo c:WINDOWSsystem32driversetchosts y agregue la siguiente entrada.
127.0.0.1 identity-rp
Si recuerda, cuando creamos el certificado público para nuestro servidor, lo creamos para la identidad-rp.
- Editar httpd.conf [C:wampbinapacheapache2.2.8conf]
Descomente las siguientes dos líneas.
LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf
Busque Listen 80 y cámbielo a Listen 12081; es decir, nuestro servidor se ejecuta en el puerto número 12081.
Busque ServerName y configúrelo en ServerName Identity-rp:12081.
-
Editar httpd-ssl.conf [C:wampbinapacheapache2.2.8confextra]
Configure Escuchar identidad-rp: 12444: estamos escuchando el puerto 12444 para una comunicación segura.
Colocar
Establecer DocumentRoot “C:/wamp/www/”
Establezca la identidad de ServerName-rp: 12444
Para el archivo completo, busque “C:/Program Files/Apache Software Foundation/Apache2.2” y reemplácelo con “C:/wamp/bin/apache/apache2.2.8”.
Busque SSLCertificateFile y establezca SSLCertificateFile “C:/wamp/bin/apache/apache2.2.8/conf/server.crt”
Busque SSLCertificateKeyFile y establezca SSLCertificateKeyFile “C:/wamp/bin/apache/apache2.2.8/conf/server.key”
Busque SSLCACertificateFile y configure SSLCACertificateFile “C:/wamp/bin/apache/apache2.2.8/conf/cacert.crt”
- Edite php.ini (C:wampbinapacheapache2.2.8bin)
Descomentar la línea extension=php_openssl.dll
-
Ahora hemos terminado: realice una verificación de sintaxis e inicie el servidor apache.
:> cd C:wampbinapacheapache2.2.8bin :> httpd -t :> httpd –start
-
Escribe
https://identity-rp:12444
en su navegador; verá un error de certificado en el navegador; para evitarlo, instale el certificado CA en su navegador.
La manera fácil para la comunicación SSL / HTTPS del host local (NOTA: ESTO NO ES SEGURO PARA TODO EXCEPTO PARA EL HOST LOCAL EN UNA RED DE CONFIANZA):
Ve a guardar lo siguiente como c:/wamp/bin/php/php5.5.12/cacert.pem
u otro camino de su elección (deberá recordar el camino para el siguiente bit)
-----BEGIN CERTIFICATE-----
MIIDBzCCAe+gAwIBAgIJAMoCZ6uI7u4zMA0GCSqGSIb3DQEBBQUAMBoxGDAWBgNV
BAMMD3d3dy5leGFtcGxlLmNvbTAeFw0xOTA4MTIxMzM4MTBaFw0yOTA4MDkxMzM4
MTBaMBoxGDAWBgNVBAMMD3d3dy5leGFtcGxlLmNvbTCCASIwDQYJKoZIhvcNAQEB
BQADggEPADCCAQoCggEBAK3y7R7lAlBHhoPLx2zvfv/mjSy1clk0HAaSgGDSpl6R
Qs5WrIesS3hkfEoRrWkZOx2/B6bqPbrSsoGRwFrG5Qd5P5OXGZTS51xy9z/9raa7
sDH++z7UF6MvF0oATjGOjpIEtmMZMd+oePGghGrilNxE7sJBd8Y5tyMyhf2azk2B
euRJoerhOot8QRkSYqqsUcfOp7K18LGmPKPUkc6guJsv/86GfXZrkQIudlkyvDsk
sIXIj5wvJbZIDizF4NytyuGgIJxTlRmtAgwmcq8UXdnHBZjNyvCZ7ADO+LlvEvRn
fSuDWYKs5MCcgUZkBUB2f3Quc6pCGULuK2nr+VPY0asCAwEAAaNQME4wHQYDVR0O
BBYEFBTtO54yB99DIK0n2GBVJzKvLkY8MB8GA1UdIwQYMBaAFBTtO54yB99DIK0n
2GBVJzKvLkY8MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAKr+ZBse
u+df6AG7qCm5NqmvxDVNloqLLIv8mQpUZrIuoWcpmFdXGcMKkpQD7B+mqxVaIfii
JGuc+tuYCcc5n4M2SBawVsLeYK4y79QU+SHYdb2z5Fk105/T/p6SV6aK4lqxvnPL
OQaOO+WHS3alITPk3tDRHJ68iR6KndXecl0hPTe7Y7e74/f94DCAeVK/QyKwkbOS
3pdA0f+AlGiTRaNjc3PFJRgNeUsvwGt0aP+MgimFSLyLpyZiXbux7OCOpKnjeWtO
B3i3in9rnNg2ArpFKQ30bojddEN87bVORJmqgX92oEpS02e1/f72w538oD+F84Uc
lKxvjPlcgIuU+sY=
-----END CERTIFICATE-----
En php.ini
* descomentar y cambiar:
curl.cainfo = "c:/wamp/bin/php/php5.5.12/cacert.pem"
- Puede encontrar dónde está su
php.ini
el archivo está en su máquina ejecutandophp --ini
en su CLI o creando un archivo phpinfo y cargándolo en el navegador - Coloqué mi cacert.pem en el mismo directorio que php.ini para mayor facilidad.
curl.cainfo =
debe configurarse donde haya guardado su propio cacert.pem
Solución simple:
Los tutoriales anteriores a 2018 son viejos y enormes… Sin embargo, hoy en día, solo necesitas cosas simples:
- Cargando 2 módulos Apache.
- Generando certificado
- Agregar certificado en el archivo Virtual-Hosts.
(Puede encontrar este artículo bastante útil).