По умолчанию TLS отключен для API управления, и вы получаете доступ к Edge Management API по протоколу HTTP, используя IP-адрес узла сервера управления и порт 8080. Пример:
http://ms_IP:8080
Вы также можете настроить доступ TLS к API управления, чтобы обращаться к нему в следующем формате:
https://ms_IP:8443
В этом примере вы настроите доступ по протоколу TLS с использованием порта 8443. Однако этот номер порта не является обязательным для Edge – вы можете настроить сервер управления на использование других значений портов. Единственное требование – чтобы брандмауэр разрешал трафик через указанный порт.
Чтобы обеспечить шифрование трафика, поступающего в API управления и из него, настройте параметры в файле /opt/apigee/customer/application/management-server.properties.
Помимо конфигурации TLS, вы также можете управлять проверкой пароля (длиной и надежностью) путем изменения файла management-server.properties.
Убедитесь, что порт TLS открыт
В этой процедуре TLS настраивается на использование порта 8443 на сервере управления. Какой бы порт вы ни использовали, убедитесь, что он открыт на сервере управления. Например, чтобы открыть его, можно использовать следующую команду:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose
Как настроить TLS
Измените файл /opt/apigee/customer/application/management-server.properties, чтобы управлять использованием TLS для трафика, поступающего в ваш API управления и исходящего из него. Если такого файла нет, создайте его.
Чтобы настроить доступ к API управления по протоколу TLS:
- Создайте файл хранилища ключей JKS, содержащий сертификат TLS и закрытый ключ. Подробнее о настройке TLS/SSL для локальной версии Edge…
- Скопируйте файл хранилища ключей JKS в каталог на узле сервера управления, например
/opt/apigee/customer/application. - Измените владельца файла JKS на пользователя apigee:
chown apigee:apigee keystore.jks
где keystore.jks – название файла хранилища ключей.
- Измените параметр
/opt/apigee/customer/application/management-server.properties, чтобы задать следующие свойства: Если такого файла нет, создайте его:conf_webserver_ssl.enabled=true # Leave conf_webserver_http.turn.off set to false # because many Edge internal calls use HTTP. conf_webserver_http.turn.off=false conf_webserver_ssl.port=8443 conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks # Enter the obfuscated keystore password below. conf_webserver_keystore.password=OBF:obfuscatedPassword
где keyStore.jks – это файл хранилища ключей, а obfuscatedPassword – обфусцированный пароль хранилища ключей. Информацию о том, как создать обфусцированный пароль, можно найти в статье Настройка TLS/SSL для локальной версии Edge.
- Перезапустите сервер управления Edge, используя следующую команду:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Теперь API управления поддерживает доступ по протоколу TLS.
Как настроить интерфейс Edge для использования TLS при доступе к API Edge
В описанной выше процедуре Apigee рекомендует оставить conf_webserver_http.turn.off=false, чтобы интерфейс Edge мог продолжать вызывать Edge API по протоколу HTTP.
Чтобы настроить интерфейс Edge так, чтобы эти вызовы выполнялись только по протоколу HTTPS, выполните следующие действия:
- Настройте доступ TLS к API управления, как описано выше.
- Убедившись, что TLS работает для API управления, измените
/opt/apigee/customer/application/management-server.propertiesна следующее свойство:conf_webserver_http.turn.off=true
- Перезапустите сервер управления Edge, выполнив следующую команду:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- Измените
/opt/apigee/customer/application/ui.properties, чтобы задать для интерфейса Edge следующие свойства:conf_apigee_apigee.mgmt.baseurl="https://FQ_domain_name:port/v1"
где FQ_domain_name – полное доменное имя, указанное в адресе сертификата сервера управления, а port – порт, заданный выше в
conf_webserver_ssl.port.Если файла ui.properties нет, создайте его.
- Только если при настройке доступа к API управления по протоколу TLS вы использовали самозаверяющий сертификат (не рекомендуется в рабочей среде), добавьте в файл
ui.propertiesследующее свойство:conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true
В противном случае интерфейс Edge отклонит самоподписанный сертификат.
- Перезапустите интерфейс Edge, выполнив следующую команду:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Использование хранилища ключей PKCS12 для операционных систем с поддержкой FIPS
Если вы используете Edge для частного облака в ОС с поддержкой FIPS, необходимо использовать хранилище ключей PKCS12. Это необходимо для соответствия стандартам FIPS. Помимо других стандартных конфигураций, упомянутых в этой статье, добавьте в файл management-server.properties следующую конфигурацию:
conf/webserver.properties+keystore.type=PKCS12
Если в вашей среде включен режим FIPS, обязательно примените это изменение, чтобы обеспечить совместимость с необходимыми стандартами шифрования.
Свойства TLS для сервера управления
В таблице ниже перечислены все свойства TLS/SSL, которые можно задать в management-server.properties:
| Свойства | Описание |
|---|---|
|
|
Значение по умолчанию – 8080. |
|
|
Чтобы включить или отключить TLS/SSL. Если для параметра TLS/SSL задано значение true, необходимо также указать свойства ssl.port и keystore.path. |
|
|
Чтобы включить или отключить протокол HTTP вместе с HTTPS. Если вы хотите использовать только HTTPS, оставьте значение по умолчанию |
|
|
Порт TLS/SSL. Требуется, если включен TLS/SSL ( |
|
|
Путь к файлу хранилища ключей. Требуется, если включен TLS/SSL ( |
|
|
Используйте обфусцированный пароль в следующем формате: OBF:xxxxxxxxxx |
|
|
Необязательный псевдоним сертификата хранилища ключей |
|
|
Если у вашего менеджера ключей есть пароль, введите его в зашифрованном виде в следующем формате: OBF:xxxxxxxxxx |
|
|
Настройте хранилище доверенных сертификатов. Укажите, нужно ли принимать все сертификаты TLS/SSL (например, чтобы принимать нестандартные типы). Значение по умолчанию – OBF:xxxxxxxxxx |
|
|
Укажите наборы шифров, которые вы хотите включить или исключить. Например, если вы обнаружили уязвимость в шифре, вы можете исключить его здесь. Если вы добавляете несколько шифров, укажите их через запятую. Шифры, удаленные с помощью черного списка, имеют приоритет над шифрами, добавленными с помощью белого списка. Примечание. По умолчанию, если не указан черный или белый список, исключаются шифры, соответствующие следующему регулярному выражению Java: ^.*_(MD5|SHA|SHA1)$ ^TLS_RSA_.*$ ^SSL_.*$ ^.*_NULL_.*$ ^.*_anon_.*$ Однако если вы укажете черный список, этот фильтр будет переопределен и вам придется добавить в черный список все шифры по отдельности. Информацию о наборах шифров и архитектуре криптографии можно найти в документации Oracle по архитектуре криптографии Java для поставщиков JDK 8. |
|
|
Целые числа, определяющие:
|