Colocar un ssl en nuestro servidor amazon aws ?
Prerequisitos:
Dominio apuntando anuestro servidor
Tener un certificado ssl en namecheap
Servidor ubuntu 12
Previa instalacion apache PHP 5.5.9
1.- Nos logueamos en namecheap y vamos a nuestro dashboard
2.- Desplegamos el menu y damos click en manage (Del dominio reecrear el certificado)
Nota: En caso de necesitar crear el certificado desde 0 ver este tutorial: Crear certificado
4.- Click en manage
5.- Click en reissue
6.- En esta ventana se nos pide el CSR el cual tenemos que generar en nuestro servidor linux
07.- Creamos una carpeta donde guardaremos nuestros certificados, con el comando
$ mkdir cert_holacaracol
Entramos en la carpeta recien creada con
$ cd cert_holacaracol/
08.- Creamo un nuestra key con el siguiente comando:
$ sudo openssl genrsa -des3 -out holacaracol.com.key
Despues ejecutar este comando se nos va pedir una contraseña
Nota: holacaracol.com.key puede ser el nombre que nosotros querramos
Si ejecutamos el comando
$ ls -l
podemos ver que se creo un archivo llamado holacaracol.com.key
09.- Generamos un csr con este comando:
$ sudo openssl req -new -key holacaracol.com.key -out holacaracol.com.csr
Despues se nos edira la contraseña la contraseña que colocamos en el paso 08 y los datos de nuestra empresa
10.- Sacamos el contenido de nuestro csr con el siguiente comando
$ cat holacaracol.com.csr
Y copiamos el resultado desde
—–BEGIN CERTIFICATE REQUEST—– hasta —–END CERTIFICATE REQUEST—–
Y lo pegamos en namecheap
11.- Pegamos el contenido de nuestro csr en namecheap y seleccionamos como Type server Apache
13.- Seleccionamos email al cual vamos a recibir el crt y precionamos next
14.- Verificamos la info de nuestra empresa, correo y precionamos next
16.- Abrimos el correo de confirmacion, copiamos el codigo abrimos la url , pegamos el codigo y precionamos next
17.- Abrimos el nuevo correo de namecheap y guardamos el .zip que nos envia
Nota: Descomprimismo el .zip
18.- subimos el archivo .crt al la carpeta de nuestro servidor que creamos en el paso 07.
Nota: En mi caso, yo suso webmin para administrar mi servidor, ustedes pueden usar filezilla o winscp o csp.
19.- en nuestra carpeta cert_holacaracol debemos tener 3 archivos
holacaracol_com.crt
holacaracol.com.csr
holacaracol.com.key
20.- No movemos a “sites-available” con el comando
$ cd /etc/apache2/sites-available/
21.- Abrimos para editar el archivo default-ssl.conf
En mi caso voy a usar vim con el siguiente comando
$ sudo vim default-ssl.conf
Y veremos un archivo asi
22.- Carbiamos el texto en los siguientes puntos
a).- Buscamos el texto “SSLEngine on” agregamos la siguientes lineas.
SSLCertificateFile /home/ubuntu/cert_holacaracol/holacaracol_com.crt
SSLCertificateKeyFile /home/ubuntu/cert_holacaracol/holacaracol.com.key
b).- Comentamos con # las siguientes lineas
#SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
#SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
c).- Cambiamos la ruta del Root por la carpeta donde tenemos nuestro proyecto php
DocumentRoot /var/www/html
por
DocumentRoot /var/www/holacaracol
Al final nuestro archivo default-ssl.conf se vera asi
23.- Ejecutamos este comando
$ sudo a2enmod ssl
Este comando sirve para habilitar el modulo ssl
24.- Ejecutamos el comando
$ sudo a2ensite default-ssl.conf
Este comando habilita el archivo default-ssl.conf para saber la hubicacion de nuestros certificados (entre otras cosas)
25.- Reiniciamos apache con este comando:
$ sudo service apache2 restart
Despues de ejecutar este comando nos va a pedir un passphrase, escribimos el pass de la key que colcamos en el paso 08.
26.- Debemos ir a nuestro dominio y escribir https://nuestrodominio.com y debemos ver de primera el candado verde.
Fácil verdad?. Suerte.
Ave que vuela, a la cazuela.