Kolibërs Group
  • Inicio
  • Servicios


    • PenTest & VA

      • PenTest Web
      • PenTest Red
      • Vulnerabilidad Web
      • Vulnerabilidad Red
    • Desarrollo seguro
      • Code review
      • Cloud Security
      • Security Architecture
      • Desarrollo Web
    • Seguridad Empresarial
      • NIST CSF
      • dev-sec-ops
      • Iso 27001
    • Hacking Ético
    • CISO On-Demand
    • Awareness
    • Training
    • Seguridad FinTech
  • Blog
  • Contacto
  • Acerca

Cómo generar certificados SSL/TLS gratuitos e instalarlos en cPanel

Kolibërs Let’s Encrypt

Genere certificados SSL/TLS válidos utilizando Let's Encrypt.

Primero iniciaremos explicando

¿Qué es un certificado SSL/TLS?

Breve historia:

En los origines de la Web (World Wide Web) la información que se enviaba de un punto a otro viajaba sin cifrar y no necesitabamos usuarios ni contraseñas, pues la información era información pública, conforme fuimos avanzando la web se ha convertido en un medio para hacer transacciones financieras, enviar y recibir información privada, etc. Otro de los beneficios e inconvenientes de la red es que al ser una red creada para soportar cortes y seguir operando, es necesario que pase por varios puntos y esencialmente cualquiera de estos puntos podría leer la información que se transmite.

¿Para que sirve un certificado TLS?

Aquí es donde entran los certificados TLS, de aquí en adelante solo le llamaremos TLS puesto que es la actualización a SSL y es lo más moderno y lo que se usa actualmente. TLS nos permite dos cosas primero, nos ayuda a verificar que el servidor a donde nos conectamos es quien dice ser (Autentificación) y hacer un un túnel cifrado, donde en teoría solo el que envia y el que recibe pueden ver la información que se transmite (Confidencialidad) decimos en teoría porque hay técnicas para ver esta información, (materia para otro artículo) pero en general es una excelente protección para la transmisión de información.

NOTA IMPORTANTE:

Cabe señalar que el contar con un certificado no quiere decir que por este solo hecho, el sitio en cuestión sea seguro, porque puede tener otras múltiples vulnerabilidades como SQL injection, XSS, o todo el top 10 de OWASP que son las vulnerabilidades más comunes en sitios Web y el certificado no ayuda en nada contra eso, incluso ayda al atacante pues ahora sus ataques estarán cifrados.

Lo que sí nos proporciona el certificado es una muy buena protección en la confidencialidad de la información y en la autentifiación del servidor, otro beneficio nada despreciable es que Google nos asignará un mayor ranking en sus busquedas ya que su intención es que todos los sitios empleen TLS para hacer una web más segura.

Ahora que ya sabemos para que sirven y algunos de sus beneficios veamos que son realmente los certificados.

¿Qué son los certificados?

Los certificados son simplemente archivos que contienen llaves criptográficas, que emplean una combinación de criptografía simétrica y asimétrica, la criptografía es un tema muy extenso pero para los fines de este artículo lo mantendrémos simple.

En la criptografía simetrica, los datos son cifrados con una única llave. Este tipo de criptografía es muy rápida y puede cifrar grandes cantidades de datos, pero al emplear una sola llave el medio de transmisión deber ser seguro, porque si alguien puede interceptar esa llave podrá cifrar y descrifrar los datos y se perdería la condifencialiad.

La criptografía asimétrica emplea dos llaves diferentes; una privada y una pública, ambas llaves están matematicamente relacionadas y con un adecuado rango de llaves se vuelve impractico, un poco rayando en lo imposible el encontrar la llave privada basandose en la llave pública, lo que la convierte en un excelente medio de transporte para las llaves simétricas. Una de las desventajas de la criptografía asimétrica es que es más lenta y emplea muchos recursos además no puede cifrar grandes volumenes de datos.

TLS aprovecha las ventajas de ambos tipos de criptografía, la asimétrica y la simétrica (de llave pública y llave privada) para transmitir y cifrar cualquier dato que se quiera enviar. Con esta combinación tenemos una solución muy robusta para enviar datos confidencialmente a través de un medio inseguro como es Internet y la Web.

La información que contiene un certificado regularmente incluye: El nombre de dominio
La organización
La autoridad que expide el certificado o CA
Subdominios adicionales si es que hay
Fecha de expedición del certificado
Fecha de caducidad del certificado
La llave pública
La firma digital de la autoridad certificadora

En esta ocasión usaremos Let’s Encrypt, que es una autoridad de certificación abierta, automatizada y gratuita, para conseguir certificados gratuitos durante un periodo limitado, el cual se puede renovar para tener un certificado válido todo el tiempo que sea necesario. Usaremos el cliente de Certbot para automatizar el proceso.

Cuando generamos nuestro certificado SSL/TLS en un servidor web, activamos el candado que se puede visualizar en el explorador el cual indica que se está empleando el protocolo HTTPS, permitiendo que la información entre nuestro navegador y el servidor viajen cifrados, este protocolo impide que terceros puedan ver nuestras comunicaciones con dicho sito.

Instalación de Certbot en Windows

Descargamos la última versión de Certbot para Windows:
https://dl.eff.org/certbot-beta-installer-win32.exe

Para iniciar una shell con Certbot, ingrese "CMD" en el Menu de Inicio, haga clic en “Ejecutar como Administrador” . Y escriba certbot --help para mostrar la Ayuda.


Instalación de Certbot en GNU/Linux

Para instalarlo en Debian GNU/Linux, simplemente usamos el siguiente comando:
sudo apt-get install certbot

Al momento de escribir este artículo estoy usando la siguiente versión, la cual va a variar con el tiempo:
sudo certbot --version
certbot 1.12.0

Generación del Certificado SSL

Una vez instalado Certbot ingresamos los siguientes comandos para poder solicitar el certificado, debera tener en cuenta que es necesario cambiar kolibers.org por el nombre de su dominio. Si desea conocer más sobre los comando usados, puede usar el comando certbot --help, para obtener más ayuda o en su defecto consultar el manual con el comando man certbot. Certbot Command

           sudo certbot certonly --manual -d kolibers.com --agree-tos --preferred-challenges http-01 --server https://acme-v02.api.letsencrypt.org/directory --register-unsafely-without-email --rsa-key-size 4096
        

Durante la generación del Certificado, nos pedirá que creemos un archivo dentro del servidor con determinados datos, el cual se puede ver a continuación: Kolibërs certbot challenge blog

Una vez tengamos el fichero con los datos correctos, presionamos enter para continuar el proceso y validar la propiedad de nuestro dominio y obtener el certificado. Una vez finalizado el proceso tendrá un resultado como el siguiente: Certbot-Notes

Carga de los Certificados en Cpanel

Después de que su certificado se haya generado de forma correcta, copiaremos el fichero fullchain.pem , copiando la primera parte y la clave privada privkey.pem en Cpanel. Dentro de la siguiente sección:
Security >> SSL/TLS >> Manage SSL Sites

Para el apartado de “Certificate CRT” copiaremos el fichero fullchain.pem (Solo la primera parte) y para “Private Key (KEY)”, usaremos la clave privada privkey.pem, Y daremos click en “Install Certificate” Kolibërs Cpanel certificados

Si todo ha salido bien, podremos acceder por medio de HTTPS a nuestro sitio Web y ver el candado dentro de la URL Como se muestra en la Imagen. site-secure-ssl

Direccionamiento HTTPS

Para finalizar tendremos que habilitar el Direccionamiento HTTPS dentro de la configuración de Cpanel. Esto es útil cuando los usuarios no teclean https y solo teclean http y no serviría de mucho si el usuario solo usa http que es inseguro, aún cuando el certificado ya esté instalado. Cuando se habilita este direccionamiento los usuarios son redirigidos al sitio seguro sin que ellos tengan que hacer algo.
Para ello entraremos en la sesión “Domains” del menu principal y seleccionaremos el dominio poniendo en ON la parte de “Force HTTPS Redirect” . https-redirect

Renovacion de certificados

Es importante renovar los certificados solicitados para seguir usando el protocolo seguro HTTPS, para ello deberá tener en consideración la fecha de expiración del certificado. Ya que no registramos ningún correo electrónico, no podremos recibir notificación alguna.

Para ello podemos utilizar cualquier navegador web y hacer click en el Icono del candado y ver la fecha de validez del certificado.
Finalmente usaremos el comando sudo certbot renew , para poder renovar el o los certificados,como se muestra en la imagen ; Esto solo se podrá realizar faltando 30 días antes de que expire la validez del certificado.

Una vez renovado los certificados, tendremos que repetir el proceso de cargar los fichero dentro la configuración del servidor; como se muestra en los pasos anteriores renew certificate

Conclusión:

Hemos generado certificados SSL/TLS a través de Let's Encrypt, usando el cliente Certbot y cargamos los certificados en Cpanel para su instalación.

Recuerde renovar los Certificados antes de la fecha de vencimiento, podemos confirmar dicha información con el comando sudo certbot certificates.

Cualquier duda, favor de contactarnos o si prefiere que la configuración la realice alguno de nuestros expertos, estamos a la orden en nuestros métodos de contacto en este sitio.

Escrito Por:

Jesús Flores
Security Engineer

Kolibërs DevSecOps

Implementación Dev-Sec-Os

Optimiza los flujos de dasarrollo implementando el modelo DevSecOps.
Nos integramos a tu equipo IT y de desarrollo bajo el esquema DevSecOps garantizando los estandares mas altos de seguridad, productividad y agilización en tu proyecto.

  • Conocer más

Kolibërs CISO on Demand

CISO On Demand

Contamos con ejectuivos en seguridad con el mas alto nivel y experiencia, para planificar, definir y ejecutar estrategias de seguridad unicas para tu empresa, adaptandonos a tus necesidades y requerimerientos.

  • Conocer más

Agenda una visita

Visítanos o síguenos en nuestras redes sociales para que estes informado sobre cuestiones de seguridad y como proteger a tu organización.

  • Dirección:

    Tamaulipas 141 Piso 3
    Colonia Condesa
    Cuauhtémoc
    CDMX. C.P. 06140

  • Teléfono

    (55) 8421 4636

  • Email

    ventas@kolibers.com







© Kolibërs Group SAS de CV. Todos los derechos reservados.
Términos de uso |Política de Cookies | Política de privacidad | Contacto

Política de Cookies

Utilizamos cookies propias y de terceros para analizar la interacción en el sitio y mejorar la experiencia del usuario. Leer más.