Configura conjuntos de algoritmos de cifrado en hosts y routers virtuales

Estás viendo la documentación de Apigee Edge.
Ve a la Documentación de Apigee X.
información

En este documento, se explica cómo configurar conjuntos de algoritmos de cifrado en hosts virtuales y routers en Apigee Edge.

Un conjunto de algoritmos de cifrado es un conjunto de algoritmos que ayudan a proteger una conexión de red que usa TLS. El cliente y el servidor deben acordar el conjunto de algoritmos de cifrado específico que se usará. en el intercambio de mensajes. Si el cliente y el servidor no acuerdan un conjunto de algoritmos de cifrado, el sistema fallan con fallas del protocolo de enlace TLS.

En Apigee, los conjuntos de algoritmos de cifrado deben acordarse mutuamente entre las aplicaciones cliente y Routers.

Es posible que desees modificar los conjuntos de algoritmos de cifrado en Apigee Edge por los siguientes motivos:

  • Para evitar cualquier discrepancia en los conjuntos de algoritmos de cifrado entre las aplicaciones cliente y los routers de Apigee
  • Para usar conjuntos de algoritmos de cifrado más seguros, ya sea para corregir cualquier vulnerabilidad de seguridad o mejorar la seguridad

Los conjuntos de algoritmos de cifrado pueden configurarse en hosts virtuales o routers de Apigee. Nota que Apigee acepta conjuntos de algoritmos de cifrado solo en el formato cadenas de cifrado de OpenSSL en el host virtual y el router. El Página manual de cifrado de OpenSSL proporciona los conjuntos de algoritmos de cifrado SSL o TLS de la especificación relevante y sus equivalentes de OpenSSL.

Por ejemplo:

Si quieres configurar el algoritmo de cifrado TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 en el host virtual o el router de Apigee, debes identificar el la cadena de cifrado de OpenSSL correspondiente Página de manual de cifrado de OpenSSL. La cadena de cifrado de OpenSSL para el conjunto de algoritmos de cifrado TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 es ECDHE-RSA-AES128-GCM-SHA256.. Debes usar la cadena de cifrado de OpenSSL. ECDHE-RSA-AES128-GCM-SHA256 mientras configuras el conjunto de algoritmos de cifrado en el host virtual. o en el router de Apigee.

Antes de comenzar

Configura conjuntos de algoritmos de cifrado en hosts virtuales

En esta sección, se explica cómo configurar conjuntos de algoritmos de cifrado en los hosts virtuales asociados con una organización y un entorno. Los conjuntos de algoritmos de cifrado se pueden configurar en el host virtual a través de la propiedad ssl_ciphers, que representa la lista de conjuntos de algoritmos de cifrado compatibles con el host virtual.

Consulta Conjuntos de algoritmos de cifrado compatibles para obtener una lista de los algoritmos de cifrado. que admite Apigee.

Puedes configurar el host virtual con uno de los siguientes métodos:

  • Usa la IU de Edge
  • Usa la API de Edge

Usa la IU de Edge

Para configurar el host virtual con la IU de Edge, haz lo siguiente:

  1. Accede a la IU de Edge.
  2. Navega a Administrador > Hosts virtuales.
  3. Selecciona un Entorno específico en el que quieras realizar este cambio.
  4. Selecciona el host virtual específico para el que deseas configurar los conjuntos de algoritmos de cifrado.
  5. En Propiedades, actualiza el valor Cifrados con una lista delimitada por dos puntos de cadenas de cifrado de OpenSSL.

    Por ejemplo, si quieres permitir solo los conjuntos de algoritmos de cifrado TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 y TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 y luego determina el valor Las cadenas de cifrado de OpenSSL Página manual de cifrado de OpenSSL como se muestra en la siguiente tabla:

    Conjunto de algoritmos de cifrado String de cifrado de OpenSSL
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    Agrega la cadena de cifrado de OpenSSL con separación por dos puntos como se muestra en la siguiente figura:

    Ejemplo de algoritmos de cifrado

  6. Guarda el cambio.

Usa la API de Edge

Para configurar los conjuntos de algoritmos de cifrado en un host virtual con la API de Edge, haz lo siguiente:

  1. Obtén la configuración actual del host virtual mediante la Obtén la API de host virtual como se muestra a continuación:

    Usuario de la nube pública:

    curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    

    Usuario de la nube privada:

    curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    
    {
      "hostAliases": [
        "api.myCompany,com"
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    
  2. Agrega la propiedad ssl_ciphers a la configuración del host virtual existente. Carga útil de JSON en properties con las cadenas de cifrado de OpenSSL adecuadas.

    Por ejemplo, si quieres permitir solo los conjuntos de algoritmos de cifrado TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 y TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 y luego determina el valor Las cadenas de cifrado de OpenSSL Página manual de cifrado de OpenSSL como se muestra en la siguiente tabla:

    Conjunto de algoritmos de cifrado String de cifrado de OpenSSL
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    Agrega el siguiente bloque de código properties:

    Ejemplo de configuración de host virtual actualizada:

    {
      "hostAliases": [
        "api.myCompany,com",
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "properties": {
        "property": [
          {
            "name": "ssl_ciphers",
            "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256"
          }
        ]
      },
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    
  3. Guarda la configuración actualizada del host virtual en un archivo. Por ejemplo, virtualhost-payload.json.
  4. Actualiza la configuración de virtualhost con el cambio a través de Actualiza una API de host virtual de la siguiente manera:

    Usuario de la nube pública:

    curl -v -X POST Content-Type: application/json
    https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
    

    Usuario de la nube privada:

    curl -v -X POST Content-Type: application/json
    http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
    

Conjuntos de algoritmos de cifrado compatibles

Apigee admite los siguientes conjuntos de algoritmos de cifrado:

ECDHE-RSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-SHA384
ECDHE-RSA-AES256-SHA
DHE-RSA-AES256-GCM-SHA384
DHE-RSA-AES256-SHA256
DHE-RSA-AES256-SHA
DHE-RSA-CAMELLIA256-SHA
AES256-GCM-SHA384
AES256-SHA256  
AES256-SHA
CAMELLIA256-SHA
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-RSA-AES128-SHA256
ECDHE-RSA-AES128-SHA
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES128-SHA256
DHE-RSA-AES128-SHA
DHE-RSA-CAMELLIA128-SHA
AES128-GCM-SHA256
AES128-SHA256   
AES128-SHA 
CAMELLIA128-SHA

Verificación de los conjuntos de algoritmos de cifrado en hosts virtuales

En esta sección, se explica cómo verificar que los conjuntos de algoritmos de cifrado se hayan ejecutado correctamente en el host virtual con la API de Edge.

  1. Ejecuta el Obtén la API de host virtual para obtener la configuración de virtualhost como se muestra a continuación:

    Usuario de la nube pública:

    curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    

    Usuario de la nube privada:

    curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    
  2. Verifica que la propiedad ssl_ciphers se haya configurado con el valor nuevo.

    Ejemplo de configuración de host virtual actualizada:

    {
      "hostAliases": [
        "api.myCompany,com",
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "properties": {
        "property": [
          {
            "name": "ssl_ciphers",
            "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256"
          }
        ]
      },
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    

    En el ejemplo anterior, ten en cuenta que se configuró ssl_ciphers con el valor nuevo.

  3. Si sigues viendo el valor anterior de ssl_ciphers, verifica que hayas se siguieron todos los pasos descritos en Configura conjuntos de algoritmos de cifrado en hosts virtuales de forma correcta. Si omitiste algún paso, vuelve a repetirlo correctamente.
  4. Si aún no puedes actualizar o agregar conjuntos de algoritmos de cifrado al host virtual, comunícate con Asistencia de Apigee Edge.

Configura conjuntos de algoritmos de cifrado en los routers

En esta sección, se explica cómo configurar conjuntos de algoritmos de cifrado en los routers. Los conjuntos de algoritmos de cifrado pueden ser configurada a través de la propiedad Router conf_load_balancing_load.balancing.driver.server.ssl.ciphers, que representa los conjuntos de algoritmos de cifrado aceptados por dos puntos.

Para configurar los conjuntos de algoritmos de cifrado en los routers, haz lo siguiente:

  1. En la máquina del router, abre el siguiente archivo en un editor. Si aún no existe y, luego, crearlo.

    /opt/apigee/customer/application/router.properties
    

    Por ejemplo, para abrir el archivo con vi, haz lo siguiente: Ingresa lo siguiente:

    vi /opt/apigee/customer/application/router.properties
    
  2. Agrega una línea con el siguiente formato al archivo properties y reemplaza una valor para colon_separated_cipher_suites:
    conf_load_balancing_load.balancing.driver.server.ssl.ciphers=colon_separated_cipher_suites
    

    Por ejemplo, si quieres permitir solo los conjuntos de algoritmos de cifrado TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 y TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 y luego determina el valor Las cadenas de cifrado de OpenSSL Página manual de cifrado de OpenSSL como se muestra en la siguiente tabla:

    Conjunto de algoritmos de cifrado String de cifrado de OpenSSL
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    Luego, agrega la siguiente línea:

    conf_load_balancing_load.balancing.driver.server.ssl.ciphers=DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
    
  3. Guarda los cambios.
  4. Asegúrate de que este archivo de propiedades sea propiedad del usuario de apigee, como se muestra a continuación:
    chown apigee:apigee /opt/apigee/customer/application/router.properties
    
  5. Reinicia el router como se muestra a continuación:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    
  6. Si tienes más de un router, repite los pasos anteriores en todos ellos.

Cómo verificar el conjunto de algoritmos de cifrado en los routers

En esta sección, se explica cómo verificar que los conjuntos de algoritmos de cifrado se hayan modificado correctamente en los routers.

  1. En el router, busca la propiedad. conf_load_balancing_load.balancing.driver.server.ssl.ciphers con Apigee desde la carpeta /opt/apigee y comprueba si se estableció con el valor nuevo de la siguiente manera:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.server.ssl.ciphers
    
  2. Si los nuevos conjuntos de algoritmos de cifrado se configuraron correctamente en el router, entonces el comando anterior muestra los valores nuevos.

    El siguiente es el resultado de muestra del comando search anterior cuando la los conjuntos de algoritmos de cifrado se actualizaron a DHE-RSA-AES128-GCM-SHA256 y ECDHE-RSA-AES128-GCM-SHA256:

    Found key conf_load_balancing_load.balancing.driver.server.ssl.ciphers, with value, DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256, in /opt/apigee/customer//application/router.properties
    

    En el resultado de ejemplo anterior, observa que la propiedad Se estableció conf_load_balancing_load.balancing.driver.server.ssl.ciphers con los nuevos valores del conjunto de algoritmos de cifrado. Esto indica que el conjunto de algoritmos de cifrado se se actualizaron a las cadenas de cifrado de OpenSSL DHE-RSA-AES128-GCM-SHA25y ECDHE-RSA-AES128-GCM-SHA256 en el router.

  3. Si aún ves los valores anteriores para los conjuntos de algoritmos de cifrado conf_load_balancing_load.balancing.driver.server.ssl.ciphers y, luego, verificar de que hayas seguido todos los pasos descritos en Configura conjuntos de algoritmos de cifrado en los routers de forma correcta. Si omitiste algún paso, vuelve a repetirlo correctamente.
  4. Si aún no puedes modificar los conjuntos de algoritmos de cifrado en los routers, comunícate con Asistencia de Apigee Edge.