Esta guía te muestra cómo generar un CSR (Certificate Signing Request) en CentOS usando la línea de comandos de OpenSSL. Ejecutas un comando, respondes algunas preguntas sobre tu dominio y organización, y OpenSSL escribe dos archivos: un CSR que envías a la Autoridad de Certificación y una clave privada que permanece en tu servidor. Los mismos pasos funcionan en CentOS Stream, AlmaLinux, Rocky Linux y Red Hat Enterprise Linux, ya que todos incluyen la misma herramienta openssl.
Una nota sobre las versiones de CentOS: CentOS Linux 8 llegó al final de su vida útil el 31 de diciembre de 2021, y CentOS Linux 7 el 30 de junio de 2024. Esas versiones ya no reciben actualizaciones de seguridad, así que no las utilices para sitios públicos nuevos. CentOS Stream es la línea actual mantenida por el CentOS Project, y AlmaLinux y Rocky Linux son reemplazos directos del antiguo CentOS Linux. El comando CSR que aparece a continuación es idéntico en todos ellos.
Paso 1: Inicia sesión en tu servidor por SSH
Conéctate a tu servidor CentOS con SSH. Reemplaza user con el nombre de tu cuenta y server-ip con el nombre de host o la dirección IP de tu servidor:
ssh user@server-ip
Generar la clave y el CSR no requiere permisos de root, pero sí necesitas acceso de escritura al directorio en el que ejecutas el comando. Confirma que OpenSSL está disponible con:
openssl version
Si el comando no está disponible, instálalo con sudo yum install openssl en CentOS 7, o sudo dnf install openssl en CentOS Stream, AlmaLinux y Rocky Linux.
Paso 2: Crea la clave privada y el CSR
Ejecuta el siguiente comando en el terminal. Crea una clave privada RSA de 2048 bits y un CSR correspondiente en un solo paso:
openssl req -new -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr -addext "subjectAltName=DNS:yourdomain.com,DNS:www.yourdomain.com"
Reemplaza yourdomain con el nombre real de tu dominio para que los archivos sean fáciles de identificar más tarde. Por ejemplo, si tu dominio es example.com, los archivos se convierten en example.key y example.csr. Esto es lo que hace cada parte del comando:
- req -new crea una nueva solicitud de firma de certificado.
- -newkey rsa:2048 genera una nueva clave privada RSA de 2048 bits, el mínimo actual para certificados públicos.
- -nodes deja la clave privada sin cifrar, de modo que el servidor web pueda leerla al iniciar sin pedir una contraseña.
- -keyout yourdomain.key establece el nombre del archivo para la clave privada.
- -out yourdomain.csr establece el nombre del archivo para el CSR.
OpenSSL utiliza SHA-256 para firmar los CSR modernos de forma predeterminada, que es lo que exigen las Autoridades de Certificación. Si prefieres una clave de curva elíptica en lugar de RSA, utiliza una clave P-256:
openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -nodes -keyout yourdomain.key -out yourdomain.csr -addext "subjectAltName=DNS:yourdomain.com,DNS:www.yourdomain.com"
Mantén la clave privada en privado. El archivo .key nunca debe salir de tu servidor y nunca debe enviarse a la Autoridad de Certificación ni a ninguna otra persona. Solo se envía el archivo .csr. Cualquiera que tenga la clave privada puede suplantar a tu sitio, así que protégela y haz una copia de seguridad en un lugar seguro.
Paso 3: Introduce los datos de tu organización
Después de ejecutar el comando, OpenSSL solicita los datos que se incluirán en el CSR. Responde cada uno como se describe a continuación:
- Country Name: el código ISO de dos letras del país donde está registrada tu organización. Por ejemplo, ingresa US para Estados Unidos o GB para el Reino Unido. Usa GB, no UK: UK no es un código ISO válido y hará que el CSR sea inválido.
- State or Province Name: el nombre completo del estado o provincia, no una abreviatura (por ejemplo, California).
- Locality Name: el nombre completo de la ciudad o localidad donde se encuentra tu organización.
- Organization Name: para un certificado de Validación de Negocio o Validación Extendida, ingresa el nombre legal exacto de tu empresa. Para un certificado de Validación de Dominio, puedes usar tu nombre completo en su lugar.
- Organizational Unit Name: el departamento que gestiona tus certificados, como TI o Administración Web. Este campo es opcional y puedes dejarlo en blanco.
- Common Name: el nombre de dominio completamente calificado (FQDN) que deseas proteger, por ejemplo www.example.com. Para un certificado Wildcard, coloca un asterisco delante del dominio, por ejemplo *.example.com. No incluyas https:// ni ningún otro carácter.
- Email Address: las Autoridades de Certificación modernas ignoran este campo para la validación. Puedes dejarlo en blanco o añadir una dirección de contacto.
- A challenge password: deja esto en blanco. Es un campo heredado que las Autoridades de Certificación no utilizan, y añadir uno puede causar problemas con algunos sistemas de pedidos.
Cuando termines de responder, OpenSSL escribirá ambos archivos en tu directorio actual. Lístalos para confirmar que existen:
ls -l yourdomain.key yourdomain.csr
Paso 4: Verifica el CSR antes de enviarlo
Comprueba el CSR antes de enviarlo a la Autoridad de Certificación. Esto confirma que los datos son correctos y que la firma es válida, lo que evita un pedido rechazado:
openssl req -noout -text -verify -in yourdomain.csr
Busca verify OK en la salida, luego comprueba que la línea Subject muestra el Common Name, la organización y el país que ingresaste, y que la clave coincide con lo esperado (por ejemplo, RSA de 2048 bits con firma SHA-256). Si prefieres usar un navegador, pega el CSR en nuestro decodificador de CSR en línea para leer los mismos datos.
Paso 5: Copia el CSR y solicita tu certificado
Abre el CSR para copiar su contenido:
cat yourdomain.csr
Copia todo el bloque, incluidas las líneas —–BEGIN CERTIFICATE REQUEST—– y —–END CERTIFICATE REQUEST—– y todo lo que hay entre ellas. Cada marcador utiliza cinco guiones a cada lado. Pega el bloque completo en el formulario de pedido cuando compres tu certificado. Si prefieres preparar la solicitud antes de realizar el pedido, también puedes pegarla en nuestro Generador de CSR.
Después de que la Autoridad de Certificación valide el CSR y emita el certificado, sigue nuestras instrucciones de instalación de SSL en CentOS para instalarlo. Una vez que el certificado esté activo en HTTPS, analízalo con nuestro SSL Checker para confirmar que el certificado y la cadena se sirven correctamente.
Genera un CSR en otras plataformas Linux
El comando de OpenSSL es el mismo en todas las distribuciones. Si trabajas en un sistema diferente, consulta nuestras guías para Red Hat Linux, Debian y Ubuntu.
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

