A día de hoy no hay duda de que el comercio electrónico ha llegado para quedarse, cada día son más los marketplaces donde podemos encontrar todo tipo de productos y servicios, desde pequeños comercios locales a gigantes del e-commerce, todos se centran en un solo objetivo: El cliente.
El cliente es el pilar fundamental de todo negocio, sin él no tiene sentido iniciar una nueva aventura empresarial, pues fracasará estrepitosamente. Es por ello que debemos garantizar que el cliente pueda realizar sus compras con la máxima seguridad y fiabilidad posible, aquí es donde entran los certificados ssl.
Qué es un certificado SSL
Un certificado SSL permite la comunicación segura entre dos dispositivos, en este caso, entre el servidor web que aloja una tienda on-line y su cliente, de forma que toda la comunicación pase a estar cifrada, impidiendo que un tercero pueda leer la información que el cliente introduce, esto es esencial en todo el proceso de compra, pero crítico a la hora de la introducción de sus datos personales y bancarios.
Al acceder a un sitio web con certificado SSL, veremos un candado en el navegador y, si procedemos a pulsar sobre la barra de dirección, el protocolo usado, en este caso «https://«.
Desde que Google hace unos años indicara públicamente que el uso de un certificado ssl era un factor esencial a la hora de posicionar una web, han sido muchísimos los sitios web que han pasado a hacer uso de ellos, aún y cuando en realidad no les hacía falta (no se transmiten datos sensibles al acceder a un blog personal en el que no podemos comentar, por ejemplo). Poco a poco han sido más los pasos encaminados a una web totalmente cifrada, es por ello que los sitios web que no cuentan con certificado SSL aparecen incluso con avisos visuales muy llamativos (candado rojo abierto o tachado, por ejemplo).
Cómo funcionan
El funcionamiento de un certificado SSL es complejo y al mismo tiempo sencillo, es decir, implica muchas partes complejas pero de las que no tendremos que preocuparnos, como por ejemplo el CA (Certification Authority) que emitirá el certificado en cuestión, el tipo de cifrado, etc. serán cosas prácticamente irrelevantes.
En cambio, nos centraremos en la parte sencilla, que viene siendo la contratación de un certificado, su validación y su instalación, con estos pasos tendremos un certificado ssl totalmente funcional y aceptado por todos los navegadores y dispositivos actuales, de esta forma añadiremos una capa de protección adicional a nuestro sitio web.
Aún así, procedemos a enumerar las distintas partes que participan en el proceso de emisión del certificado así como las distintas denominaciones:
CA (Certification Authority)
Se trata de la autoridad encargada de la emisión del certificado SSL, es decir, si bien cualquier máquina puede generar un certificado SSL, solamente los que han sido emitidos por un CA reconocido tendrán validez a la hora de ser utilizados en un navegador, de lo contrario nos encontraríamos con un aviso de seguridad por parte del navegador, invitándonos a no acceder al sitio web.
CAA (DNS Certification Authority Authorization)
El nombre puede sonar extraño, pero se trata de un mecanismo de seguridad adicional que mediante un registro en la Zona DNS de un dominio nos permite denegar la emisión de un certificado SSL por parte de uno o varios CA, esto es especialmente útil para evitar que un tercero pueda intentar emitir un certificado en nuestro nombre en un proveedor CA distinto al que utilizamos.
Cuando un CA recibe una petición de emisión de un certificado, este revisará la Zona DNS en busca de un registro CAA, si lo encuentra, seguirá las indicaciones del mismo para autorizar o no su emisión.
Cifrado
El cifrado se encarga de evitar que el contenido de las comunicaciones pueda ser leído por alguien no autorizado, para ello se utiliza una clave SSL, con esta información el servidor web podrá descifrar el contenido de las comunicaciones que reciba de parte del visitante.
Common Name
Es la dirección web (dominio o subdominio) para el que queremos solicitar el certificado SSL, por norma general se indicará siempre el dominio, a menos que queramos emitirlo para un subdominio en concreto.
SAN o Server Assigned Name
Los SAN son los dominios adicionales que podemos añadir a los certificados ssl multidominio, por norma general los certificados multidominio incluyen varios dominios, pero permiten además añadir una cantidad concreta de dominios adicionales a cambio de un importe más elevado.
CSR
El CSR o Certificate Signing Request, se utiliza para poder solicitar la emisión de un certificado SSL, este archivo es generado tomando en cuenta múltiples valores que se incrustarán en el certificado, como el common name, correo electrónico del emisor, información de contacto, … Al generar el CSR se generará también una clave privada, esta clave deberá ser instalada en el servidor web para poder funcionar.
Clave SSL o private key
La clave SSL se obtiene mediante la generación del CSR, sin esta clave no será posible descifrar el contenido de las comunicaciones, es decir, si perdemos esta clave tendremos que realizar una reemisión del certificado SSL, de lo contrario no podremos instalarlo en el servidor.
Validación del certificado
A la hora de poder emitir un certificado SSL, los CA solamente pueden hacerlo si cuentan con la autorización explícita del titular del dominio en cuestión, de lo contrario cualquier persona podría solicitar la emisión de un certificado en nombre de otro, para así hacerse pasar por un sitio web distinto y tratar de robar los datos de pago, por ejemplo.
Para ello, existen distintas formas de validación: E-mail (el CA envía un correo electrónico al titular del dominio, el cual contiene un enlace para aceptar la emisión del certificado), TXT (el titular del dominio sube un archivo .txt con un nombre y contenido concretos) o DNS (el titular del dominio añade un registro a la Zona DNS de su dominio para autorizar la emisión).
Los certificados también se distinguen por el tipo de validación:
- Certificados de validación de dominio: Para la emisión de estos certificados será suficiente con validar el dominio mediante e-mail, txt o DNS.
- Certificados de validación de empresa: A parte de la validación de dominio, se verifican también los datos de la empresa. Los certificados incluyen el nombre de la empresa en su información.
- Certificados de validación extendida o EV: Además de lo anterior, se valida el número de teléfono y se solicitan documentos adicionales para verificar la información. Los certificados EV incluyen el nombre de la empresa en su información.
Re-emisión de certificados
La remisión es necesaria si perdemos la clave privada o esta se ha visto comprometida, es decir, si un tercero obtiene acceso a esta clave podría descifrar y leer el contenido de la información transmitida, es por ello que deberemos proceder a reemitir el certificado con un nuevo CSR e instalarlo en el servidor.
En el caso de certificados multidominio, la re-emisión es necesaria si quedemos añadir o eliminar dominios, es importante indicar que una vez completada la re-emisión, el certificado debe ser reinstalado en todos los dominios.
Una vez el certificado ha sido re-emitido, el anterior certificado procederá a ser revocado, dejando de funcionar unas horas más tarde.
Revocación de certificados
Los certificados SSL también pueden ser revocados, es decir, que aún faltando tiempo para su caducidad, estos dejen de ser válidos para el navegador. Esto ocurre cuando la clave privada ha sido comprometida, pues procedemos a la re-emisión del certificado, pero también cuando es el propio CA quien procede a su revocación, por ejemplo en casos muy concretos de phishing.
Tipos de certificado SSL
Existen múltiples tipos de certificado, se separan en tres grupos:
Certificados de dominio único
Son los certificados más demandados, válidos para un dominio (generalmente el subdominio «www.» y la versión sin «www.»).
Certificados multidominio
Permiten hacer uso de un mismo certificado ssl en varios dominios al mismo tiempo, ahorrándonos así problemas a la hora de su gestión, pues solamente tendremos que preocuparnos por un solo certificado.
Certificados Wildcard
Son los certificados SSL que permiten añadir cifrado a todos los subdominios de un mismo dominio, son válidos solamente para un nivel, es decir, si pedimos un certificado wildcard para el dominio ejemplo.com, será válido para subdominios como www.ejemplo.com, tienda.ejemplo.com o correo.ejemplo.com, pero no para subdominios en otro nivel como espana.tienda.ejemplo.com, etc.
Errores SSL habituales y sus soluciones
Llevamos varios años ofreciendo certificados SSL a nuestros clientes, en una gran cantidad de casos se repiten una y otra vez las mismas problemáticas, afortunadamente suelen ser muy sencillas de corregir:
Contenido mixto
Este error aparece cuando estando cargando el sitio web mediante https://, cargamos algunos recursos (imágenes, ccs, js, ..) sin este protocolo, por lo que el navegador nos mostrará un aviso al respecto. Para solucionarlo bastará con modificar las direcciones/URL de los archivos para que utilicen este protocolo. Si utilizas WordPress, puedes hacerlo de forma sencilla con el plugin Really Simple SSL.
Fecha no válida
Para que el descifrado sea correcto, es necesario que tanto el servidor web como el navegador del visitante tengan la misma hora (salvando las diferencias por el huso horario), una diferencia de varios minutos puede provocar que el navegador lo considere erróneo.
Certificado caducado o revocado
Al llegar a su fecha de caducidad, los certificados dejan de funcionar, para solucionarlo bastará con contratar un nuevo certificado. Si por el contrario, el certificado ha sido re-emitido hace poco, es posible que aún estando teóricamente válido (sin caducar), el certificado haya sido revocado y por tanto, haya dejado de ser válido. Para solucionarlo bastará con reinstalar el nuevo certificado.