Configura TLS para la nueva IU de Edge

De forma predeterminada, puedes acceder a la IU nueva de Edge a través de HTTP mediante la dirección IP o el nombre de DNS del nodo y el puerto 3001 de la IU perimetral. Por ejemplo:

http://newue_IP:3001

Como alternativa, puedes configurar el acceso de TLS a la IU de Edge para poder acceder al formulario de la siguiente manera:

https://newue_IP:3001

Requisitos de TLS

La IU de Edge solo es compatible con TLS v1.2. Si habilitas TLS en la IU de Edge, los usuarios deberán conectarse a ella mediante un navegador compatible con TLS v1.2.

Propiedades de configuración de TLS

Ejecute el siguiente comando a fin de configurar TLS para la IU de Edge:

/opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

En el ejemplo anterior, configFile es el archivo de configuración que usaste para instalar la IU perimetral.

Antes de ejecutar este comando, debes editar el archivo de configuración para establecer las propiedades necesarias que controlan TLS. En la siguiente tabla, se describen las propiedades que usas a fin de configurar TLS para la IU de Edge:

Propiedad Descripción ¿Es obligatoria?
MANAGEMENT_UI_SCHEME

Configura el protocolo, "http" o "https", que se usa para acceder a la IU perimetral. El valor predeterminado es "http". Configúralo como “https” para habilitar TLS:

MANAGEMENT_UI_SCHEME=https
MANAGEMENT_UI_TLS_OFFLOAD

Si es “n”, especifica que las solicitudes de TLS a la IU de Edge se terminan en la IU de Edge. Debes configurar MANAGEMENT_UI_TLS_KEY_FILE y MANAGEMENT_UI_TLS_CERT_FILE.

Si “y”, especifica que las solicitudes de TLS a la IU de Edge se finalizan en un balanceador de cargas y que el balanceador de cargas reenvía la solicitud a la IU de Edge mediante HTTP.

Si finalizas TLS en el balanceador de cargas, la IU de Edge aún debe tener en cuenta que la solicitud original llegó a través de TLS. Por ejemplo, algunas cookies tienen una marca de Secure establecida.

Debes establecer MANAGEMENT_UI_SCHEME en "https"; de lo contrario, se ignorará MANAGEMENT_UI_TLS_OFFLOAD:

MANAGEMENT_UI_SCHEME=https
MANAGEMENT_UI_TLS_OFFLOAD=y
MANAGEMENT_UI_TLS_KEY_FILE

MANAGEMENT_UI_TLS_CERT_FILE

Si es MANAGEMENT_UI_TLS_OFFLOAD=n, especifica la ruta absoluta a la clave TLS y a los archivos de certificación. Los archivos deben tener formato PEM, sin frase de contraseña y deben ser propiedad del usuario de “apigee”.

La ubicación recomendada para estos archivos es la siguiente:

/opt/apigee/customer/application/edge-management-ui

Si ese directorio no existe, créalo.

Si es MANAGEMENT_UI_TLS_OFFLOAD=y, omite MANAGEMENT_UI_TLS_KEY_FILE y MANAGEMENT_UI_TLS_CERT_FILE.. Se ignoran porque las solicitudes a la IU de Edge llegan a través de HTTP.

Sí, MANAGEMENT_UI_TLS_OFFLOAD=n
MANAGEMENT_UI_PUBLIC_URIS

Si es MANAGEMENT_UI_TLS_OFFLOAD=n, especifica la URL de la IU de Edge.

Configura esta propiedad en función de otras propiedades en el archivo de configuración. Por ejemplo:

MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT

Aquí:

  • MANAGEMENT_UI_SCHEME especifica el protocolo, "http" o "https", como se describió anteriormente.
  • MANAGEMENT_UI_IP especifica la dirección IP o el nombre de DNS de la IU de Edge.
  • MANAGEMENT_UI_PORT especifica el puerto que usa la IU de Edge.

Consulta Instala la nueva IU de Edge para obtener más información sobre estas propiedades.

Si MANAGEMENT_UI_TLS_OFFLOAD=y:

  • MANAGEMENT_UI_IP especifica la dirección IP o el nombre de DNS del balanceador de cargas, no de la IU perimetral.
  • El balanceador de cargas y la UE nueva deben usar el mismo número de puerto para las solicitudes, por ejemplo, 3001. Usa MANAGEMENT_UI_PORT para especificar el número de puerto en el balanceador de cargas y en la UE nueva.

MANAGEMENT_UI_TLS_ALLOWED_CIPHERS

Define la lista de algoritmos de cifrado de TLS disponibles como una string separada por espacios o comas.

String separada por comas:

MANAGEMENT_UI_TLS_ALLOWED_CIPHERS=TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

String separada por espacios entre comillas dobles:

MANAGEMENT_UI_TLS_ALLOWED_CIPHERS="TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"

SHOEHORN_SCHEME

Antes de instalar la nueva IU de Edge, primero debes instalar la IU base de Edge, que se llama shoehorn. El archivo de configuración de instalación usa la siguiente propiedad para especificar el protocolo, “http”, que se usa para acceder a la IU base de Edge:

SHOEHORN_SCHEME=http

La IU perimetral base no admite TLS, por lo que, incluso cuando habilitas TLS en la IU perimetral, esta propiedad debe configurarse como “http”.

Sí y establecerlo como "http"

Configura TLS

Para configurar el acceso de TLS a la IU de Edge, sigue estos pasos:

  1. Genera el certificado TLS y la clave como archivos PEM sin frase de contraseña. Por ejemplo:

    mykey.pem
    mycert.pem

    Existen muchas formas de generar un certificado y una clave de TLS. Por ejemplo, puedes ejecutar el siguiente comando para generar un certificado y una clave sin firmar:

    openssl req -x509 -newkey rsa:4096 -keyout mykey.pem -out mycert.pem -days 365 -nodes -subj '/CN=localhost'
  2. Copia la clave y los archivos de certificación en el directorio /opt/apigee/customer/application/edge-management-ui. Si ese directorio no existe, créalo.
  3. Asegúrese de que el certificado y la clave sean propiedad del usuario “apigee”:

    chown apigee:apigee /opt/apigee/customer/application/edge-management-ui/*.pem
  4. Edita el archivo de configuración que usaste para instalar la IU perimetral a fin de establecer las siguientes propiedades de TLS:

    # Set to https to enable TLS.
    MANAGEMENT_UI_SCHEME=https 
    # Do NOT terminate TLS on a load balancer.
    MANAGEMENT_UI_TLS_OFFLOAD=n
    
    # Specify the key and cert. 
    MANAGEMENT_UI_TLS_KEY_FILE=/opt/apigee/customer/application/edge-management-ui/mykey.pem
    MANAGEMENT_UI_TLS_CERT_FILE=/opt/apigee/customer/application/edge-management-ui/mycert.pem
    
    # Leave these properties set to the same values as when you installed the Edge UI:
    MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT
    SHOEHORN_SCHEME=http
  5. Ejecute el siguiente comando para configurar TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    Donde configFile es el nombre del archivo de configuración.

    La secuencia de comandos reinicia la IU de Edge.

  6. Ejecuta los siguientes comandos para configurar y reiniciar boothorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    Después del reinicio, la IU de Edge admite el acceso a través de HTTPS. Si no puedes acceder a la IU perimetral después de habilitar TLS, borra la caché del navegador y vuelve a intentar acceder.

Configurar la IU de Edge cuando TLS finalice en el balanceador de cargas

Si tienes un balanceador de cargas que reenvía las solicitudes a la IU de Edge, puedes optar por finalizar la conexión TLS en el balanceador de cargas y, luego, hacer que el balanceador de cargas reenvíe las solicitudes a la IU de Edge a través de HTTP:

Finaliza TLS en el balanceador de cargas

Esta configuración es compatible, pero debes configurar el balanceador de cargas y la IU de Edge según corresponda.

Para configurar la IU perimetral cuando TLS finaliza en el balanceador de cargas, haz lo siguiente:

  1. Edita el archivo de configuración que usaste para instalar la IU perimetral a fin de establecer las siguientes propiedades de TLS:

    # Set to https to enable TLS
    MANAGEMENT_UI_SCHEME=https
    # Terminate TLS on a load balancer
    MANAGEMENT_UI_TLS_OFFLOAD=y
    # Set to the IP address or DNS name of the load balancer.
    MANAGEMENT_UI_IP=LB_IP_DNS
    # Set to the port number for the load balancer and Edge UI.
    # The load balancer and the Edge UI must use the same port number.
    MANAGEMENT_UI_IP=3001
    
    # Leave these properties set to the same values as when you installed the Edge UI:
    MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT
    SHOEHORN_SCHEME=http
    

    Si configuras MANAGEMENT_UI_TLS_OFFLOAD=y, omite MANAGEMENT_UI_TLS_KEY_FILE y MANAGEMENT_UI_TLS_CERT_FILE.. Se ignoran porque las solicitudes a la IU de Edge llegan a través de HTTP.

  2. Ejecute el siguiente comando para configurar TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    Donde configFile es el nombre del archivo de configuración.

    La secuencia de comandos reinicia la IU de Edge.

  3. Ejecuta los siguientes comandos para configurar y reiniciar boothorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    Después del reinicio, la IU de Edge admite el acceso a través de HTTPS. Si no puedes acceder a la IU perimetral después de habilitar TLS, borra la caché del navegador y vuelve a intentar acceder.

Inhabilitar TLS en la IU de Edge

Para inhabilitar TLS en la IU de Edge, sigue estos pasos:

  1. Edita el archivo de configuración que usaste para instalar la IU perimetral a fin de establecer la siguiente propiedad TLS:

    # Set to http to disable TLS.
    MANAGEMENT_UI_SCHEME=http
    
    # Only if you had terminated TLS on a load balancer,
    # reset to the IP address or DNS name of the Edge UI.
    MANAGEMENT_UI_IP=newue_IP_DNS
    
  2. Ejecute el siguiente comando para inhabilitar TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    Donde configFile es el nombre del archivo de configuración.

    La secuencia de comandos reinicia la IU de Edge.

  3. Ejecuta los siguientes comandos para configurar y reiniciar boothorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    Ahora puedes acceder a la IU de Edge a través de HTTP. Si no puedes acceder a la IU perimetral después de inhabilitar TLS, borra la caché del navegador y vuelve a intentar acceder.