SSL es un protocolo utilizado para cifrar y autenticar datos en las redes, típicamente entre un servidor y un cliente. El protocolo SSL, y su sucesor, TLS, usan cifrado asimétrico que se basa en dos claves: un privado y un público público. Un certificado SSL proporciona una conexión encriptada y crea un entorno de confianza, ya que certifica el sitio web al que estamos conectando es efectivamente lo que pretendemos, y ninguna fiesta maliciosa está tratando de hacerse pasar por sugerencia. Los certificados SSL válidos son publicados por una CA (autoridad de certificado), pero también pueden ser autogenerados. Los certificados SSL autoestimados, aunque aún proporcionan cifrado, no proporcionen ningún fideicomiso, ya que el propietario y el emisor son la misma entidad/persona. No obstante, pueden ser útiles en ciertas situaciones: para pruebas o uso interno, por ejemplo.En este tutorial, vemos cómo generar un certificado SSL autofirmado y un par de claves utilizando el kit de herramientas OpenSSL en Linux, cómo leer el contenido de un certificado y cómo extraer la clave pública de él.
En este tutorial aprenderás:
- Cómo generar un certificado SSL autofirmado y un par de claves en Linux
- Cómo leer el contenido de un certificado SSL
- Cómo extraer la clave pública de un certificado
Requisitos y convenciones de software utilizados
Categoría | Requisitos, convenciones o versión de software utilizada |
---|---|
Sistema | Independiente de la distribución |
Software | OpenSSL Toolkit |
Otro | Ninguno |
Convenciones | # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio$-Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado |
Instalación del kit de herramientas OpenSSL
El kit de herramientas OpenSSL está disponible en los repositorios oficiales de las distribuciones de Linux más utilizadas. Contiene un conjunto de servicios públicos y bibliotecas que brindan soporte para varios tipos de protocolos y algoritmos. Hay cambios muy altos, el kit de herramientas ya está instalado en su sistema, como una dependencia de sus paquetes principales; Sin embargo, para instalarlo explícitamente, podemos usar el Administrador de paquetes de nuestra distribución de elección. En Fedora y otra distribución que forman parte de la familia Red Hat, usamos DNF
:
$ sudo dnf install openssl
En Debian, Ubuntu y sus derivados, en cambio, podemos usar el envoltorio APT:
$ sudo apt install openssl
Si Archlinux es nuestro controlador diario, podemos instalar el kit de herramientas OpenSSL usando el Pacman Package Manager. El paquete se mantiene en el repositorio "núcleo":
$ sudo Pacman -Sy OpenSsl
Una vez que se instala el kit de herramientas, podemos ver cómo usarlo para generar un certificado autofirmado.
Generar un certificado autofirmado
Para generar un certificado autofirmado, podemos hacer uso de una de las muchas utilidades incluidas en el kit de herramientas OpenSSL: req
. Esta herramienta está bien descrita de la siguiente manera:
El comando Req crea principalmente y procesa solicitudes de certificado en formato PKC#10. Puede
Además, cree certificados autoestimados para su uso como ROOT CAS, por ejemplo,.
Para generar nuestro certificado, junto con una clave privada, necesitamos ejecutar
req
con el -nueva llave
opción. Veamos un ejemplo del comando. Lo discutiremos más tarde: $ OpenSSL req -newkey RSA: 4096 -x509 -sha512 -days 365 -nodes -Out certificado.PEM -KeyOut PrivateKey.pem
Analicemos las diversas opciones que utilizamos en el ejemplo anterior. En primer lugar, invocamos "req" con el -nueva llave
Opción: se utiliza para crear una nueva solicitud de certificado y una clave privada. Se necesita un argumento que podemos usar para especificar el tipo de clave que queremos generar, junto con su tamaño. En el ejemplo que usamos: RSA: 4096
, Entonces, para crear una clave RSA de 4096 bits. Si omitimos el tamaño de la clave, se usa el predeterminado (2048).
La segunda opción que usamos es -x509
. Lo que hace esta opción es simplemente modificar el comportamiento del programa para que se cree un certificado autofirmado en lugar de un solicitud de certificado. Cuál es la diferencia entre los dos? Se crea una solicitud de certificado en el servidor donde el certificado debe instalarse y enviar a un Autoridad certificada, que emite el certificado. En su lugar, un certificado autofirmado, como ya mencionamos, es propiedad y proporcionado por la misma persona o entidad. No hay autoridad de certificado involucrada en el proceso: es por eso que este tipo de certificado no proporciona confianza.
Con -SHA512
Especificamos el digestión del mensaje para firmar la solicitud/certificado. El resumen predeterminado se especifica, nuevamente, en el archivo de configuración de OpenSSL, en el default_md
clave, y es SHA256
. Para obtener la lista de todos los Digest disponibles, podemos ejecutar:
Lista de $ OpenSSL-Digest-Commands
Deberíamos obtener un resultado similar al siguiente:
Blake2B512 Blake2S256 Gost Md2 Md4 Md5 RMD160 SHA1 SHA224 SHA256 SHA3-224 SHA3-256 SHA3-384 SHA3-512 SHA384 SHA512 SHA512-224 SHA512-256 SHAKE128 SHAKE256 SM3
Dado que estamos generando un certificado autofirmado, podemos decidir por nosotros mismos por cuánto tiempo será válido. El período de validez se expresa en días (30 es el valor predeterminado); El número de días se pasa como argumento al -días
opción. En este caso, hicimos nuestro valor de certificado durante todo un año.
Con el -nodos
Opción, especificamos que no queremos cifrar la clave privada generada. Cifrar la clave privada es sin dudas útil: esto puede pretenderse como una medida de seguridad en caso de que alguien la establezca, ya que para usarla, se debe proporcionar una frase de pases. Solo como ejemplo, si usamos una llave privada con Apache, debemos proporcionar la frase de pases para descifrarla cada vez que reiniciamos el demonio. En este caso, dado que estamos generando un certificado de Self Sign, que utilizaremos para las pruebas, por lo tanto, podemos evitar cifrar la clave privada.
Finalmente, usamos el -afuera
y -llave
opciones para especificar los nombres de archivo para escribir el certificado y la clave para, respectivamente. En este caso, el certificado se guardará en el certificado.pem
archivo, y la clave privada en el llave privada.pem
archivo. ¿Por qué usamos ".PEM ”como sufijo de nombres de archivo? Esto se debe a que tanto el certificado como la clave se crearán en formato PEM. PEM significa "correo mejorado por la privacidad": es básicamente un contenedor que incluye datos formateados de base64.
Proporcionar la información del certificado
Una vez que ejecutemos el comando para generar el certificado, se nos pedirá que proporcionemos una serie de información. Entre los demás:
- Dos letras que representan el nombre del país (e.G us)
- El nombre completo del estado o la provincia (e.gramo. California)
- El nombre de la ciudad (E.G Los Ángeles)
- El nombre de la organización o la empresa (el nombre legal de la empresa)
- El nombre totalmente calificado del servidor
Generación de una clave privada RSA ... +++++ ... ++++ escribiendo nueva clave privada para 'PrivateKey.clave '------ Está a punto de que se le pida que ingrese información que se incorporará a su solicitud de certificado. Lo que está a punto de ingresar es lo que se llama un nombre distinguido o un DN. Hay bastantes campos, pero puede dejar algo de blanco para algunos campos, habrá un valor predeterminado, si ingresa '.', el campo se dejará en blanco. ----- Nombre del país (código de 2 letras) [xx]: Nombre del estado o provincia de EE. UU. (Nombre completo) []: Nombre de la localidad de California (por ejemplo, ciudad) [Ciudad predeterminada]: Nombre de la organización de Los Ángeles (por ejemplo, empresa) [Compañía predeterminada Ltd] :. Nombre de la unidad organizacional (por ejemplo, sección) []: Nombre común (por ejemplo, su nombre o el nombre de host de su servidor) []: www.FQDN.COM Dirección de correo electrónico []:
Leer el contenido del certificado
Al final del proceso, debemos encontrar los dos archivos creados (certificado.PEM y Key PrivateKey.PEM) en nuestro directorio de trabajo actual. Si echamos un vistazo a nuestro archivo de certificado, deberíamos encontrar un contenido similar al siguiente:
-----BEGIN CERTIFICATE----- MIIFfzCCA2egAwIBAgIUYqXQl7Y5G6BAXpQ32GWfekpTEJcwDQYJKoZIhvcNAQEN BQAwTzELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExFDASBgNVBAcM C0xvcyBBbmdlbGVzMRUwEwYDVQQDDAx3d3cuZnFkbi5jb20wHhcNMjIwMzIwMjI0 NTU4WhcNMjMwMzIwMjI0NTU4WjBPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKQ2Fs aWZvcm5pYTEUMBIGA1UEBwwLTG9zIEFuZ2VsZXMxFTATBgNVBAMMDHd3dy5mcWRu LmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALHf3gnGCATAUEKc xgq3mmwM+wI9HV3SaYEnHgNJnt47FgFHcLWmzMRARrx1ofrwWSYUCGNDidit6FHv fHDyVoH344G8tuyU5YhzddmmphoGpU7jdwbQvtSqcJxOU84KSmwoMp/sIb+iNfSA rcNj1mTMHJJmePwCloDT2/7tuMvBlhfG5JHk5mSwi2GpSi06VqkzKeRBzaJTKEVq vUJNOcBJBCJPhj+I32J3SeJ6YnCfvLyaBzVBR0T+2umGXDTU0KwSnoCg3Swslfma GKDNLzvUerqwxEEUjaKjzdtzclvVJ86xVGI1TiVPdngullHCBdys5PxXabxhv1mF FRgxCXjyctVeEcTx+SIDoxMWVTZFXFbaGUbeXFYEXbm0dzYOj0Y+rbIxvBVGfLDG qngUuIOE3iiaOA/h/V0MuIhFVXg0tO4ZIsN5sZAMpGuLduB5W2soNpb7uRVneEyPVIYwzYT8i4YJMVXCMwQKHQFQbeU2QKTsx0aXnR7O84CUQxCah86FJpzNP5jMjTht 82X08rKGBp5G85hyUQEyvZrtQ9etFHDVdDvfuuFFQf0vXwDUpS7WHOOcK1+M0ztr lxk/vg4qazw7vwXSRD93a1VgnsGAXV8oxKuzUzUCj96JJvjdnd56h3B9ERShEpZx Ua1lgB8sTDG8l3kTpggsfXWHgLTRAgMBAAGjUzBRMB0GA1UdDgQWBBSnylKfTIQJ PNbq+z50Ao0HfrpfMjAfBgNVHSMEGDAWgBSnylKfTIQJPNbq+z50Ao0HfrpfMjAP BgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBDQUAA4ICAQBDISi+LunywZWapJFc XbPll/BKbsJNX+4gmMOysFr0QRtDfrXGKN57DlZvfYlkNeBdXi6urGfWuuERbmqo IN2KmYbCTCG5RhfiVvS9MvbQOtItq+tJCIVD2YznblAniU2qy3tquGVLGRSR2SuB X/r8a6NGZ8SzxpeUgQEKYStiIVjkAUrLzn0UXy7ul7pTghy5w4AgiC0AwecnUWwl Dyb+TXadAD0PfHvHMJvMTlfFtVGJgDFPPPAocQ1BHmzxsY01QcXnOfUXGwoldrp5 H5Yf+kbxru6TMPoC8Q0oZqPXX5k4SmOP3npaFQ3q6Zti6Z0EXY1Tq9h0pBTJMXzK B4RX7owrX3k7H2DPZjColyFzjmmdTT75y9CGrDwoKk6RQFDO5/aSfkE3y+KFbQq/ rib/BymCzoYl/4E5LA7SStBk0pTv0qRJEqOhzNdOqkq+xWAEC4JN8a63MY1Fxaiicdgeeyltdspfeyb2Myda+hf9lmyp3pCincsu3isuypn8g09iHtcwavyvco2Typ Jt+gi6h38Jaiaziui3kxvtbc9tvvfdrlf4mk66z1iz7lomp4tmsobw35mf200zvt hptvvfdrlf4mk66z1iz7lomp4tmsobw35mf200zvtbc9tvvvfdrlf4mk66z1iz7lomp4tmsobw35mf200zvtbc9tvvfdrlf4mk66z1iz7lomp4tmsobw35mf200Z NKXQXEIOW3YHM3G3OHOV184XTYW0CKFK18DC8SUYC24CX KLAGDGVMWED+WTOF6HPKFZNMIA == ----- Certificado final-----
Como ya dijimos, el certificado está formado por PEM, por lo tanto, para leer su contenido, podemos emitir el siguiente comando:
$ OpenSSL x509 -nout -in certificado.PEM -EXT
El x509
La utilidad se utiliza para mostrar y firmar certificados. En este caso lo invocamos con el -sin salida
opción para evitar la versión codificada del certificado que se incluirá en la salida, -en
Para especificar el archivo que contiene el certificado que se utilizará como entrada (certificado.PEM, en este caso) y -texto
para imprimir la salida del certificado en formulario de texto. En este caso, solo queríamos visualizar el contenido del certificado en la salida estándar; Para guardarlo en un archivo podríamos haber usado el -afuera
opción y proporcionó el nombre de archivo de destino como argumento, o simplemente use la redirección de shell. Aquí está el resultado del comando:
Certificado: Datos: Versión: 3 (0x2) Número de serie: 0f: D2: 5a: 6c: 99: 74: 37: 2e: 4b: 3a: 86: a3: d3: 61: 95: 6a: 03: 85: 04 : 71 Algoritmo de firma: SHA512WithrsaEncryption Emisor: C = US, ST = California, L = Los Ángeles, CN = www.FQDN.com validez no antes: 21 de marzo 11:03:48 2022 GMT No después: 21 de marzo 11:03:48 2023 GMT Asunto: C = US, ST = California, L = Los Ángeles, CN = www.FQDN.com sujeto Información de clave pública: Algoritmo de clave pública: RSAENCRITION RSA Public-Key: (4096 Bit) Módulo: 00: B9: 6a: FA: 50: 18: BB: 3D: 26: 80: EF: A4: 08: 1D:: 8c: 11: 14: c5: 5e: 81: 73: d3: 4d: 32: b2: 86: 9a: c2: 04: 53: 44: 74: b8: 34: ca: 99: 42: 71: 01: 30: AE: F3: EF: 59: 83: FB: BC: 8D: E6: CA: B4: 7B: 6C: 82: Fe: F5: 19: 0a: 76: 26: D6: DE: 9E: 33: 62: 52: 74: A9: 63: F9: 09: F8: 41: 4f: 9c: 68: 0b: 23: 4c: 62: 61: AD: 59: 8e: F5: BC: E8: 42: B3: 1a: 3d: 4e: 19: 6b: 4d: 20: b3: 42: a5: ae: a1: 6f: 14: 7e: c8: d5: e9: 1d: ac: 6a: 26: 5d: EF: 40: 58: 55: B7: 21: A6: 0d: FB: 94: 76: A9: 95: 67: 59: C4: 2e: 5a: 42: 0f: 25: FA: B3: C9: 67: 38: F2: 2f: 3b: 84: 62: d0: 6c: 1f: b1: ea: 58: 8b: 12: 35: 13: 45: 47: 01: d9: 66: 04: b0: ed: 39: cd: e7: Ed: 17: A1: EA: BD: 27: 89: E7: B9: 26: 96: 82: D1: D3: D8: 75: 82: F6: F6: 07: 31: 6b: D7: 7a: 59: 87: 24: 61: 0a: 3b: 29: 97: 49: 43: EF: 26: A1: 9e: 98: f2: ff: ea: 49: 01: a0: bf: 9b: 45: 69: b1: B6: C2: 2e: DE: E5: E0: 43: 09: A3: 82: 46: cf: 64: 84: d2: eb: dd: 7d: 08: 92: f3: 89: e3: 51: 97: 25: 23: ser: 62: c6: f8: ff: b4: b5: ae: 78: a9: ff: 81: a8: 76: 7b: 79: c3: 05: 55:F0: CE: 11: B4: 38: 00: EF: 1F: BD: 58: BD: Cf: 2E: 74: CE: 30: 38: 94: D4: 64: AB: FC: A9: 98: 24: 18: DC: E1: 10: F8: 67: B5: EF: B8: EC: 81: 60: 5d: 7a: F3: 1e: 01: Fe: 87: 2b: 55: 71: 01: 0c: 7f: FC: 4B: 9A: 3A: 33: 3e: C8: 28: 33: E6: AD: 18: EF: 1D: 98: 33: 1E: 89: FB: 4C: 0B: E8: D2: 5A: 9D: 53: 70: 2a: 12: 29: ed: 45: 79: 89: 55: 30: 4a: f6: 5f: 41: 98: 8d: d6: 37: d5: a0: 02: 8a: 75: 3e: 07: C4: 67: 45: 56: 85: C9: 8e: 5f: 25: FB: 77: 0c: 48: 94: 29: 07: 95: f0: 07: 39: fc: CD: 09: 02: 9B: 07: 3D: 11: 8B: 62: 4e: E8: 5e: FC: C6: A0: 41: AA: 20: A1: C9: 44: 63: EB: FD: DB: 4B: 7C: 62: 1B: B1: 46: 93: 08: 37: 30: D9: 11: 84: 0e: AD: 97: 0b: 20: 29: 41: BA: 89: B6: 36: 84: 7d: B6: 59: 47: 06: 86: 5a: d6: 04: 48: b6: 87: c8: 9c: c7: c3: 02: 02: 6e: 51: ea: 11: 46: db: d5: b1: 9e: e9: 75: 46: 26: 5f: 9f: 15: 92: bc: 9c: 4b: e2: 4d: 1b: bc: d5: 1b: 2e: b0: 56: 71: fb: 4a: 20: 91: 11: 8B: 31: AE: 55: 83: E7: E5: 96: 61: 9f: 4d: 46: 08: 02: D3: 20: B6: B2: F2: AD: 72: 78: 73: 27: A8: 36: 92: 6f Exponente: 65537 (0x10001) X509V3 Extensiones: x509v3 Identificador de clave de asunto: 62: B1: F4: A8: E1: 76: 4e: DA: 23: 67: 2D: 4B: 48: BC: DE: 63 :4d: 7a: 15: CB x509V3 Autoridad Identificador de clave: KeyID: 62: B1: F4: A8: E1: 76: 4e: DA: 23: 67: 2d: 4B: 48: BC: DE: 63: 4D: 7a: 15: CB x509V3 Restricciones básicas: CA CRÍTICA CA: Verdadero Algoritmo de firma: SHA512Withrsaencryption 1d: 67: 0f: 7e: 5e: 0f: 13: 7b: CE: 80: CD: 18: D7: 01: CE: 65: B7: B0 : c7: 6f: 21: 1c: 41: 1c: 8b: d8: d1: 53: 1d: 2b: 4c: 57: 2a: 60: 30: 62: d9: d1: 1f: 6d: ff: 8e: 56 : d0: 8b: 0b: b1: 83: ee: a9: b4: d6: 84: cd: ca: c6: 9c: f8: 84: 7c: 47: 7b: c6: 08: 6d: b2: 20: 9b : 88: 02: 4b: 5c: 30: 32: 17: 2d: 37: a6: a3: de: 24: 14: fb: 8c: d1: 82: 1d: bc: 4e: 2e: 52: a4: 87 : 8d: 98: fc: 4b: b1: e2: ac: 2a: ed: f9: e9: 21: 36: bc: a0: 90: f5: a3: f7: f5: 5a: e7: 5e: aa: a7 : 58: b6: 97: b5: b0: 73: f5: 03: 14: 91: b1: Fe: 41: 49: 05: 17: e4: fb: 0d: be: 07: 38: 86: 9d: b4 : 5a: 02: c7: 91: e9: c0: c1: 53: 59: e5: 3f: 60: 2c: cb: fe: 15: 94: 30: 67: f2: a9: 1a: d9: a1: 71 : 49: 43: A9: 45: CB: 97: 14: 7f: E7: 6a: 9d: 19: 41: 95: db: 01: d9: ba: fc: 5f: 51: 43: 5b: cd: 14 : ff: 4b: b0: 63: 7c: 6b: 76: 54: 86: b9: c6: a2: 92: 16: 7c: 22: 09: eb: b6: 4c: 4a: 85: 40: e8: 9f : fb: 0a: 40: ff: 2d: c6: 75: 06: f9: 67: ba:2e: 63: 4e: 25: 0e: bb: 0d: e0: d4: 05: 9c: ce: c5: b4: 36: 19: 58: db: 87: f6: af: 1c: 4d: 45: 2b: DE: EC: F2: 9a: 4a: E2: 0e: 63: 5f: BB: FA: 15: 20: 35: 10: 93: CE: 23: 35: 33: 16: F8: 61: C0: 6e: 48: 12: 55: 29: d2: 5a: 41: d1: 9a: 47: ef: d9: fd: 54: 91: 15: a0: 4b: 83: b2: f6: 78: 1d: 98: e5: 71:03: 2a: 4B: EB: DB: 49: 78: 61: 85: 16: 71: EA: A6: Ed: 8e: 64: 98: 00: e0: 73: 9a: 66: 4b: 4c: 30: B7: D3: A7: 0C: BB: AF: 09: CC: 5C: C1: 7a: EF: 9C: 42: 19: 1B: 95: E4: 25: 37: BA: CF: DB: 74: 1f: CD: A3: A9: 84: 11: 39: 27: 62: 59: 60: 7e: B4: 82: E6: A0: 33: BD: E9: 32: 6a: 86: 61: 86: cf: DC: 1E: F0: 93: B7: 42: 7d: 92: 5d: 39: Df: C2: 60: 1B: 5a: B4: 0d: 5e: 20: 92: 7a: D4: 09: 4f: 2e: 87: 81: 34: bb: aa: 75: 97: b1: f8: 23: bd: ff: 63: 12: fa: d2: 3b: 8b: 8c: 74: 7c: 1b: 16: 2b: 0a: 5B: 94: 69: 22: 58: 45: D2: 0f: 75: 16: 26: 60: D9: 81: 7b: E9: 83: 79: 26: B0: C0: 32: CA: 46: 80: 07: EB: DF: 8E: 00: C8: FA: 17: A5: E1: E2: 24: CC: 2C: A6: 13: A2: 0D: 35: D6: 5A: 1A: D1: 5E: A2: D7: 83: 69: 32: 73: AF: 77: ed: 6a: 13: 7b: 60: d2: 2c: 78: f2: 0d: 4b: 04: ec: c6: 57: 38: 50: ee: A4: AB: C0: B0: 24: 4B: 01: 70
Extracción de la clave pública de un certificado
Como vimos, SSL/TLS se basa en el cifrado asimétrico y el uso de una clave privada y pública. La clave privada debe permanecer segura en el servidor, mientras que la clave pública se envía al cliente junto con el certificado. ¿Cómo podemos extraer la clave pública incluida en ella?? Bueno, es una operación muy simple. Para lograr esta tarea debemos usar nuevamente el -x509
dominio. Para extraer la clave pública del certificado que generamos en este tutorial, ejecutaríamos:
$ OpenSSL x509 -PubKey -NOOUT -in Certificado.pem
Invocamos X509, esta vez usando el
-pubey
Opción, lo que hace para que la clave pública del certificado se imprima en formato PEM: -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAuWr6UBi7PSaA76QIHYwR FMVegXPTTTKyhprCBFNEdLg0yplCcQEwrvPvWYP7vI3myrR7bIL+9RkKdibW3p4z YlJ0qWP5CfhBT5xoCyNMYmGtWY71vOhCsxo9ThlrTSCzQqWuoW8UfsjV6R2saiZd 70BYVbchpg37lHaplWdZxC5aQg8l+rPJZzjyLzuEYtBsH7HqWIsSNRNFRwHZZgSw 7TnN5+0Xoeq9J4nnuSaWgtHT2HWC9vYHMWvXelmHJGEKOymXSUPvJqGemPL/6kkB oL+bRWmxtsIu3uXgQwmjgkbPZITS6919CJLzieNRlyUjvmLG+P+0ta54qf+BqHZ7 ecMFVfDOEbQ4AO8fvVi9zy50zjA4lNRkq/ypmCQY3OEQ+Ge177jsgWBdevMeAf6H K1VxAQx//EuaOjM+yCgz5q0Y7x2YMx6J+0wL6NJanVNwKhIp7UV5iVUwSvZfQZiN 1jfVoAKKdT4HxGdFVoXJjl8l+3cMSJQpB5XwBzn8zQkCmwc9EYtiTuhe/MagQaog oclEY+ V920T8YHUXRPMINZDZEYQORZCLICLBUOM2NOR9TLLHBOZA1GRITOFINMFD AGJUUEORRTVVSZ7PDUYMX58VKRYCS+JNG7ZVGY6WVNH7SICREYSXRLWD5+WWYZ9N RGGC0YC2 Q == ----- Fin de la clave pública-----
Pensamientos de cierre
En este tutorial aprendimos a generar un certificado SSL autofirmado utilizando el Kit de herramientas OpenSSL y el comando "REQ". Vimos cómo proporcionar la información del certificado y cómo establecer su validez en días. Finalmente, vimos cómo leer el contenido del certificado y cómo extraer la clave pública en formato PEM de él.