Muestre a los visitantes de su sitio que se toma en serio su seguridad creando su propio certificado SSL con OpenSSL.
Los certificados SSL/TLS son esenciales para proteger su aplicación o servidor web. Si bien varias autoridades de certificación confiables brindan certificados SSL/TLS por un costo, también es posible generar un certificado autofirmado utilizando OpenSSL. Aunque los certificados autofirmados no cuentan con el respaldo de una autoridad de confianza, aún pueden cifrar su tráfico web. Entonces, ¿cómo puede usar OpenSSL para generar un certificado autofirmado para su sitio web o servidor?
Cómo instalar OpenSSL
OpenSSL es un software de código abierto. Pero si no tiene experiencia en programación y le preocupan los procesos de compilación, tiene un poco de configuración técnica. Para evitar esto, puede descargar la última versión del código de OpenSSL, completamente compilado y listo para instalar, desde sitio de slproweb.
Aquí, seleccione la extensión MSI de la última versión de OpenSSL adecuada para su sistema.
Como ejemplo, considere OpenSSL en D:\OpenSSL-Win64. Puedes cambiar esto. Si la instalación está completa, abrir PowerShell como administrador y navegue a la subcarpeta llamada papelera en la carpeta donde instaló OpenSSL. Para hacer esto, use el siguiente comando:
cd'D:\OpenSSL-Win64\bin'
Ahora tienes acceso a abressl.exe y puedes ejecutarlo como quieras.
Genere su clave privada con OpenSSL
Necesitará una clave privada para crear un certificado autofirmado. En la misma carpeta bin, puede crear esta clave privada ingresando el siguiente comando en PowerShell una vez que haya abierto como administrador.
abressl.exegenrsa-des3-afueramiClavePrivada.llave 2048
Este comando generará una clave privada RSA cifrada con 3DES de 2048 bits de longitud a través de OpenSSL. OpenSSL le pedirá que ingrese una contraseña. Deberías usar un contraseña fuerte y memorable. Después de ingresar la misma contraseña dos veces, habrá generado con éxito su clave privada RSA.
Puede encontrar su clave RSA privada con el nombre miClavePrivada.clave.
Cómo crear un archivo CSR con OpenSSL
La clave privada que cree no será suficiente por sí sola. Además, necesita un archivo CSR para crear un certificado autofirmado. Para crear este archivo CSR, debe ingresar un nuevo comando en PowerShell:
abressl.exerequerimiento-nuevo-llavemiClavePrivada.llave-afueramiCertRequest.csr
OpenSSL también le pedirá la contraseña que ingresó para generar la clave privada aquí. Además, solicitará su información legal y personal. Tenga cuidado de ingresar esta información correctamente.
Además, es posible hacer todas las operaciones hasta ahora con una sola línea de comando. Si usa el siguiente comando, puede generar tanto su clave RSA privada como el archivo CSR a la vez:
abressl.exerequerimiento-nuevo-nueva llaversa:2048-nodos-keyoutmiClavePrivada2.llave-afueramyCertRequest2.csr
Ahora podrá ver el archivo llamado myCertRequest.csr en el directorio correspondiente. Este archivo CSR que crea contiene información sobre:
- La institución que solicita el certificado.
- Nombre común (es decir, nombre de dominio).
- Clave pública (para fines de cifrado).
Los archivos CSR que cree deben ser revisados y aprobados por ciertas autoridades. Para ello, debe enviar el archivo CSR directamente a la autoridad de certificación u otras instituciones intermediarias.
Estas autoridades y casas de bolsa examinan si la información que proporciona es correcta, según la naturaleza del certificado que desea. Es posible que también deba enviar algunos documentos sin conexión (fax, correo, etc.) para comprobar si la información es correcta.
Elaboración del Certificado por una Autoridad de Certificación
Cuando envía el archivo CSR que creó a una autoridad certificadora válida, la autoridad certificadora firma el archivo y envía el certificado a la institución o persona solicitante. Al hacerlo, la autoridad de certificación (también conocida como CA) también crea un archivo PEM a partir de los archivos CSR y RSA. El archivo PEM es el último archivo requerido para un certificado autofirmado. Estas etapas aseguran que Los certificados SSL permanecen organizados, confiables y seguros.
También puede crear un archivo PEM usted mismo con OpenSSL. Sin embargo, esto puede representar un riesgo potencial para la seguridad de su certificado porque la autenticidad o validez de este último no está clara. Además, el hecho de que su certificado no sea verificable puede hacer que no funcione en algunas aplicaciones y entornos. Entonces, para este ejemplo de un certificado autofirmado, podemos usar un archivo PEM falso, pero, por supuesto, esto no es posible en el mundo real.
Por ahora, imagina un archivo PEM llamado myPemKey.pem proviene de una autoridad de certificación oficial. Puede usar el siguiente comando para crear un archivo PEM para usted:
abresslx509-req-sha256-días 365 -enmiCertRequest.csr-signkeymiClavePrivada.llave-afueramiPemKey.pem
Si tuviera un archivo de este tipo, el comando que debería usar para su certificado autofirmado sería:
abressl.exex509-req-días 365 -enmiCertRequest.csr-signkeymiPemKey.pem-afueramySelfSignedCert.cer
Este comando significa que el archivo CSR está firmado con una clave privada denominada myPemKey.pem, válido por 365 días. Como resultado, crea un archivo de certificado llamado mySelfSignedCert.cer.
Información del certificado autofirmado
Puede usar el siguiente comando para verificar la información en el certificado autofirmado que ha creado:
abressl.exex509-sin salida-texto-enmySelfSignedCert.cer
Esto le mostrará toda la información contenida en el certificado. Es posible ver mucha información, como la empresa o información personal, y los algoritmos utilizados en el certificado.
¿Qué sucede si los certificados autofirmados no están firmados por la autoridad de certificación?
Es fundamental auditar los certificados autofirmados que crea y confirmar que son seguros. Un proveedor de certificados de terceros (es decir, una CA) suele hacer esto. Si no tiene un certificado firmado y aprobado por una entidad emisora de certificados externa y utiliza este certificado no aprobado, se encontrará con algunos problemas de seguridad.
Los piratas informáticos pueden usar su certificado autofirmado para crear una copia falsa de un sitio web, por ejemplo. Esto permite que un atacante robe la información de los usuarios. También pueden obtener los nombres de usuario, las contraseñas u otra información confidencial de sus usuarios.
Para garantizar la seguridad de los usuarios, los sitios web y otros servicios normalmente necesitan usar certificados que en realidad están certificados por una CA. Esto proporciona una garantía de que los datos del usuario están encriptados y se conectan al servidor correcto.
Creación de certificados autofirmados en Windows
Como puede ver, crear un certificado autofirmado en Windows con OpenSSL es bastante simple. Pero tenga en cuenta que también necesitará la aprobación de las autoridades de certificación.
No obstante, hacer un certificado de este tipo muestra que se toma en serio la seguridad de los usuarios, lo que significa que confiarán más en usted, en su sitio y en su marca en general.