Настройка TLS для нового интерфейса Edge

Edge for Private Cloud 4.19.01

По умолчанию доступ к новому интерфейсу Edge осуществляется по протоколу HTTP с использованием IP-адреса или DNS-имени узла нового интерфейса Edge и порта 3001. Пример:

http://newue_IP:3001

Вы также можете настроить доступ к New Edge по протоколу TLS, чтобы использовать URL следующего вида:

https://newue_IP:3001

Требования к TLS

Новая версия Edge поддерживает только TLS 1.2. Если вы включите TLS в New Edge, пользователи должны будут подключаться к New Edge с помощью браузера, совместимого с TLS версии 1.2.

Свойства конфигурации TLS

Чтобы настроить TLS для New Edge, выполните следующую команду:

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

где configFile – файл конфигурации, который вы использовали для установки новой версии Edge.

Прежде чем выполнять эту команду, необходимо изменить файл конфигурации, чтобы задать нужные свойства, управляющие TLS. В таблице ниже описаны свойства, которые используются для настройки TLS в новой версии Edge.

Свойство Описание Обязательно?
MANAGEMENT_UI_SCHEME

Задает протокол (HTTP или HTTPS), используемый для доступа к New Edge experience. Значение по умолчанию – http. Чтобы включить TLS, укажите значение https:

MANAGEMENT_UI_SCHEME=https
Да
MANAGEMENT_UI_TLS_OFFLOAD

Если задано значение n, TLS-запросы к New Edge experience будут завершаться в New Edge experience. Необходимо задать MANAGEMENT_UI_TLS_KEY_FILE и MANAGEMENT_UI_TLS_CERT_FILE..

Если указано значение "y", TLS-запросы к New Edge experience завершаются на балансировщике нагрузки, который затем перенаправляет запрос к New Edge experience по протоколу HTTP.

Если вы завершаете TLS на балансировщике нагрузки, New Edge все равно должен знать, что исходный запрос поступил по TLS. Например, у некоторых файлов cookie есть пометка Secure.

Для MANAGEMENT_UI_SCHEME необходимо задать значение https, иначе MANAGEMENT_UI_TLS_OFFLOAD будет игнорироваться:

MANAGEMENT_UI_SCHEME=https
MANAGEMENT_UI_TLS_OFFLOAD=y
Да
MANAGEMENT_UI_TLS_KEY_FILE

MANAGEMENT_UI_TLS_CERT_FILE

Если задано значение MANAGEMENT_UI_TLS_OFFLOAD=n, указывает абсолютный путь к файлам ключа и сертификата TLS. Файлы должны быть в формате PEM без кодовой фразы и принадлежать пользователю apigee.

Рекомендуемое расположение этих файлов:

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

Если такого каталога нет, создайте его.

Если используется MANAGEMENT_UI_TLS_OFFLOAD=y, то опустите MANAGEMENT_UI_TLS_KEY_FILE и MANAGEMENT_UI_TLS_CERT_FILE.. Они игнорируются, поскольку запросы к New Edge поступают по протоколу HTTP.

Да, если MANAGEMENT_UI_TLS_OFFLOAD=n
MANAGEMENT_UI_PUBLIC_URIS

Если задано значение MANAGEMENT_UI_TLS_OFFLOAD=n, определяет URL новой версии Edge.

Задайте это свойство на основе других свойств в файле конфигурации. Пример:

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

Где:

  • MANAGEMENT_UI_SCHEME – протокол (http или https), как описано выше.
  • MANAGEMENT_UI_IP – IP-адрес или DNS-имя New Edge experience.
  • MANAGEMENT_UI_PORT указывает порт, используемый новым интерфейсом Edge.

Дополнительную информацию об этих свойствах можно найти в статье Установка новой версии Edge.

Если MANAGEMENT_UI_TLS_OFFLOAD=y:

  • MANAGEMENT_UI_IP – IP-адрес или имя DNS балансировщика нагрузки, а не New Edge.
  • Балансировщик нагрузки и новый UE должны использовать один и тот же номер порта для запросов, например 3001. Используйте MANAGEMENT_UI_PORT, чтобы указать номер порта на балансировщике нагрузки и в новом пользовательском расширении.

Да

SHOEHORN_SCHEME

Прежде чем установить New Edge experience, необходимо установить базовый интерфейс Edge, который называется shoehorn. В файле конфигурации установки используется следующее свойство для указания протокола http, используемого для доступа к базовому пользовательскому интерфейсу Edge:

SHOEHORN_SCHEME=http

Базовый интерфейс Edge не поддерживает TLS, поэтому даже если вы включите TLS в новом интерфейсе Edge, для этого свойства по-прежнему должно быть задано значение "http".

Да, установлено значение "http"

Настройте TLS

Чтобы настроить доступ TLS к New Edge, выполните следующие действия:

  1. Сгенерируйте сертификат TLS и ключ в виде файлов PEM без кодовой фразы. Пример:

    mykey.pem
    mycert.pem

    Сгенерировать сертификат и ключ TLS можно разными способами. Например, чтобы создать неподписанный сертификат и ключ, можно выполнить следующую команду:

    openssl req -x509 -newkey rsa:4096 -keyout mykey.pem -out mycert.pem -days 365 -nodes -subj '/CN=localhost'
  2. Скопируйте файлы ключа и сертификата в каталог /opt/apigee/customer/application/edge-management-ui. Если такого каталога нет, создайте его.
  3. Убедитесь, что сертификат и ключ принадлежат пользователю apigee:

    chown apigee:apigee /opt/apigee/customer/application/edge-management-ui/*.pem
  4. Измените файл конфигурации, который вы использовали для установки New Edge experience, чтобы задать следующие свойства 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 New Edge experience:
    MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT
    SHOEHORN_SCHEME=http
  5. Чтобы настроить TLS, выполните следующую команду:

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

    где configFile – название файла конфигурации.

    Скрипт перезапускает New Edge.

  6. Выполните следующие команды, чтобы настроить и перезапустить shoehorn:

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

    После перезапуска в New Edge будет поддерживаться доступ по протоколу HTTPS. Если после включения TLS вы не можете войти в New Edge, очистите кеш браузера и повторите попытку.

Как настроить New Edge, если TLS завершается на балансировщике нагрузки

Если у вас есть балансировщик нагрузки, который перенаправляет запросы в New Edge, вы можете завершить TLS-подключение на балансировщике нагрузки, а затем настроить его так, чтобы он перенаправлял запросы в New Edge по протоколу HTTP:

Завершение TLS на балансировщике нагрузки

Такая конфигурация поддерживается, но вам нужно настроить балансировщик нагрузки и New Edge.

Чтобы настроить New Edge, когда TLS завершается на балансировщике нагрузки:

  1. Измените файл конфигурации, который вы использовали для установки New Edge experience, чтобы задать следующие свойства 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 New Edge experience.
    # The load balancer and the New Edge experience must use the same port number.
    MANAGEMENT_UI_IP=3001
    
    # Leave these properties set to the same values as when you installed the New Edge experience:
    MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT
    SHOEHORN_SCHEME=http
    

    Если вы задали MANAGEMENT_UI_TLS_OFFLOAD=y, опустите MANAGEMENT_UI_TLS_KEY_FILE и MANAGEMENT_UI_TLS_CERT_FILE.. Они игнорируются, поскольку запросы к New Edge поступают по HTTP.

  2. Чтобы настроить TLS, выполните следующую команду:

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

    где configFile – название файла конфигурации.

    Скрипт перезапускает New Edge.

  3. Выполните следующие команды, чтобы настроить и перезапустить shoehorn:

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

    После перезапуска в New Edge будет поддерживаться доступ по протоколу HTTPS. Если после включения TLS вы не можете войти в New Edge, очистите кеш браузера и повторите попытку.

Отключить TLS в новом интерфейсе Edge

Чтобы отключить TLS в новом интерфейсе Edge, выполните следующие действия:

  1. Измените файл конфигурации, который вы использовали для установки New Edge experience, чтобы задать следующее свойство 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 New Edge experience.
    MANAGEMENT_UI_IP=newue_IP_DNS
    
  2. Чтобы отключить TLS, выполните следующую команду:

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

    где configFile – название файла конфигурации.

    Скрипт перезапускает New Edge.

  3. Выполните следующие команды, чтобы настроить и перезапустить shoehorn:

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

    Теперь вы можете получить доступ к новому интерфейсу Edge по протоколу HTTP. Если после отключения TLS вы не можете войти в New Edge, очистите кеш браузера и повторите попытку.