Cryptology Academy · Lección

Creación de certificados autofirmados con OpenSSL

Genere su propia CA, firme un certificado e inspecciónelo con OpenSSL.

Lección 4 de 413 pasos

Creación de certificados autofirmados con OpenSSL es una lección gratuita de Cryptology Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cryptology Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cryptology Academy incluye 4 lecciones en total.

Bienvenida

En esta lección práctica crearemos nuestra propia CA pequeña con OpenSSL, firmaremos un certificado de servidor e inspeccionaremos todos sus campos para aprender PKI desde dentro.

Generar la clave de la CA raíz

# Generate 4096-bit RSA CA private key openssl genrsa -aes256 -out ca.key 4096 La opción -aes256 cifra la clave privada con una frase de contraseña. Proteja siempre las claves de las CA.

Crear el certificado de la CA raíz

openssl req -x509 -new -nodes -key ca.key \ -sha256 -days 3650 \ -out ca.crt \ -subj '/C=US/O=My CA/CN=My Root CA' -x509 hace que sea autofirmado. -days 3650 = 10 años.

Generar la clave del servidor

# Generate 2048-bit RSA server key (no passphrase for web servers) openssl genrsa -out server.key 2048 Las claves del servidor no deberían tener frases de contraseña (los servidores web no pueden solicitarlas durante el inicio).

Crear una solicitud de firma de certificado (CSR)

openssl req -new -key server.key \ -out server.csr \ -subj '/C=US/O=My App/CN=localhost' La CSR contiene la clave pública y el sujeto solicitado. Está firmada con la clave privada del solicitante.

Crear el archivo de extensión SAN

cat > server.ext <

Firmar el certificado del servidor

openssl x509 -req \ -in server.csr \ -CA ca.crt -CAkey ca.key \ -CAcreateserial \ -out server.crt \ -days 365 -sha256 \ -extfile server.ext

Inspeccionar el certificado

openssl x509 -in server.crt -text -noout Busque: Issuer, Subject, Not Before/After, Subject Alternative Name, Key Usage y el Signature Algorithm al final.

Verificar la cadena

openssl verify -CAfile ca.crt server.crt # server.crt: OK Esto confirma que el certificado del servidor fue firmado correctamente por nuestra CA. Cualquier modificación del certificado haría que la verificación fallara.

Probar con curl

# Start a Python server with the cert: # python3 -m http.server --bind 127.0.0.1 8443 # (simplified) # Test with our CA cert: curl --cacert ca.crt https://localhost:8443 # Without --cacert, curl would reject the self-signed CA

Exportar a PKCS12

PKCS12 agrupa el certificado, la clave privada y la cadena de CA en un solo archivo: openssl pkcs12 -export \ -in server.crt -inkey server.key \ -certfile ca.crt \ -out server.p12 Se usa en los almacenes de claves de Java y en los almacenes de certificados de Windows.

Comprobación rápida

¿Qué comando de OpenSSL crea un certificado de CA raíz autofirmado a partir de una clave privada?

Repaso

¡Excelente! Ha creado una PKI completa desde cero. A continuación estudiaremos el hash de contraseñas: por qué SHA-256 es inadecuado para las contraseñas y qué hacen de forma diferente bcrypt y Argon2.
Gratis para empezar

Aprende Cryptology Academy con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
67
Lecciones
261

Preguntas frecuentes

¿La lección «Creación de certificados autofirmados con OpenSSL» es gratis?

Sí — el texto completo de «Creación de certificados autofirmados con OpenSSL» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cryptology Academy, actualiza a CoddyKit PRO. El curso de Cryptology Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Creación de certificados autofirmados con OpenSSL»?

Genere su propia CA, firme un certificado e inspecciónelo con OpenSSL. Practicas Cryptology Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Cryptology Academy?

No se requiere experiencia previa. Cryptology Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Creación de certificados autofirmados con OpenSSL»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Cryptology Academy?

Sí. Cada lección de Cryptology Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. ¿Qué es un certificado? Estructura X.509
  2. Autoridades certificadoras y cadenas de confianza
  3. Revocación de certificados: CRL y OCSP
  4. Creación de certificados autofirmados con OpenSSL
← Volver a Cryptology Academy