Tener HTTPS gratis en tu web

Siempre aprendo algo genial en los momentos menos inesperados.
Podría decir que ha sido después de una intensa investigación, pero no sería verdad. Una llamada por Skype de mi amigo @alfa2514 y un…
“- ¿Sabías que…?” ¡Han sido suficientes para conseguir HTTPS gratis en mi web!

Aviso

Ojo, no pensemos que vamos a tener HTTPS por todas partes sin parar, gracias a esta asociación tenemos acceso a un HTTPS por persona y web (que por lo que he entendido luego no podría cambiar a otra web, aunque se renueva anualmente)

También nos van a pedir un montón de datos que es mejor que sean totalmente válidos.

No va a valerte un hosting compartido, necesitas al menos un VPS (hasta donde yo se)

¿Pero funciona funciona? Pues la web de @alfa2514 -> desrack.com parece que no tiene ningún problema, pero… ¡Vamos a ponerlo en HelpDev.org!

Tener HTTPS gratis

Primero de todo entramos a la web Startssl, en el menú de la izquierda pulsa sobre Start SSL Products y luego en Start SSL Free, aquí vas a encontrar la información relacionada con este tipo de certificado.

Vayamos ahora a Control panel situado en la parte superior derecha y de las 3 opciones pulsamos Express.

ssl1

 

Rellena el formulario con tus datos correctos y pulsa en continue.

ssl2

Nos van a pedir un código que acaban de enviarnos por correo, lo ponemos y otra vez continue.

ssl3

Para variar en esta ocasión pulsaremos continue cuando nos diga que va a generar una clave privada.

ssl4

Ya queda menos, pulsa install.

ssl5

¿Que está pasando?

ssl6

En este punto nuestro navegador está autenticado con nuestro nuevo certificado y podemos iniciar sesión en  las StartSSL authentication areas usándolo.

Ahora nos pulsamos en continue y ya nos pide un dominio, yo prefiero la vista clásica con lo cual he pulsado en el botón superior derecho de Classic View y después en Validations Wizard en este punto deberías ver lo siguiente.

ssl7

Importante: Ahora en el selector selecciona DOMAIN Name Validation y pulsa continue.

ssl8

Escribimos nuestro dominio y adivina.. continue.

ssl9

Escoge al correo que quieres que te escriban para validarte, aparecen unos por defecto más el que tienes en el whois.

ssl91

Repetimos el paso del código de verificación con el que han enviado a este correo.

Te prometo que ya queda poco… ahora pulsamos en Certificates Wizard y seleccionas la misma opción que en la siguiente imagen.

ssl92

Pon una contraseña para el certificado que solo sepas tú y pulsa en continue

ssl93

Veremos un textarea con un código que debemos guardar, abre tu bloc de notas, y guárdalo cómo ssl.key

ssl94

Continuamos, nos pedirá para que dominio queremos añadir el certificado, solo tenemos uno, en mi caso helpdev.org y continuamos.

Ahora viene un punto interesante, podemos añadir este certificado a un subdominio de la web, lo normal es poner www pero podéis poner otro si queréis.

ssl95

Veremos otro textarea, en este caso hacemos cómo en el anterior pero el archivo se llamará ssl.crt

El siguiente paso va a ser seleccionar Toolbox en el menú, pulsamos sobre Starcom CA Certificates.

De la ventana que se abre nos interesa clicar con el botón derecho y guardar cómo lo siguiente.

Class 1 Intermediate Server CA. -> sub.class1.server.ca.pem
StartCom Root CA (PEM Encoded) -> ca.pem

ssl96

¡Por fin tenemos nuestro certificado!

Instalando el certificado en un servidor

Una vez lo tenemos, debemos instalarlo, en el caso de mi servidor que es un CentOS con un panel Parallels Plesk y seguiré los siguientes pasos.

Primero subimos los archivos a una carpeta.

ssla1

Nos conectamos por SSH mediante un terminal y desencriptamos ssl.key utilizando este comando

 openssl rsa -in ssl.key -out private.key

ssla2

Ahora voy al panel plesk e instalo los certificados.

ssla3

ssla4

(Nota: ca.crt o ca.pem no hay problema)

Entramos en Home Tools IpAdresses y asociamos el certificado con nuestro dominio

ssla5

Reiniciamos el servidor Apache y.. ¡Listo!

ssla6

Bonus

Cada año vamos a tener que renovar nuestro certificado, para no tener problemas te recomiendo exportar y guardar el certificado que instalamos en nuestro navegador, ya que nos lo va a pedir al renovar.

También es interesante hacer que siempre que entren a http://tuweb vayan directamente a https://tuweb, para ello en mi caso lo hago modificando el .htaccess y añadiendo:

 RewriteCond %{HTTPS} off
 RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Por último comentar una vez más que nada de esto hubiera podido ser sin @alfa2514 me ha ayudado mucho en todo esto y sobretodo me ha guiado para poder tener mi certificado y hacer el artículo, ¡Le debemos todos una ronda!

I use JavaScript, TypeScript, .NET, Node, Cordova and SASS for Web and App development, working at Plain Concepts and HelpDev founder.

Related Posts