TLS für die Management API konfigurieren

Standardmäßig ist TLS für die Management API deaktiviert. Sie greifen über HTTP auf die Edge Management API zu, indem Sie die IP-Adresse des Management Server-Knotens und Port 8080 verwenden. Beispiel:

http://ms_IP:8080

Alternativ können Sie den TLS-Zugriff auf die Management API so konfigurieren, dass Sie über folgende URL darauf zugreifen können:

https://ms_IP:8443

In diesem Beispiel konfigurieren Sie den TLS-Zugriff so, dass Port 8443 verwendet wird. Diese Portnummer ist jedoch für Edge nicht erforderlich. Sie können den Management Server so konfigurieren, dass er andere Portwerte verwendet. Die einzige Voraussetzung ist, dass Ihre Firewall Traffic über den angegebenen Port zulässt.

Konfigurieren Sie die Einstellungen in der /opt/apigee/customer/application/management-server.properties Datei, um die Trafficverschlüsselung zur und von der Management API zu gewährleisten.

Neben der TLS-Konfiguration können Sie auch die Passwortvalidierung (Passwortlänge und -stärke) steuern, indem Sie die Datei management-server.properties ändern.

Prüfen, ob der TLS-Port geöffnet ist

Mit der Anleitung in diesem Abschnitt wird TLS so konfiguriert, dass Port 8443 auf dem Management Server verwendet wird. Unabhängig vom verwendeten Port muss dieser auf dem Management Server geöffnet sein. Sie können ihn beispielsweise mit dem folgenden Befehl öffnen:

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose

TLS konfigurieren

Bearbeiten Sie die Datei /opt/apigee/customer/application/management-server.properties , um die TLS-Verwendung für Traffic zur und von der Management API zu steuern. Wenn diese Datei nicht vorhanden ist, erstellen Sie sie.

So konfigurieren Sie den TLS-Zugriff auf die Management API :

  1. Generieren Sie die Keystore-JKS-Datei mit Ihrem TLS-Zertifikat und dem privaten Schlüssel. Weitere Informationen finden Sie unter TLS/SSL für Edge für lokale Installationen konfigurieren.
  2. Kopieren Sie die Keystore-JKS-Datei in ein Verzeichnis auf dem Management Server-Knoten, z. B. /opt/apigee/customer/application.
  3. Ändern Sie den Eigentümer der JKS-Datei in den Nutzer „apigee“:
    chown apigee:apigee keystore.jks

    Dabei ist keystore.jks der Name Ihrer Keystore-Datei.

  4. Bearbeiten Sie /opt/apigee/customer/application/management-server.properties , um die folgenden Attribute festzulegen. Wenn diese Datei nicht vorhanden ist, erstellen Sie sie:
    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

    Dabei ist keyStore.jks Ihre Keystore-Datei und obfuscatedPassword Ihr verschleiertes Keystore-Passwort. Informationen zum Generieren eines verschleierten Passworts finden Sie unter TLS/SSL für Edge für lokale Installationen konfigurieren für Informationen.

  5. Starten Sie den Edge Management Server mit dem folgenden Befehl neu:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Die Management API unterstützt jetzt den Zugriff über TLS.

Konfigurieren Sie die neue Edge-Benutzeroberfläche für die Verwendung von TLS für den Zugriff auf die Edge API

Im obigen Verfahren hat Apigee empfohlen, conf_webserver_http.turn.off=false beizubehalten, damit die neue Edge-Benutzeroberfläche weiterhin Edge API-Aufrufe über HTTP ausführen kann.

Mit der folgenden Anleitung konfigurieren Sie die neue Edge-Benutzeroberfläche so, dass diese Aufrufe nur über HTTPS erfolgen:

  1. Konfigurieren Sie den TLS-Zugriff auf die Management API wie oben beschrieben.
  2. Nachdem Sie bestätigt haben, dass TLS für die Management API funktioniert, bearbeiten Sie /opt/apigee/customer/application/management-server.properties und legen Sie das folgende Attribut fest:
    conf_webserver_http.turn.off=true
  3. Starten Sie den Edge Management Server mit dem folgenden Befehl neu:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart 
  4. Aktualisieren Sie die Konfiguration der neuen Edge-Benutzeroberfläche, um eine Verbindung zum Management Server über HTTPS herzustellen. Legen Sie die folgenden Attribute in der Konfigurationsdatei der neuen Edge-Benutzeroberfläche fest: Datei:
    APIGEE_PORT_HTTP_MS=port
    MS_SCHEME=https

    Dabei ist port der Port, der zuvor von conf_webserver_ssl.port angegeben wurde (z. B. 8443).

  5. Wenden Sie die aktualisierte Konfiguration auf die neue Edge-Benutzeroberfläche an:
    /opt/apigee/apigee-setup/bin/setup.sh -p ue -f configFile

    Weitere Informationen zur Konfigurationsdatei der neuen Edge-Benutzeroberfläche finden Sie unter Neue Edge-Benutzeroberfläche konfigurieren. Informationen zum Konfigurieren des HTTPS-Zugriffs auf die neue Edge-Benutzeroberfläche selbst finden Sie unter TLS für die neue Edge-Benutzeroberfläche konfigurieren.

TLS-Attribute für den Management Server

In der folgenden Tabelle sind alle TLS/SSL-Attribute aufgeführt, die Sie in management-server.properties festlegen können:

Attribute Beschreibung

conf_webserver_http.port=8080

Der Standardwert ist 8080.

conf_webserver_ssl.enabled=false

Zum Aktivieren/Deaktivieren von TLS/SSL. Wenn TLS/SSL aktiviert ist (true), müssen Sie auch die Attribute „ssl.port“ und „keystore.path“ festlegen.

conf_webserver_http.turn.off=true

Zum Aktivieren/Deaktivieren von HTTP zusammen mit HTTPS. Wenn Sie nur HTTPS verwenden möchten, lassen Sie den Standardwert true.

conf_webserver_ssl.port=8443

Der TLS/SSL-Port.

Erforderlich, wenn TLS/SSL aktiviert ist (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.path=path

Der Pfad zu Ihrer Keystore-Datei.

Erforderlich, wenn TLS/SSL aktiviert ist (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.password=password

Verwenden Sie ein verschleiertes Passwort in diesem Format: OBF:xxxxxxxxxx

conf_webserver_cert.alias=alias

Optionaler Keystore-Zertifikatsalias

conf_webserver_keymanager.password=password

Wenn Ihr Schlüsselmanager ein Passwort hat, geben Sie eine verschleierte Version des Passworts in diesem Format ein:

OBF:xxxxxxxxxx

conf_webserver_trust.all=[false | true]

conf_webserver_trust.store.path=path

conf_webserver_trust.store.password=password

Konfigurieren Sie die Einstellungen für Ihren Trust Store. Legen Sie fest, ob Sie alle TLS/SSL-Zertifikate akzeptieren möchten (z. B. um nicht standardmäßige Typen zu akzeptieren). Der Standardwert ist false. Geben Sie den Pfad zu Ihrem Trust Store an und geben Sie ein verschleiertes Trust Store-Passwort in diesem Format ein:

OBF:xxxxxxxxxx

conf_http_HTTPTransport.ssl.cipher.suites.blacklist=CIPHER_SUITE_1, CIPHER_SUITE_2

conf_http_HTTPTransport.ssl.cipher.suites.whitelist=

Geben Sie alle Chiffrier-Suites an, die Sie ein- oder ausschließen möchten. Wenn Sie beispielsweise eine Sicherheitslücke in einer Chiffre entdecken, können Sie sie hier ausschließen. Trennen Sie mehrere Chiffren durch Kommas.

Alle Chiffren, die Sie mit der Blacklist entfernen, haben Vorrang vor allen Chiffren, die in der Whitelist enthalten sind.

Hinweis: Wenn standardmäßig keine Blacklist oder Whitelist angegeben ist, werden Chiffren, die mit dem folgenden regulären Java-Ausdruck übereinstimmen, standardmäßig ausgeschlossen.

^.*_(MD5|SHA|SHA1)$
^TLS_RSA_.*$
^SSL_.*$
^.*_NULL_.*$
^.*_anon_.*$

Wenn Sie jedoch eine Blacklist angeben, wird dieser Filter überschrieben und Sie müssen alle Chiffren einzeln auf die Blacklist setzen.

Informationen zu Chiffrier-Suites und zur Kryptografiearchitektur finden Sie in der Dokumentation zu den Java Cryptography Architecture Oracle Providers für JDK 8.

conf_webserver_ssl.session.cache.size=

conf_webserver_ssl.session.timeout=

Ganzzahlen, die Folgendes bestimmen:

  • Die Größe des TLS/SSL-Sitzungscaches (in Byte) zum Speichern von Sitzungsinformationen für mehrere Clients.
  • Die Zeit, die TLS/SSL-Sitzungen dauern können, bevor sie ablaufen (in Millisekunden).