Настройка TLS/SSL для Edge On Premises

Edge для частного облака v. 4.16.09

TLS (Transport Layer Security, предшественником которого является SSL) — это стандартная технология безопасности, обеспечивающая безопасный зашифрованный обмен сообщениями в вашей среде API, от приложений до Apigee Edge и ваших серверных служб.

Независимо от конфигурации среды для вашего API управления — например, используете ли вы прокси-сервер, маршрутизатор и/или балансировщик нагрузки перед вашим API управления (или нет) — Edge позволяет вам включать и настраивать TLS, предоставляя вы контролируете шифрование сообщений в своей локальной среде управления API.

Для локальной установки Edge Private Cloud существует несколько мест, где можно настроить TLS:

  1. Между маршрутизатором и процессором сообщений
  2. Для доступа к API управления Edge
  3. Для доступа к пользовательскому интерфейсу управления Edge
  4. Для доступа из приложения к вашим API
  5. Для доступа из Edge к вашим серверным службам

Настройка TLS для первых трёх пунктов описана ниже. Все эти процедуры предполагают, что вы создали файл JKS, содержащий ваш сертификат TLS и закрытый ключ.

Чтобы настроить TLS для доступа из приложения к вашим API (пункт 4 выше), см. раздел Настройка доступа TLS к API для частного облака . Чтобы настроить TLS для доступа из Edge к вашим серверным службам (№5 выше), см. Настройка TLS от Edge к серверной части (облако и частное облако) .

Полный обзор настройки TLS на Edge см. в разделе TLS/SSL .

Создание файла JKS

Вы представляете хранилище ключей в виде файла JKS, где хранилище ключей содержит ваш сертификат TLS и закрытый ключ. Существует несколько способов создать файл JKS, но один из них — использовать утилиты openssl и keytool.

Например, у вас есть файл PEM с именем server.pem , содержащий ваш сертификат TLS, и файл PEM с именем Private_key.pem, содержащий ваш закрытый ключ. Используйте следующие команды для создания файла PKCS12:

> openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12

Вам необходимо ввести парольную фразу для ключа, если он есть, и пароль экспорта. Эта команда создает файл PKCS12 с именем keystore.pkcs12 .

Используйте следующую команду, чтобы преобразовать его в файл JKS с именем keystore.jks:

> keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks

Вам будет предложено ввести новый пароль для файла JKS и существующий пароль для файла PKCS12. Убедитесь, что вы используете тот же пароль для файла JKS, что и для файла PKCS12.

Если вам необходимо указать псевдоним ключа, например, при настройке TLS между маршрутизатором и процессором сообщений, включите параметр « -name» в команду openssl:

>  openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12 -name devtest

Затем включите опцию « -alias » в команду keytool :

> keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks -alias devtest

Генерация запутанного пароля

Некоторые части процедуры настройки Edge TLS требуют ввода запутанного пароля в файле конфигурации. Запутанный пароль — более безопасная альтернатива вводу пароля в виде обычного текста.

Вы можете создать запутанный пароль на Java, используя файлы Jetty .jar, установленные вместе с Edge. Сгенерируйте запутанный пароль, используя команду в форме:

> IFS= read -rsp Password: passvar; echo; java -cp "/opt/apigee/edge-gateway/lib/thirdparty/*" org.eclipse.jetty.util.security.Password $passvar 2>&1 |tail -2; unset passvar

Введите новый пароль в командной строке. В целях безопасности текст пароля не отображается. Эта команда возвращает пароль в виде:

OBF:58fh40h61svy156789gk1saj
MD5:902fobg9d80e6043b394cb2314e9c6

Используйте запутанный пароль, указанный OBF, при настройке TLS.

Дополнительную информацию см. в этой статье .