Cómo permitir que la IU perimetral acceda a direcciones IP locales

Edge para la nube privada v4.18.01

Hay varios lugares en los que la IU de Edge podría intentar acceder a una dirección IP local. Estas direcciones IP locales podrían corresponder a recursos privados o protegidos de alguna otra manera que no deberían exponerse a usuarios externos:

  • La herramienta Trace de la IU de Edge tiene la capacidad de enviar y recibir solicitudes de API a cualquier URL especificada. En ciertas situaciones de implementación en las que los componentes de Edge se coalojan con otros servicios internos, un usuario malicioso puede hacer un uso inadecuado de la potencia de la herramienta de Trace mediante solicitudes a direcciones IP privadas.
  • Cuando se crea un proxy de API a partir de una especificación de OpenAPI, en la especificación se describen esos elementos de una API como su ruta base, rutas y verbos, encabezados y más. Como parte de la especificación, un usuario malicioso puede especificar una ruta base del proxy que hace referencia a una dirección IP privada.
  • Cuando se crea un proxy de API a partir de un archivo WSDL ubicado en tu sistema de archivos local

Por motivos de seguridad, la IU perimetral no puede hacer referencia a direcciones IP privadas de forma predeterminada. La lista de direcciones IP privadas incluye lo siguiente:

  • Dirección de bucle invertido (127.0.0.1 o localhost)
  • Direcciones locales del sitio (para IPv4: 10.0.0.0/8, 172.16.0.0/12 y 192.168.0.0/16)
  • Cualquier dirección local (cualquier dirección que se resuelva en localhost)

Si quieres habilitar la IU perimetral para acceder a direcciones IP privadas, configura los siguientes tokens:

  • En la herramienta de seguimiento, la propiedad conf_apigee-base_apigee.feature.enabletraceforinternaladdresss está inhabilitada de forma predeterminada. Configúrala como verdadera para habilitar el acceso de la herramienta de Trace a direcciones IP privadas.
  • Para las especificaciones de OpenAPI, la propiedad conf_apigee-base_apigee.feature.enableopenapiforinternaladdress está inhabilitada de forma predeterminada. Configúralo como verdadero para habilitar el acceso de OpenAPI a direcciones IP privadas.
  • Para los archivos WSDL, la propiedad conf_apigee-base_apigee.feature.enablewsdlforinternaladdresss está inhabilitada de forma predeterminada. Configúralo como verdadero para habilitar la carga de un archivo WSDL desde direcciones IP privadas.

Para establecer estas propiedades como verdaderas, sigue estos pasos:

  1. Abre el archivo ui.properties en un editor. Si el archivo no existe, créalo.
    > vi /opt/apigee/customer/application/ui.properties
  2. Establece las siguientes propiedades en verdadero:
    conf_apigee-base_apigee.feature.enabletraceforinternaladdress="true"
    conf_apigee-base_apigee.feature.enableopenapiforinternaladdress="true"
    conf_apigee-base_apigee.feature.enablewsdlforinternaladdress="true"
  3. Guarda los cambios en ui.properties.
  4. Asegúrate de que el archivo de propiedades sea propiedad del usuario “apigee”:
    > chown apigee:apigee /opt/apigee/customer/application/ui.properties
  5. Reinicia la IU de Edge:
    > /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

La IU de Edge ahora puede acceder a direcciones IP locales.