bg-tutorials

Cómo generar un CSR para un certificado SSL

Puedes generar un CSR en tres lugares: en la línea de comandos con OpenSSL, dentro del panel de control o consola de administración de tu servidor (cPanelIIS, Plesk), o con un generador de CSR online gratuito si no tienes acceso al servidor. Sea cual sea la ruta que elijas, rellenas los mismos datos sobre tu dominio y organización, y terminas con dos elementos: el CSR que envías con tu pedido de certificado, y una clave privada que debe permanecer segura (algunos paneles de control almacenan esa clave por ti).

Si esto es nuevo para ti, un CSR (abreviatura de certificate signing request) es el archivo que solicita a una autoridad certificadora que emita tu certificado SSL. Aquí te explicamos cómo crear uno en cualquier plataforma.


Cómo generar un CSR en 6 pasos

  1. Decide dónde generarlo: en el servidor que alojará el certificado (línea de comandos o panel de control), o con un generador de CSR gratuito.
  2. Abre la herramienta SSL de tu servidor o ejecuta el comando OpenSSL para iniciar un nuevo CSR y clave privada.
  3. Introduce tu dominio como Common Name (la dirección exacta que quieres proteger, como www.example.com).
  4. Añade los datos de tu organización: organización, unidad, ciudad, estado, país y correo electrónico.
  5. Genéralos, y luego mantén a salvo el CSR y la clave privada. Algunos paneles de control almacenan la clave por ti.
  6. Copia el CSR y envíalo a tu autoridad certificadora al pedir el certificado.

Esos seis pasos funcionan en cualquier plataforma. Para conocer los clics y comandos exactos en la tuya, elígela a continuación. Si no aparece en la lista, los métodos universales más abajo funcionan casi en cualquier caso.


Guías de generación de CSR por plataforma

Qué necesitas antes de empezar

  • Acceso al servidor o panel de control que alojará el certificado, o usa nuestro Generador de CSR si no lo tienes.
  • Los datos de tu organización exactamente como están registrados legalmente. Las autoridades certificadoras los verifican para los certificados OV y EV.
  • Una decisión sobre el tipo de clave: RSA de 2048 bits es el estándar mínimo. ECC (por ejemplo, P-256) es una opción moderna y más rápida si tu servidor la admite.
  • Un CSR por certificado. Genera uno nuevo cada vez que pidas o renueves con una nueva clave.

Todos los CSR solicitan los mismos campos. Esto es lo que debes poner en cada uno:

CampoQué introducirEjemplo
Common Name (CN)El dominio exacto a proteger (FQDN)www.example.com
Organization (O)El nombre legal de tu empresaExample LLC
Organizational Unit (OU)Departamento (opcional)IT
Locality (L)CiudadAustin
State (ST)Nombre completo del estado o región, sin abreviarTexas
Country (C)Código de país ISO de dos letrasUS
EmailCorreo electrónico de contacto (opcional)[email protected]

El archivo terminado es una solicitud estándar PKCS #10. Contiene tu clave pública junto con estos datos, y está firmado con tu clave privada para que la autoridad certificadora pueda confirmar que ambos pertenecen entre sí.

Consejo: para un certificado wildcard, establece el Common Name como *.example.com. Para varios dominios en un mismo certificado, mantén tu dominio principal como Common Name y añade los demás como Subject Alternative Names (SANs), no como Common Names adicionales.


Método 1: Generar un CSR con OpenSSL (Apache, Nginx, Linux)

OpenSSL es la forma universal de generar un CSR en Apache, Nginx y la mayoría de servidores Linux. Conéctate a tu servidor por SSH y ejecuta:

openssl req -new -newkey rsa:2048 -nodes -keyout example.key -out example.csr

Esto es lo que hace cada parte:

  • req -new crea un nuevo CSR.
  • -newkey rsa:2048 genera al mismo tiempo una nueva clave privada RSA de 2048 bits.
  • -nodes deja la clave privada sin frase de contraseña, para que tu servidor pueda cargarla sin pedirla al reiniciar.
  • -keyout example.key guarda la clave privada.
  • -out example.csr guarda el CSR.

OpenSSL solicita entonces los campos de la tabla anterior. Introduce tu Common Name, organización y datos de ubicación. Puedes dejar en blanco la contraseña de desafío.

Para saltarte las preguntas y añadir SANs en una sola línea, pasa el asunto y las extensiones directamente:

openssl req -new -newkey rsa:2048 -nodes -keyout example.key -out example.csr 
  -subj "/C=US/ST=Texas/L=Austin/O=Example LLC/OU=IT/CN=www.example.com" 
  -addext "subjectAltName=DNS:example.com,DNS:www.example.com"

Atención: el flag -addext necesita OpenSSL 1.1.1 o más reciente. Algunos servidores CentOS 7 y RHEL 7 antiguos todavía llevan OpenSSL 1.0.2, donde este flag no existe. En esos casos, añade tus SANs mediante un archivo de configuración en su lugar. Ejecuta openssl version si no estás seguro.

Abre el archivo terminado example.csr y copia todo desde —–BEGIN CERTIFICATE REQUEST—– hasta —–END CERTIFICATE REQUEST—–. Mantén example.key privado. Lo necesitarás más adelante para instalar el certificado, y no se puede recuperar si lo pierdes.

¿Prefieres ECC? Genera primero la clave y luego construye el CSR a partir de ella:

openssl ecparam -genkey -name prime256v1 -out example.key
openssl req -new -key example.key -out example.csr

¿Quieres los pasos exactos para tu distribución? Consulta nuestras guías para Apache, Nginx, Ubuntu, Debian y Red Hat Linux.


Método 2: Generar un CSR en cPanel

Si tu alojamiento usa cPanel, no necesitas la línea de comandos.

  1. Inicia sesión en cPanel y abre SSL/TLS en la sección de Seguridad.
  2. Haz clic en Certificate Signing Requests (CSR).
  3. En Generate a New Certificate Signing Request (CSR), rellena los campos de la tabla anterior. Usa tu dominio completo como valor de Domains o Common Name.
  4. Haz clic en Generate.

cPanel muestra el CSR codificado en la siguiente pantalla. Cópialo para tu pedido. cPanel almacena la clave privada correspondiente por ti en Private Keys, por lo que no tienes que guardarla manualmente, pero anota dónde está para la instalación.

Si no encuentras el CSR más adelante, sigue apareciendo en la misma pantalla de Certificate Signing Requests, así que puedes copiarlo de nuevo sin regenerarlo.

¿Usas WHM en lugar de cPanel? El proceso es casi idéntico, en SSL/TLS → Generate an SSL Certificate and Signing Request. Guías paso a paso: cPanel y WHM.


Método 3: Generar un CSR en Windows (IIS)

En servidores Windows con IIS:

  1. Abre IIS Manager y selecciona el nombre de tu servidor en el panel izquierdo.
  2. Haz doble clic en Server Certificates.
  3. En el panel de acciones, haz clic en Create Certificate Request.
  4. Rellena los campos de Distinguished Name: Common Name, Organization, Organizational Unit, City, State y Country.
  5. Elige un proveedor criptográfico y establece la longitud de bits en 2048 o más, luego guarda el CSR en un archivo.

Deja el proveedor como Microsoft RSA SChannel Cryptographic Provider a menos que tengas una razón específica para cambiarlo. Cualquier otra opción puede dificultar más adelante vincular el certificado emitido a tu sitio.

IIS mantiene la clave privada pendiente en el almacén de certificados del servidor, así que completa la solicitud a través de Complete Certificate Request después de que se emita el certificado. No reconstruyas el servidor ni elimines la solicitud pendiente entretanto, o la clave se perderá y necesitarás una reemisión. En equipos Windows sin IIS, puedes generar un CSR con certreq o el complemento de Certificados de MMC en su lugar.

Guías completas: Microsoft IIS y Microsoft Windows.


Método 4: Generar un CSR con nuestro Generador de CSR gratuito

¿No tienes acceso al servidor, o simplemente quieres hacerlo en segundos? Usa nuestra herramienta gratuita.

Abre el Generador de CSR, rellena tu Common Name, organización y ubicación, y luego genera. La herramienta crea tanto el CSR como la clave privada al instante y te envía la clave por correo electrónico como respaldo. Copia el CSR para tu pedido y guarda la clave privada en un lugar seguro.

Dos aclaraciones honestas:

  • La herramienta genera la clave privada por ti, lo cual está bien para la mayoría de los certificados DV y OV. Si tu política de seguridad exige que la clave nunca salga de tu propio servidor, usa OpenSSL o tu panel de control en su lugar.
  • El generador no funciona para certificados de firma de código. Desde junio de 2023, las claves de firma de código deben crearse y almacenarse en hardware seguro, así que genéralas en tu token o HSM.

Genera tu CSR ahora


Después de generar el CSR: verificación y próximos pasos

Antes de enviar el CSR, vale la pena hacer una comprobación rápida.

  1. Verifícalo. Pega el CSR en nuestro Decodificador de CSR para confirmar que el Common Name y los datos de la organización sean correctos. Un error de escritura aquí significa una reemisión más adelante.
  2. Envíalo. Copia el CSR completo en tu pedido de certificado. La autoridad certificadora lo verifica y emite tu certificado SSL X.509.
  3. Instala el certificado. Una vez emitido, sigue nuestra guía sobre cómo instalar un certificado SSL, usando la clave privada que guardaste antes.

La mayoría de las autoridades certificadoras envían por correo electrónico el certificado emitido en minutos para un certificado DV, normalmente como un archivo .crt o .cer junto con un paquete intermedio. Guárdalo junto con la clave privada que generaste.

Mantén esa clave privada respaldada y privada durante toda la vida del certificado. Sin ella, el certificado no se puede instalar.


Errores comunes con el CSR y cómo solucionarlos

  • Common Name incorrecto. El certificado protege exactamente lo que escribes. example.com y www.example.com son diferentes. Añade ambos (uno como CN, otro como SAN) si necesitas los dos.
  • Falta de SANs. Los navegadores modernos dependen de los Subject Alternative Names, no solo del Common Name. Enumera todos los dominios que el certificado debe cubrir.
  • El CSR y la clave privada no coinciden. Un CSR solo funciona con la clave generada junto a él. Si pierdes la clave o generas un nuevo CSR, debes reemitir. Nunca elimines la clave antes de que el certificado esté instalado.
  • Código de país incorrecto. El país usa el código ISO de dos letras (US, GB, DE), no el nombre completo del país. Escribir «United States» es una de las razones más comunes por las que se rechaza un CSR.
  • Caracteres abreviados o especiales en los campos de la organización. Escribe el nombre del estado completo y evita caracteres como @, &, o acentos en los campos de la organización, ya que algunas CA los rechazan.
  • Usar el Generador de CSR para firma de código. Los CSR de firma de código deben provenir de hardware seguro. Nuestro Generador de CSR es solo para certificados TLS/SSL.

Preguntas frecuentes

¿Cómo genero un CSR para un certificado wildcard?

Genéralo exactamente como cualquier otro CSR, pero establece el Common Name como *.example.com. Un certificado wildcard cubre entonces todos los subdominios de primer nivel, como mail.example.com y shop.example.com. Añade el dominio sin subdominio como SAN si también quieres example.com sin el subdominio.

¿Cómo genero un CSR a partir de un certificado existente?

No puedes extraer un CSR de un certificado ya emitido, pero puedes recrear uno con los mismos datos. Lee la línea del asunto de tu certificado actual:
openssl x509 -in your.crt -noout -subject
Si el certificado ya está activo en tu sitio, nuestro SSL Checker muestra los mismos datos. Luego genera un nuevo CSR y clave privada usando esos valores.

¿Cómo genero un CSR multidominio (SAN)?

Mantén tu dominio principal como Common Name y añade el resto como Subject Alternative Names. Con OpenSSL, añade -addext «subjectAltName=DNS:example.com,DNS:www.example.com,DNS:mail.example.com» (OpenSSL 1.1.1 o más reciente). En un panel de control, introduce los dominios adicionales en el campo SAN, y luego pide un certificado multidominio (UCC/SAN).

¿Cuánto tiempo es válido un CSR y con qué frecuencia debo regenerarlo?

Un CSR no caduca, pero está vinculado a una clave privada y está pensado para un único pedido. Genera un nuevo CSR cada vez que pidas o renueves un certificado con una nueva clave. Reutilizar un CSR antiguo solo es seguro si mantienes la misma clave privada.

¿Puedo generar un CSR desde un navegador?

Los navegadores eliminaron la antigua generación de claves integrada, por lo que ya no puedes crear un CSR directamente en uno. Usa nuestro Generador de CSR en línea, que realiza la generación por ti, o usa la línea de comandos.

¿Cómo se ve un CSR?

Un CSR es un bloque corto de texto en Base64, normalmente de alrededor de un kilobyte, guardado con una extensión .csr. Siempre se abre y cierra con las mismas líneas marcadoras:
-----BEGIN CERTIFICATE REQUEST----- MIICvDCCAaQCAQAwdzELMAkGA1UEBhMCVVMxDjAMBgNVBAgMBVRleGFzMQ8wDQYD VQQHDAZBdXN0aW4xFDASBgNVBAoMC0V4YW1wbGUgTExDMRcwFQYDVQQDDA53d3cu ZXhhbXBsZS5jb20... -----END CERTIFICATE REQUEST-----
Ese texto codificado contiene tu clave pública y los datos que introdujiste. Envía todo desde BEGIN hasta END, incluidas las líneas marcadoras, a tu autoridad certificadora. A diferencia de tu clave privada, un CSR es seguro de compartir: no contiene material secreto.

Ahorre un 10% en certificados SSL al realizar su pedido hoy mismo.

Emisión rápida, cifrado potente, 99,99% de confianza del navegador, asistencia dedicada y garantía de devolución del dinero en 25 días. Código del cupón: SAVE10

Una imagen detallada de un dragón en vuelo
Escrito por

Redactor de contenidos experimentado especializado en Certificados SSL. Transformar temas complejos de ciberseguridad en contenido claro y atractivo. Contribuir a mejorar la seguridad digital a través de narrativas impactantes.