Note:

Uso del servicio OCI Certificates para emitir un certificado interno para el sitio web alojado en el servidor IIS

Introducción

Los certificados de Oracle Cloud Infrastructure (OCI) son un servicio para crear y gestionar certificados de seguridad de capa de transporte (TLS). El servicio permite a las organizaciones crear jerarquías de autoridad de certificación (CA) privadas y certificados TLS que se pueden desplegar y renovar automáticamente en el arrendamiento del cliente, integrados con servicios de OCI como OCI Load Balancer y OCI API Gateway. También podemos utilizar este servicio para generar certificados para nuestros servidores web internos alojados en Internet Information Services (IIS), Apache o nginx.

Objetivo

En este tutorial, describimos cómo utilizar OCI Certificates para emitir un certificado interno que se utilizará para alojar un sitio web protegido por TLS/SSL en un servidor IIS de Windows. Hablaremos de las dos opciones.

Requisitos

Nota: No introduzca información confidencial.

Tarea 1: Creación de una autoridad de certificación

Necesitamos crear una CA tanto si emitimos un certificado mediante CSR como directamente mediante OCI Certificates CA. Para obtener más información sobre cómo configurar una autoridad de certificación, consulte Creating a Certificate Authority.

Utilice OCI Certificates para crear una CA raíz o una CA subordinada. Debe tener una autoridad de certificación raíz para crear una autoridad de certificación subordinada. Una jerarquía de un solo nivel consta de una CA. La única CA es una CA raíz y una CA emisora. Una CA raíz es el término para el anclaje de confianza de la PKI. Cualquier aplicación, usuario o equipo que confíe en la CA raíz confía en los certificados emitidos por la jerarquía de CA. La CA emisora es una CA que emite certificados para entidades finales. Sin embargo, una jerarquía de dos niveles es un diseño que satisface las necesidades de la mayoría de las compañías. En este diseño hay una CA raíz y una CA subordinada que emite. El nivel de seguridad aumenta porque los roles de CA raíz y de CA emisora están separados. La creación de una CA requiere que tenga acceso a una clave de cifrado asimétrica protegida por hardware existente desde OCI Vault. Para obtener más información, consulte Visión general de OCI Vault.

  1. Abra el menú de navegación y haga clic en Identidad y seguridad.

  2. En Certificados, haga clic en Autoridades de certificación.

  3. Haga clic en Crear autoridad de certificación.

  4. Haga clic en Compartimento y, a continuación, seleccione el compartimento en el que desea crear la CA.

  5. En Tipo de autoridad de certificación, seleccione el tipo de autoridad de certificación de las siguientes opciones.

    1. Autoridad de certificación raíz: la CA en la parte superior de la jerarquía en una cadena de autoridades de certificación.

    2. autoridad de certificación subordinada: cualquier CA que no sea la CA raíz en una jerarquía que contenga otras CA.

  6. Introduzca un nombre mostrado para la CA. Este nombre ayuda a identificar la CA con fines administrativos, pero no aparece como parte del certificado de la CA.

  7. (Opcional) Introduzca una descripción para ayudarle a identificar la CA. Esta descripción ayuda a identificar la CA, pero no aparece como parte del certificado de CA.

  8. (Opcional) Para aplicar etiquetas, haga clic en Mostrar etiquetado. Para obtener más información, consulte Etiquetas de recursos y, a continuación, haga clic en Siguiente.

  9. Introduzca la información de asunto que incluye al menos un nombre común para identificar al titular del certificado de CA. Según el uso previsto del certificado, el sujeto puede identificar a una persona, a una organización o a un punto final de la computadora. El formato de la información de sujeto debe cumplir con los estándares RFC 5280. Puede utilizar comodines para emitir un certificado para varios nombres de dominio o subdominio.

  10. (Opcional) Introduzca más información sobre el asunto de CA, haga clic en Mostrar campos adicionales. Para obtener más información sobre cada uno de los valores de un nombre distintivo de asunto y haga clic en Siguiente.

  11. (Opcional) Haga clic en No válido antes de y, a continuación, especifique la hora y la fecha UTC cuando desee empezar a utilizar la autoridad de certificación. Si no especifica una fecha, el período de validez de la autoridad de certificación comienza inmediatamente.

  12. Haga clic en No válido después de y, a continuación, especifique la fecha después de la cual la autoridad de certificación ya no se puede utilizar para emitir o validar autoridades de certificación o certificados subordinados.

    Nota: Debe especificar una fecha al menos un día posterior a la fecha de inicio del período de validez. No puede especificar una fecha posterior al 31 de diciembre de 2037. Los valores se redondean al segundo más cercano.

  13. Si crea una CA subordinada, en Issuer Certificate Authority, especifique una CA principal para emitir esta CA. Si crea una CA raíz, continúe con el siguiente paso.

  14. En Almacén, seleccione el almacén que contiene la clave de cifrado que desea utilizar para el certificado de CA. Opcional, haga clic en Cambiar compartimento para especificar otro compartimento.

  15. En Clave, seleccione la clave en el almacén que desea utilizar. La lista incluye solo las claves asimétricas del almacén porque los certificados solo soportan claves asimétricas. Puede elegir entre las claves Rivest-Shamir-Adleman (RSA) de 2048 bits o de 4096 bits. También puede seleccionar las claves del algoritmo de firma digital de curva elíptica (ECDSA) que tienen un ID de curva elíptica de NIST_P384. Concretamente, la lista incluye solo estos tipos de claves asimétricas que están protegidas por un módulo de seguridad de hardware (HSM). Certificates no soporta el uso de claves protegidas por software.

  16. En Algoritmo de firma, seleccione una de las siguientes opciones, según la familia de algoritmos de claves y haga clic en Siguiente.

    • SHA256_WITH_RSA: clave RSA con una función hash SHA-256

    • SHA384_WITH_RSA: clave RSA con una función hash SHA-384

    • SHA512_WITH_RSA: clave RSA con una función hash SHA-512

    • SHA256_WITH_ECDSA: clave ECDSA con una función hash SHA-256

    • SHA384_WITH_ECDSA: clave ECDSA con una función hash SHA-384

    • SHA512_WITH_ECDSA: clave ECDSA con una función hash SHA-512

  17. Configure la regla de caducidad. En Duración máxima de validez de los certificados (días), especifique el número máximo de días que puede ser válido un certificado emitido por esta CA. Recomendamos firmemente un período de validez no superior a 90 días.

  18. En Duración máxima de validez de la CA subordinada (días), especifique el número máximo de días que una CA emitida por esta CA puede ser válida para emitir otras CA o certificados y haga clic en Siguiente.

  19. En la página Configuración de revocación, si no desea configurar una lista de revocación de certificados (CRL), seleccione la casilla de control Omitir revocación. Para configurar la revocación del certificado, desactive la casilla de control y, a continuación, especifique un cubo de OCI Object Storage dedicado donde planea almacenar la CRL.

  20. (Opcional) Haga clic en Cambiar compartimento para encontrar un cubo en otro compartimento.

  21. En Formato de nombre de objeto, especifique el nombre del objeto. Puede incluir llaves en el nombre del objeto para indicar dónde puede insertar el servicio el número de versión de la autoridad de certificación que emite. Esta adición ayuda a evitar la sustitución de una CRL existente cuando cree otra versión de autoridad de certificación.

  22. (Opcional) En URL con formato personalizado, proporcione la URL que desea utilizar con las API para acceder al objeto. Esta URL se nombra en certificados como punto de distribución de CRL (CDP). Puede incluir llaves en la URL para indicar dónde puede insertar el servicio el número de versión de la autoridad de certificación que emite. Esta adición ayuda a evitar sobrescribir una CDP existente cada vez que crea otra versión de CA. Puede especificar una URL HTTPS solo si no existen dependencias circulares en la verificación de la cadena HTTPS.

  23. (Opcional) Para proporcionar otro CDP, haga clic en + Otra URL y, a continuación, proporcione otra URL en la que los usuarios puedan acceder a la CRL y, a continuación, haga clic en Siguiente.

  24. Revise la información y, a continuación, haga clic en Crear autoridad de certificación.

Puede tardar un poco en crear recursos relacionados con certificados. Una vez creada la CA, puede utilizar uno de los dos métodos siguientes para obtener un certificado emitido para los servidores IIS.

Tarea 2: Obtener un certificado emitido mediante CSR

Cree una CSR en el servidor IIS, que también creará una clave privada en el mismo servidor. Se trata de un enfoque recomendado que nos proporciona una forma estandarizada de enviar la CA su clave pública, así como información que identifica su compañía y nombre de dominio.

  1. Cree una CSR mediante IIS, debe ir a Internet Information Services (IIS) Manager (Gestor de servicios de información de Internet [IIS]) y, en el menú Connections (Conexiones), hacer clic en el nombre del servidor y, a continuación, hacer clic en Server Certificates (Certificados de servidor).

    Imagen 1

  2. En el menú Acciones, haga clic en Crear solicitud de certificado..., introduzca todos los detalles como se muestra a continuación y, a continuación, haga clic en Siguiente

    Imagen 2

    Imagen 3

  3. En Propiedades del proveedor de servicios criptográficos, introduzca la siguiente información y, a continuación, haga clic en Siguiente.

    Imagen 4

    (Los tipos de proveedores criptográficos son familias de proveedores de servicios criptográficos que comparten formatos de datos y protocolos criptográficos. Los formatos de datos incluyen esquemas de relleno de algoritmos, longitudes de clave y modos por defecto).

    Microsoft RSA SChannel Cryptographic Provider es un CSP recomendado y se debe utilizar a menos que tenga un motivo para utilizar cualquier otro valor. Admite hash, firma de datos y verificación de firmas. La longitud de bits determina la fuerza de cifrado del certificado: cuanto mayor sea la longitud, mayor será la seguridad. Se recomienda 2048 para una mejor seguridad.

  4. En la página Nombre de archivo, en Especificar un nombre de archivo para la solicitud de certificado, haga clic en ... para buscar la ubicación en la que desea guardar la CSR (guarde el archivo como .pem) que concluye la parte de IIS por ahora.

    Imagen 5

  5. Necesitamos conectarnos a nuestro arrendamiento de OCI e importar esta CSR. Al tener el archivo CSR en formato .pem, puede ir a Servicios de certificados de OCI, Autoridad de certificación, Certificados, Crear certificado, seleccionar Emitido por CA interna, gestionado externamente e introducir los detalles necesarios como se muestra a continuación.

    Imagen 6

  6. En la página Configuración de certificado, debe cargar el archivo CSR creado en la tarea 2.5 en formato .pem, haga clic en Siguiente y, a continuación, en Crear certificado.

    Imagen 7

    Imagen 8

  7. Ahora necesitamos crear el .cer del certificado que se puede utilizar en nuestro servidor IIS para completar la CSR. El archivo .cer se puede obtener directamente de la consola de OCI de Identidad y seguridad, Certificados y Certificado. Haga clic en Ver contenido, descargue el contenido del certificado pem y certificate-chain-pem y cree un único archivo combinando el contenido de ambos con certificate-pem en la parte superior y certificate-chain-pem en la parte inferior del archivo (asegúrese de guardar el archivo resultante como .cer).

  8. Cuando haya terminado, puede volver al servidor de IIS y hacer clic en Completar solicitud de certificado, proporcionar el archivo .cer que ha creado anteriormente y proporcionar un nombre fácil de recordar y, a continuación, hacer clic en Siguiente.

    Imagen 9

    Imagen 10

    Imagen 100

  9. Podrá ver el certificado en Certificados de servidor en IIS y se puede utilizar para su sitio web alojado en IIS modificando los enlaces en el sitio web. Edite el enlace de sitio y seleccione el certificado instalado.

    Imagen 11

Tarea 3: Creación de un certificado a partir del servicio OCI Certificates sin CSR

En este enfoque, transfiere la gestión de las claves privadas a la autoridad de certificación. Por lo general, la CSR es la forma más recomendada de obtener un certificado de la CA. Si por alguna razón no pudo obtener una CSR y desea obtener un certificado emitido, puede usar este enfoque. Utilizaremos la CA creada anteriormente para emitir un certificado a nuestro sitio web alojado en IIS. Proporcionaremos información importante al emitir el certificado, como el nombre del asunto de nuestro sitio web (iistest.com en mi caso), el tipo de perfil del certificado, el algoritmo de clave y la CA que se utilizará.

  1. Vaya a la consola de OCI y haga clic en Identidad y seguridad.

  2. En Certificados, haga clic en Certificado y, a continuación, en Crear certificado.

  3. En compartimento, seleccione el compartimento en el que desea crear el certificado. El certificado puede existir en el mismo compartimento que la autoridad de certificación o en otro diferente.

  4. En Tipo de certificado, para emitir un certificado desde la CA de certificados de OCI que también gestiona el certificado, haga clic en Emitido por la CA interna.

  5. Introduzca un nombre de visualización para el certificado.

  6. (Opcional) Introduzca una descripción para ayudarle a identificar el certificado.

  7. (Opcional) Para aplicar etiquetas, haga clic en Mostrar etiquetado y en Siguiente.

  8. Introduzca la información de asunto, que incluye un nombre común para identificar al titular del certificado. Según el uso previsto del certificado, el sujeto puede identificar a una persona, a una organización o a un punto final de la computadora. La información de sujeto también puede incluir nombres DNS o direcciones IP como nombres alternativos de sujeto por los que también se conoce el portador del certificado. Puede utilizar comodines para emitir un certificado para varios nombres de dominio o subdominio. Especifique el nombre común y el nombre de DNS (en SAN) al crear el certificado. (Algunos exploradores ignoran el nombre común y utilizan el nombre del asunto o el nombre de SAN para evaluar la información del asunto).

  9. (Opcional) Para agregar más nombres alternativos de sujeto, haga clic en + Otro nombre alternativo de sujeto, seleccione el tipo de dirección, introduzca el nombre y, a continuación, haga clic en Siguiente.

  10. Seleccione un tipo de perfil de certificado de los siguientes perfiles según el uso previsto del certificado.

    • Servidor o cliente TLS: presentado por un servidor o cliente para conexiones TLS/SSL.

    • Servidor TLS: presentado por un servidor para conexiones TLS/SSL.

    • Cliente TLS: presentado por un cliente durante las conexiones TLS/SSL.

    • Firma de código TLS: presentada por un programa para validar su firma.

    Dado que estamos emitiendo el certificado para un servidor, debemos elegir el tipo de perfil del servidor TLS aquí.

  11. Para cambiar la CA que emite el certificado, haga clic en Autoridad de certificación y, a continuación, seleccione una CA. Si es necesario, haga clic en Change Compartment y, a continuación, seleccione un compartimento diferente si la CA está en un compartimento diferente al seleccionado para el certificado.

  12. (Opcional) Haga clic en No válido antes de y, a continuación, introduzca una fecha antes de la cual el certificado no se puede utilizar para validar la identidad de su portador. Si no especifica una fecha, el período de validez del certificado comienza inmediatamente. Los valores se redondean al segundo más cercano.

  13. Haga clic en No válido después de y, a continuación, cambie la fecha después de la cual el certificado ya no es una prueba válida de la identidad de su portador. Debe especificar una fecha al menos un día posterior a la fecha de inicio del período de validez. La fecha no debe superar la caducidad de la autoridad de certificación emisora. Tampoco puede especificar una fecha posterior al 31 de diciembre de 2037. Los valores se redondean al segundo más cercano. Normalmente, los certificados se utilizan durante todo el período de validez, a menos que suceda algo que requiera revocación.

  14. Para el algoritmo de clave, seleccione la combinación de algoritmo y longitud de clave que necesita para el par de claves de certificado de las siguientes opciones.

    • RSA2048: clave Rivest-Shamir-Adleman (RSA) de 2048 bits

    • RSA4096: clave RSA de 4096 bits

    • ECDSA_P256: clave ECDSA con un ID de curva P256

    • ECDSA_P384: clave ECDSA con un ID de curva P384

  15. (Opcional) Haga clic en Show Additional Fields y, a continuación, en Signature Algorithm, seleccione uno de los siguientes algoritmos de firma, según la clave, y, a continuación, haga clic en Next.

    • SHA256_WITH_RSA: clave Rivest-Shamir-Adleman (RSA) con una función hash SHA-256

    • SHA384_WITH_RSA: clave RSA con una función hash SHA-384

    • SHA512_WITH_RSA: clave RSA con una función hash SHA-512

    • SHA256_WITH_ECDSA: clave ECDSA con una función hash SHA-256

    • SHA384_WITH_ECDSA: clave ECDSA con una función hash SHA-384

    • SHA512_WITH_ECDSA: clave ECDSA con una función hash SHA-512

  16. Para configurar la renovación automática del certificado para evitar la interrupción en su uso, especifique un valor distinto de cero para la siguiente configuración y, a continuación, haga clic en Siguiente.

    • Intervalo de renovación (días): con qué frecuencia se renueva el certificado.

    • Período de renovación avanzado (días): número de días antes de que caduque el certificado esa renovación.

      Para una flexibilidad suficiente, renueve el certificado antes del final de su período de validez y con suficiente tiempo de renovación anticipada en caso de fallos. Un certificado que caduca antes de que el servicio pueda renovarlo correctamente puede provocar interrupciones en el servicio.

      Nota: El certificado no se renovará automáticamente en el servidor IIS. Debe obtener la nueva versión del certificado y volver a cargarlo en el servidor IIS cuando caduque el certificado.

  17. Revise toda la información y, a continuación, haga clic en Crear certificado.

  18. Después de crear el certificado, necesitamos crear el .pem del certificado que se puede instalar en nuestro servidor IIS. Para crear el archivo .pem, necesitamos tomar el cert.pem y el key.pem privado del certificado que hemos creado anteriormente. cert.pem se puede obtener directamente de la consola de OCI de Identidad y seguridad, Certificados, Certificado, Ver contenido, descargar el contenido del certificado pem y certificate-chain-pem y crear un único archivo combinando el contenido de ambos con certificate-pem en la parte superior y certificate-chain-pem en la parte inferior del archivo. Para obtener la clave privada, podemos utilizar la CLI de OCI de nuestro propio OCI Cloud Shell y ejecutar el siguiente comando.

    oci certificates certificate-bundle get --certificate-id=ocid1.certificate.XXXXXXX --bundle-type=CERTIFICATE_CONTENT_WITH_PRIVATE_KEY
    
  19. Debe copiar el contenido de private-key-pem en la sección de datos de la salida del comando y guardarlo como un archivo .pem (por ejemplo, private.pem). Una vez que tengamos los archivos cert.pem y private.pem, podemos utilizar OpenSSL para generar un archivo .pfx. Al copiar el contenido del archivo private-key-pem, puede que tenga que eliminar el carácter \n, ya que crea algunos problemas de formato.

    Nota: La CLI de OCI, OpenSSL y muchas otras herramientas están preinstaladas en OCI Cloud Shell, que se pueden utilizar para realizar estas operaciones con facilidad.

    El archivo .pem de clave privada debe tener un aspecto similar a este:

    Imagen 12

  20. Puede utilizar el siguiente comando para obtener el archivo .pem. Utilice OCI Cloud Shell nativo para ejecutar todos estos comandos y proporcionar una contraseña segura para su clave privada. Necesitará esta contraseña al importar .pem.

    openssl pkcs12 -inkey priv.pem -in cert.pem -export -out iis.pem
    

    Este archivo iis.pem se debe copiar en el servidor IIS. Tendremos que importar este iis.pem en el almacén de certificados de máquina local en el servidor IIS. Ya he instalado IIS y creado un sitio web de demostración. Una vez importado el certificado, puedo ir a mi sitio web alojado en IIS, editar el enlace de sitio y elegir el certificado instalado. Ahora estamos listos para probar el sitio web utilizando https (http seguro).

    Imagen 13

Tarea 4: Probar el sitio web alojado de IIS mediante HTTP seguro (https)

Hemos utilizado un sitio básico de Hello World para mostrar esta demostración y hemos colocado el certificado de CA raíz (se puede exportar desde Certificate-chain-pem) en la carpeta Trusted Root Certification Authority en el almacén de certificados de máquina local en nuestras máquinas cliente utilizadas para acceder a este sitio web. Esto se hace porque las CA creadas por certificados de OCI son CA privadas y, por lo tanto, no son de confianza para los exploradores, por lo que necesitamos agregar la CA raíz y la CA intermedia (si se utilizan) en el almacén raíz/almacén intermedio de confianza en todas las máquinas locales que intentan acceder al sitio web.

Imagen 14

Agradecimientos

Más recursos de aprendizaje

Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de aprendizaje gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en Oracle Learning Explorer.

Para obtener documentación sobre el producto, visite Oracle Help Center.