Как разрешить новому интерфейсу Edge доступ к локальным IP-адресам

Новый интерфейс Edge может пытаться получить доступ к локальному IP-адресу в нескольких местах. Эти локальные IP-адреса могут соответствовать частным или иным образом защищенным ресурсам, которые не должны быть доступны внешним пользователям:

  • Инструмент Trace в новом интерфейсе Edge позволяет отправлять и получать запросы к API на любой указанный URL. В некоторых сценариях развертывания, когда компоненты Edge размещаются совместно с другими внутренними сервисами, злоумышленник может злоупотребить возможностями инструмента Trace, отправляя запросы к частным IP-адресам.
  • При создании прокси-сервера API на основе спецификации OpenAPI в ней описываются такие элементы API, как базовый путь, пути и глаголы, заголовки и т. д. Согласно спецификации, злоумышленник может указать базовый путь прокси-сервера, который ссылается на частный IP-адрес.
  • При создании прокси-сервера API из WSDL-файла, расположенного на частном IP-адресе или в локальной сети.

В целях безопасности по умолчанию в новом интерфейсе Edge запрещено ссылаться на частные IP-адреса. В список частных IP-адресов входят:

  • Петлевой адрес (127.0.0.1 или localhost).
  • Локальные адреса сайтов (для IPv4 – 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16).
  • Любой локальный адрес (любой адрес, разрешаемый в localhost).

Чтобы разрешить новому интерфейсу Edge доступ к частным IP-адресам, задайте следующие токены:

  • Для инструмента Trace свойство conf_uebe_trace_for_internal_addresses по умолчанию отключено (false). Задайте значение true, чтобы разрешить инструменту Trace доступ к частным IP-адресам.
  • В спецификациях OpenAPI свойство conf_uebe_openapi_for_internal_addresses по умолчанию отключено (false). Задайте значение true, чтобы разрешить доступ OpenAPI к частным IP-адресам.
  • Для файлов WSDL свойство conf_uebe_wsdl_for_internal_addresses по умолчанию отключено (false). Задайте значение true, чтобы разрешить получение WSDL-файла с частных IP-адресов.

Чтобы задать для этих свойств значение true, выполните следующие действия:

  1. Откройте файл management-ui.properties в редакторе. Если файла нет, создайте его:
    vi /opt/apigee/customer/application/management-ui.properties
  2. Задайте для следующих свойств значение true:
    conf_uebe_trace_for_internal_addresses=true
    conf_uebe_openapi_for_internal_addresses=true
    conf_uebe_wsdl_for_internal_addresses=true
  3. Сохраните изменения в файле management-ui.properties.
  4. Убедитесь, что файл свойств принадлежит пользователю apigee:
    chown apigee:apigee /opt/apigee/customer/application/management-ui.properties
  5. Перезапустите новый интерфейс Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart

Новый интерфейс Edge теперь может получать доступ к локальным IP-адресам.