Habilitar la compatibilidad con HTTPS para la caché conectada de Microsoft en Linux

En este artículo se proporcionan instrucciones paso a paso para habilitar la compatibilidad con HTTPS en los nodos de Microsoft Connected Cache for Enterprise que se ejecutan en una máquina host Linux.

El proceso de instalación requiere generar una solicitud de firma de certificado (CSR) en el equipo host, firmar la CSR mediante PKI pública o empresarial y, a continuación, importar de nuevo a la máquina host.

Requisitos previos

Antes de configurar la funcionalidad HTTPS, asegúrese de que se cumplen los siguientes requisitos:

  • El nodo de caché está en la versión de software de disponibilidad general

    1. Abra Azure Portal y vaya al recurso Caché conectada para empresas que hospeda los nodos de caché.
    2. En Administración de nodos de caché, busque el nodo de caché en el que desea habilitar HTTPS.
    3. Compruebe que el nodo está en la versión de disponibilidad general: debe mostrar "Sí" o "N/A" en la columna Migrada .
    4. Si no está en la versión de disponibilidad general ("No" en la columna Migrado ), seleccione el nodo de caché, vaya a la pestaña Implementación y siga las instrucciones para volver a implementar la caché conectada.
  • Acceso a una entidad de certificación (CA)

    Necesitará acceso a la PKI empresarial o a una CA pública. Si usa PKI empresarial, compruebe los requisitos de su organización para enviar una CSR a la CA.

  • Métodos de conexión de cliente de documentos

    Tenga en cuenta la dirección IP o el nombre de host (FQDN) que usan los clientes para conectarse al servidor de caché conectada. Este valor se usará como entrada de nombre alternativo de firmante (SAN) durante el proceso de generación de una CSR.

  • Garantizar la disponibilidad del puerto 443

    Para establecer una conexión HTTPS con la caché conectada, el puerto 443 debe estar disponible en el equipo host. Ejecute el siguiente comando para comprobar:

    sudo ss -tulpn | grep :443
    

    Revise la salida:

    • Sin salida : el puerto 443 no está en uso. Continúe con la configuración de HTTPS.
    • La salida contiene LISTEN (por ejemplo, tcp LISTEN 0 128 0.0.0.0:443 0.0.0.0:* users:(("nginx",pid=1234,fd=6))) — El puerto 443 ya está en uso por otro servicio. Identifique y detenga el servicio en conflicto antes de que la caché conectada pueda usar el puerto 443.

    Sugerencia

    La ss salida muestra el nombre del proceso y el PID en la última columna. En el ejemplo anterior, nginx (PID 1234) usa el puerto 443. Detenga o vuelva a configurar el servicio en conflicto antes de continuar. Por ejemplo, ejecute sudo systemctl stop nginx para detener nginx.

  • Comprobación de la configuración del firewall

    Si el firewall o el proxy corporativo interceptan el tráfico HTTPS al servidor de caché conectada (por ejemplo, mediante la inspección tls), la validación de certificados siempre producirá un error independientemente de la configuración del certificado.

Para obtener más información sobre cualquiera de los requisitos previos, consulte la página de referencia HTTPS en Linux.

Generación de una solicitud de firma de certificado (CSR)

Importante

Cada nodo de caché necesita su propio certificado o CSR (no se puede compartir):

  • Use nombres coherentes: mcc-node1.company.com, mcc-node2.company.com, etc.
  • Documente qué certificado pertenece a qué nodo
  • Los certificados comodín no funcionarán. El certificado o CSR que se usa para la conexión HTTPS a la caché conectada está vinculado de forma única a cada nodo de caché por motivos de seguridad.
  1. Abra un terminal y vaya a la carpeta que contiene el paquete de implementación extraído.

  2. Agregue permisos de ejecución al script de generación csr:

    sudo chmod +x ./generateCsr.sh
    
  3. Configure los parámetros para generateCsr.sh y ejecute el script con los valores especificados.

    Sintaxis básica

    sudo ./generateCsr.sh [Required Parameters] [Subject Parameters] [SAN Parameters]
    

    Parámetros necesarios

    Parámetro Tipo Descripción
    -algo Cadena Algoritmo de certificado: RSA, EC, ED25519o ED448
    -keySizeOrCurve Cadena Para RSA: tamaño de clave (2048, 3072, 4096). Para EC: nombre de curva (prime256v1, secp384r1)
    -csrName Cadena Nombre del archivo CSR generado

    Parámetros del asunto

    Parámetro Obligatorio Descripción Ejemplo
    -subjectCommonName Nombre común del certificado "localhost", "example.com"
    -subjectCountry No Código de país de dos letras "US", "CA", "GB"
    -subjectState No Estado o provincia "WA", "TX", "Ontario"
    -subjectOrg No Nombre de la organización "MyCompany", "ACME Corp"

    Advertencia

    La configuración del nombre alternativo del firmante (SAN) es fundamental para la validación de certificados. El certificado debe coincidir exactamente con la forma en que los clientes se conectan a la caché conectada; de lo contrario, los clientes omiten el nodo de caché.

    Por ejemplo, si los clientes se conectan a través de la dirección 192.168.1.100 IP pero el certificado solo tiene -sanDns "server.local", se produce un error en la validación del certificado.

    Parámetros de SAN (al menos uno necesario)

    Parámetro Descripción Ejemplo
    -sanDns Nombres DNS (separados por comas) "localhost,example.com,api.example.com"
    -sanIp Direcciones IP (separadas por comas) "127.0.0.1,192.168.1.100"
    -sanUri URI (separados por comas) "https://example.com,http://localhost"
    -sanEmail direcciones Email (separadas por comas) "admin@example.com,user@domain.com"
    -sanRid Identificadores registrados (separados por comas)
    -sanDirName Nombres de directorio (separados por comas)
    -sanOtherName Otros nombres (separados por comas)

    Para obtener más detalles y ejemplos basados en escenarios sobre parámetros de script CSR, consulte la página HTTPS en Linux referencia.

  4. Valide que el proceso de generación de CSR se completó correctamente.

    Si encuentra errores, busque el archivo con GenerateCsr.log marca de tiempo en la carpeta especificada en la salida del script. Busque la línea de salida que comienza con "Puede encontrar registros aquí: ..."

    • Formato de archivo: GenerateCsr_YYYYMMDD-HHMMSS.log
    • Ejemplo: GenerateCsr_20251201_143022.log es un archivo creado el 1 de diciembre de 2025 a las 2:30:22 p.m.
  5. Busque el archivo CSR generado en la carpeta Certificados de la máquina host y transfiéralo si es necesario.

    La ubicación de la carpeta Certificados se especifica en la salida del script, empezando por "Archivo CSR creado en: ...". El directorio termina con (...\Certificates\certs).

Firma de la CSR

  1. Seleccione una entidad de certificación (CA) para firmar la CSR.

    Importante

    La firma de ca debe coincidir con un certificado raíz en el almacén raíz de confianza del cliente.

    • PKI empresarial: la mayoría de los clientes usan la infraestructura PKI interna de su organización para firmar la CSR. Consulte con el equipo de TI o seguridad el proceso de su organización para enviar una CSR a la ca interna.

    • CA pública: si no tiene una PKI empresarial, puede usar una CA pública. Los siguientes recursos pueden ayudarle a empezar:

  2. Envíe la CSR a la entidad de certificación elegida y guarde el certificado firmado.

    El certificado firmado debe estar en formato .crt con codificación X.509. Si la entidad de certificación proporciona otros formatos, compruebe https en Linux página de referencia sobre cómo convertir al formato .crt.

    Nota

    La caché conectada no admite actualmente formatos protegidos con contraseña (.pfx, .p12, .p7b). La compatibilidad con estos se agregará pronto como parte de nuestra hoja de ruta de automatización de certificados.

  3. Compruebe que el certificado firmado tiene el formato correcto.

    Confirmar codificación PEM:

    grep "BEGIN CERTIFICATE" xxxx.crt
    

    Salida correcta esperada:

    -----BEGIN CERTIFICATE-----
    
  4. Mueva el certificado firmado a la carpeta Certificados de la máquina host de Linux.

    Esta será la misma carpeta en la que encontró inicialmente la CSR después de generarla.

    Precaución

    No comparta claves privadas, la caché conectada solo requiere el certificado firmado.

Importación de un certificado TLS firmado

  1. Abra un terminal y vaya a la ubicación del instalador de la caché conectada.

  2. Agregue permisos de ejecución al script de importación de certificados:

    sudo chmod +x ./importCert.sh
    
  3. Configure los parámetros para importCert.sh y ejecute el script con los valores especificados.

    Sintaxis básica

    sudo ./importCert.sh [Required Parameters]
    

    Parámetros necesarios

    Parámetro Tipo Descripción
    -certName Cadena Nombre de archivo completo del certificado TLS firmado (con o sin extensión .crt)

    Ejemplo

    sudo ./importCert.sh -certName "myTlsCert.crt"
    
  4. Compruebe que el proceso de importación se completó correctamente.

    Si encuentra errores, busque el archivo con ImportCert.log marca de tiempo en la carpeta especificada en la salida del script. Busque la línea de salida que comienza con "Puede encontrar registros aquí: ..."

    • Formato de archivo: ImportCert_YYYYMMDD-HHMMSS.log
    • Ejemplo: ImportCert_20251201_143022.log es un archivo creado el 1 de diciembre de 2025 a las 2:30:22 PM
  5. Compruebe que el certificado correcto se importó ejecutando el ShowCertDetails.sh script.

    Nota

    El ShowCertDetails.sh script está disponible a partir de Linux paquete de implementación v1.10.

    Agregue permisos de ejecución al script:

    sudo chmod +x ./ShowCertDetails.sh
    

    Ejecute el script:

    sudo ./ShowCertDetails.sh
    

    Este script muestra la huella digital del certificado y la fecha de expiración del certificado TLS importado actualmente en el nodo de caché.

Para obtener instrucciones sobre cómo validar aún más la importación de certificados, consulte la página HTTPS en Linux validación.

Deshabilitación de la compatibilidad con HTTPS

Si necesita revertir la memoria caché conectada a la comunicación solo HTTP, siga estos pasos. Este proceso no eliminará nada de la carpeta Certificados: archivos CSR, certificados o registros.

  1. En el host de Linux, abra un terminal y vaya a la carpeta que contiene el paquete de implementación extraído.

  2. Agregue permisos de ejecución al script de deshabilitación de TLS:

    sudo chmod +x ./disableTls.sh
    
  3. Ejecute el script de deshabilitación (no se requieren parámetros):

    sudo ./disableTls.sh
    
  4. Compruebe que el proceso de deshabilitación se completó correctamente.

  5. Después de deshabilitar HTTPS, las solicitudes HTTP deben funcionar mientras que las solicitudes HTTPS deben producir un error. Consulte la página HTTPS en Linux validación para obtener instrucciones sobre cómo probar esto.

Pasos siguientes