bg-tutorials

Cómo generar un código CSR en servidores Oracle

Esta guía te muestra cómo generar un CSR (Certificate Signing Request) en servidores Oracle. Cubre los tres productos de Oracle donde crearías un CSR localmente: Oracle Wallet Manager (o el moderno comando orapki), Oracle iPlanet Web Server, y Oracle WebLogic Server (Java keytool). Elige la sección que coincide con tu producto, sigue los pasos y luego envía el CSR a tu Autoridad de Certificación.

Generar un CSR en Oracle Wallet Manager

Si ya generaste tu CSR, salta directamente a instalar tu certificado SSL en Oracle. De lo contrario, tienes dos opciones en Oracle Wallet Manager: la interfaz gráfica de Oracle Wallet Manager (OWM) o la moderna utilidad de línea de comandos orapki incluida con los productos de Oracle. El método de orapki es programable y es la opción que Oracle recomienda para implementaciones actuales; OWM sigue siendo compatible para las mismas operaciones.

Opción A: Oracle Wallet Manager (interfaz gráfica)

  1. Abre Oracle Wallet Manager. Si aún no tienes un wallet, elige Wallet > New, establece una contraseña segura y guárdalo.
  2. Desde el menú principal, elige Operations > Add Certificate Request.
  3. En el cuadro de diálogo, completa los detalles de la solicitud de certificado exactamente como está registrada legalmente tu organización:
    • Common Name (CN): el nombre de dominio completamente calificado que deseas proteger, por ejemplo www.tudominio.com, o un comodín como *.tudominio.com. No ingreses el nombre de una persona.
    • Organizational Unit (OU): las CA públicas ya no emiten este campo. Déjalo en blanco.
    • Organization (O): el nombre legal completo de tu empresa, por ejemplo Tu Empresa SL. Para certificados DV (Domain Validation), puedes dejarlo en blanco.
    • Locality / City (L): el nombre completo de la ciudad donde está registrada tu empresa, por ejemplo Madrid. No lo abrevies.
    • State / Province (ST): el nombre completo del estado o provincia, por ejemplo Madrid. No uses un código de dos letras.
    • Country (C): el código de país ISO de dos letras, por ejemplo US, GB, DE.
    • Key Size: 2048 bits es el mínimo público actual. Los wallets de Oracle ofrecen 512, 1024, 2048, 4096 y valores mayores, sin opción de 3072, por lo que el siguiente nivel aquí es 4096.
  4. Haz clic en OK. Una ventana de confirmación informa que el CSR se generó correctamente. El nodo del certificado en el menú de navegación del wallet ahora muestra el estado Certificate: [Requested].
  5. De vuelta en la vista del wallet, elige Operations > Export Certificate Request, asigna un nombre al archivo (por ejemplo tudominio.csr) y guárdalo. No cierres ni elimines el wallet: ahora contiene la clave privada emparejada con este CSR.

Nota: la interfaz gráfica de Oracle Wallet Manager no expone un campo separado para Subject Alternative Name (SAN). Los navegadores modernos y los clientes TLS validan los certificados según la extensión SAN, no según el Common Name, así que enumera cada nombre de host que necesites (por ejemplo tudominio.com y www.tudominio.com) en el campo SAN del formulario de pedido de tu Autoridad de Certificación. La CA los añadirá al certificado emitido. Si usas la línea de comandos de orapki (Opción B a continuación), puedes incorporar los SAN directamente en el CSR con la opción -addext_san.

Opción B: orapki (línea de comandos)

La utilidad orapki se incluye con los productos de Oracle (en las distribuciones de la base de datos, Fusion Middleware y HTTP Server) y es la alternativa programable a OWM. El flujo consta de dos comandos: crear el wallet y el par de claves, y luego exportar el CSR.

Crea un wallet de inicio de sesión automático y añade un par de claves:

orapki wallet create -wallet /etc/oracle/wallet -auto_login -pwd "YourStrongPassword"

orapki wallet add -wallet /etc/oracle/wallet 
  -dn "CN=www.yourdomain.com, O=Your Company LLC, L=Seattle, ST=Washington, C=US" 
  -keysize 2048 
  -addext_san "DNS:yourdomain.com,DNS:www.yourdomain.com" 
  -pwd "YourStrongPassword"

Luego exporta el CSR desde el wallet:

orapki wallet export -wallet /etc/oracle/wallet 
  -dn "CN=www.yourdomain.com, O=Your Company LLC, L=Seattle, ST=Washington, C=US" 
  -request /tmp/yourdomain.csr 
  -pwd "YourStrongPassword"

Sustituye la ruta del wallet, el DN y la contraseña por tus propios valores. El DN en el comando export debe coincidir con el DN que usaste al añadir el par de claves. La opción -addext_san (orapki 12.2.1.1 y posteriores) incorpora los Subject Alternative Names directamente en el CSR; enumera cada nombre de host que el certificado debe cubrir, incluyendo tanto el dominio raíz como el subdominio www. El archivo tudominio.csr ahora contiene el CSR, listo para enviar.

Enviar el CSR

Abre el archivo .csr en cualquier editor de texto (por ejemplo, Notepad). El archivo es texto sin formato, comienza con -----BEGIN NEW CERTIFICATE REQUEST----- (o -----BEGIN CERTIFICATE REQUEST-----) y termina con la línea -----END correspondiente. Copia todo el bloque, incluyendo esas líneas de encabezado y pie, y pégalo en el campo CSR durante el proceso de compra con tu CA.

Generar un CSR en Oracle iPlanet Web Server

Oracle iPlanet (anteriormente Sun Java System Web Server, luego Sun ONE) guarda los certificados de servidor y sus claves en un almacén de tokens. El asistente de CSR se encuentra en la consola de administración:

  1. En la consola de administración de Oracle iPlanet, abre Server Certificates y haz clic en Request.
  2. En la lista Configuration, elige la configuración para la que es el certificado.
  3. Selecciona el Token (Cryptographic Device) que contendrá la clave. Si la clave se almacena en el servidor, elige Internal; de lo contrario, selecciona tu token externo en el menú desplegable. Introduce la contraseña del token seleccionado.
  4. Completa los detalles del certificado:
    • Server Name: el nombre de dominio completamente calificado que deseas proteger, por ejemplo www.tudominio.com. Para un certificado comodín, añade un asterisco como prefijo, por ejemplo *.tudominio.com.
    • Organization (O): el nombre legal completo de tu empresa, por ejemplo Tu Empresa SL.
    • Organizational Unit (OU): obsoleto para las CA públicas. Déjalo en blanco.
    • Locality (L): el nombre completo de la ciudad donde está registrada tu organización.
    • State or Province (ST): el nombre completo del estado o provincia donde está registrada tu organización.
    • Country (C): el código de país ISO de dos letras, por ejemplo US para Estados Unidos. Consulta la lista completa de códigos de país.
  5. En Key Type, selecciona RSA con 2048 bits (o más).
  6. Para el Certificate Signing Authority (CSA), selecciona CA Signed.
  7. Revisa los valores que introdujiste, luego haz clic en Generate Request y después en Finish.
  8. Copia el CSR recién generado (incluyendo las líneas -----BEGIN NEW CERTIFICATE REQUEST----- y -----END NEW CERTIFICATE REQUEST-----) en un archivo de texto y luego haz clic en Close.

Nota: al igual que Oracle Wallet Manager, el asistente de CSR de iPlanet no expone un campo SAN. Proporciona cada nombre de host que el certificado debe cubrir (el dominio raíz más www, además de cualquier otro subdominio) en el campo SAN del formulario de pedido de tu CA.

Generar un CSR en Oracle WebLogic Server

Oracle WebLogic Server utiliza almacenes de claves Java (keystores). Generas el CSR con la utilidad Java keytool en dos comandos: primero keytool -genkeypair crea el keystore y la clave privada bajo un alias elegido, y luego keytool -certreq exporta el CSR correspondiente. El mismo alias debe reutilizarse más adelante al importar el certificado firmado, de modo que la clave, el CSR y el eventual certificado residan todos en un mismo lugar.

Paso 1: Crear el keystore y la clave privada

Abre una terminal en el servidor WebLogic y crea un nuevo keystore en formato PKCS12. PKCS12 es el formato de keystore predeterminado en Java desde JDK 9 y es el estándar moderno y portable. El formato propietario más antiguo JKS está oficialmente obsoleto:

keytool -genkeypair 
  -alias server 
  -keyalg RSA -keysize 2048 
  -storetype PKCS12 
  -keystore yourdomain.p12 
  -validity 825

Qué significan las opciones:

  • -alias server: el nombre de la entrada dentro del keystore. Elige una etiqueta que reconozcas (a menudo server, o tu dominio). Anótala. Debes reutilizar exactamente este alias al generar el CSR y de nuevo al importar el certificado firmado.
  • -keyalg RSA -keysize 2048: una clave RSA de 2048 bits es el mínimo público actual. Para keystores nuevos, 3072 bits es una actualización razonable para claves de mayor duración. La mayoría de las CA públicas también aceptan ECDSA (-keyalg EC -groupname secp256r1) si prefieres una clave más pequeña y rápida; -groupname requiere JDK 13 o posterior, así que en los entornos de ejecución Java 8 y Java 11 que admiten versiones antiguas de WebLogic, usa en su lugar -keyalg EC -keysize 256, que selecciona la misma curva.
  • -storetype PKCS12: fuerza el keystore moderno PKCS12. La extensión correspondiente es .p12 (o .pfx).
  • -keystore yourdomain.p12: el archivo de keystore a crear. Sustitúyelo por algo que recuerdes, y mantén el archivo a salvo: contiene tu clave privada.
  • -validity 825: cuánto tiempo es válido el certificado autofirmado provisional dentro del keystore. El certificado firmado de la CA lo reemplaza posteriormente, por lo que el valor exacto no afecta la vida útil en producción.

Nota: si debes seguir usando JKS para una implementación de WebLogic más antigua, cambia -storetype PKCS12 por -storetype JKS y usa una extensión .jks. El resto del flujo de trabajo es idéntico. Para certificados comodín, no uses un asterisco en el nombre del archivo del keystore: ese carácter no es compatible con la mayoría de los sistemas de archivos.

keytool luego solicita una contraseña de keystore. Elige una contraseña segura y guárdala en tu gestor de secretos: la necesitarás para cada comando keytool posterior y para la configuración del keystore en WebLogic. Con los keystores PKCS12, la contraseña de la clave es igual a la contraseña del keystore, por lo que solo hay una contraseña que recordar.

Paso 2: Introducir los datos de tu organización (DN)

keytool ahora solicita el Distinguished Name (DN): los campos de identidad que van en el CSR. Responde a cada pregunta con el valor exacto y legal de tu organización. La puntuación y la precisión importan, ya que una CA rechazará las discrepancias frente a los registros públicos de la empresa.

  • First and last name (CN): así es como lo denomina keytool, pero se trata del campo Common Name. Introduce el FQDN exacto que estás protegiendo, por ejemplo www.tudominio.com, o un comodín como *.tudominio.com. No introduzcas el nombre de una persona.
  • Organizational unit (OU): ya no lo emiten las CA públicas. No intentes omitirlo pulsando Enter: keytool sustituye su propio valor predeterminado y escribe OU=Unknown en la solicitud, y responder con un espacio da el mismo resultado. No existe una forma interactiva de omitirlo, así que escribe el nombre del departamento, por ejemplo IT, o utiliza la forma -dname mostrada más abajo y omite el componente OU de la cadena.
  • Organization (O): el nombre legal completo de tu empresa, por ejemplo Tu Empresa SL. Si el nombre de tu empresa contiene símbolos como & o @, escríbelos con palabras u omítelos; keytool rechazará algunos caracteres especiales.
  • City or locality (L): el nombre completo de la ciudad, por ejemplo Barcelona. No lo abrevies.
  • State or province (ST): el nombre completo del estado o provincia, por ejemplo Cataluña. No uses un código de dos letras.
  • Country code (C): el código de país ISO de dos letras, por ejemplo US, GB, DE.

Después de la última pregunta, keytool muestra un resumen como CN=www.tudominio.com, OU=Unknown, O=Tu Empresa SL, L=Barcelona, ST=Cataluña, C=US. Escribe yes para confirmar. El archivo de keystore ahora existe con una entrada: tu alias, que contiene la clave privada y un certificado autofirmado provisional.

Si prefieres un comando no interactivo, pasa el DN en línea y omite las preguntas:

keytool -genkeypair 
  -alias server 
  -keyalg RSA -keysize 2048 
  -storetype PKCS12 
  -keystore yourdomain.p12 
  -dname "CN=www.yourdomain.com, O=Your Company LLC, L=San Francisco, ST=California, C=US" 
  -validity 825

Paso 3: Generar el CSR con SAN

Los navegadores modernos y los clientes TLS validan los certificados según la extensión Subject Alternative Name (SAN), no solo según el Common Name. Solicita los SAN directamente en el CSR para que la CA los incluya en el certificado emitido. Usa el mismo alias y keystore del Paso 1:

keytool -certreq 
  -alias server 
  -keystore yourdomain.p12 
  -file yourdomain.csr 
  -ext san=dns:yourdomain.com,dns:www.yourdomain.com

Qué significan las opciones:

  • -alias server: debe coincidir con el alias del Paso 1. Es el alias cuya clave privada firma la solicitud.
  • -keystore yourdomain.p12: debe coincidir con el keystore del Paso 1.
  • -file yourdomain.csr: el nombre del archivo de salida para el CSR.
  • -ext san=dns:…: la extensión Subject Alternative Name. Enumera cada nombre de host que el certificado debe cubrir, incluyendo tanto el dominio raíz simple (tudominio.com) como el subdominio www. Añade más entradas separadas por comas, por ejemplo dns:api.tudominio.com.

keytool solicita la contraseña del keystore y escribe el CSR en tudominio.csr en el directorio actual.

Crítico: conserva tu alias y tu keystore

El error más común con keytool en WebLogic es importar el certificado firmado con un alias nuevo. Al hacer eso, el certificado se almacena como una entrada de confianza independiente sin ninguna clave privada asociada, y el listener SSL de WebLogic no se iniciará. Importa siempre la respuesta firmada de vuelta al mismo alias que contiene la clave privada (el alias del Paso 1).

Anota estos tres valores ahora, antes de cerrar la terminal:

  • El alias (en esta guía, server).
  • La ruta del archivo del keystore (por ejemplo tudominio.p12).
  • La contraseña del keystore.

Si no estás seguro de qué alias contiene tu clave, enumera el contenido del keystore y busca la entrada cuyo tipo sea PrivateKeyEntry:

keytool -list -v -keystore yourdomain.p12

Paso 4: Verificar el CSR antes de enviarlo

Detecta errores tipográficos en el DN o SAN faltantes antes de que la CA los valide. Imprime el CSR con keytool:

keytool -printcertreq -file yourdomain.csr

O bien, si OpenSSL está instalado:

openssl req -noout -text -in yourdomain.csr

Confirma tres cosas en el resultado: que el Subject muestra tu DN exacto, que el Subject Alternative Name enumera cada nombre de host que necesitas, y que el tamaño de la Public-Key coincide con lo que solicitaste (RSA de 2048 bits, o lo que hayas elegido). También puedes pegar el CSR en nuestro Decodificador de CSR para realizar la misma comprobación en un navegador.

Paso 5: Enviar el CSR a tu Autoridad de Certificación

Abre tudominio.csr en cualquier editor de texto. El archivo es texto sin formato, comienza con -----BEGIN NEW CERTIFICATE REQUEST----- y termina con -----END NEW CERTIFICATE REQUEST-----. Copia todo el bloque, incluyendo esas líneas de encabezado y pie, y pégalo en el campo CSR durante el proceso de compra con tu CA. En Windows, usa Ctrl + A y luego Ctrl + C para capturar el texto completo; en macOS, usa Cmd + A y luego Cmd + C.

Respalda el archivo del keystore (tudominio.p12) en una ubicación segura antes de cerrar la terminal. Si pierdes el keystore, pierdes la clave privada, y el certificado que emita la CA será inútil.

Después de que la CA valide tu solicitud y emita el certificado, continúa con cómo instalar tu certificado SSL en Oracle. En WebLogic, importas el certificado firmado de vuelta al mismo alias en el mismo keystore, y luego apuntas el listener SSL a ese keystore.

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.