TLS/SSL für Edge On Premises konfigurieren

Edge for Private Cloud Version 4.16.09

TLS (Transport Layer Security, dessen Vorgänger SSL ist) ist die Standardsicherheitstechnologie für sichere, verschlüsselte Nachrichten in Ihrer API-Umgebung, von Apps über Apigee Edge bis hin zu Ihren Backend-Diensten.

Unabhängig von der Umgebungskonfiguration Ihrer Verwaltungs-API, z. B. ob Sie einen Proxy, einen Router und/oder einen Load Balancer vor Ihrer Verwaltungs-API verwenden, können Sie mit Edge TLS aktivieren und konfigurieren. So haben Sie die Kontrolle über die Nachrichtenverschlüsselung in Ihrer On-Premise-API-Verwaltungsumgebung.

Bei einer On-Premises-Installation von Edge Private Cloud können Sie TLS an mehreren Stellen konfigurieren:

  1. Zwischen einem Router und einem Nachrichtenprozessor
  2. Für den Zugriff auf die Edge-Verwaltungs-API
  3. Für den Zugriff auf die Edge-Benutzeroberfläche
  4. Für den Zugriff von einer App auf Ihre APIs
  5. Für den Zugriff von Edge auf Ihre Back-End-Dienste

Das Konfigurieren von TLS für die ersten drei Elemente wird unten beschrieben. Bei allen diesen Verfahren wird davon ausgegangen, dass Sie eine JKS-Datei mit Ihrer TLS-Zertifizierung und Ihrem privaten Schlüssel erstellt haben.

Wie Sie TLS für den Zugriff von einer App auf Ihre APIs konfigurieren (Nummer 4 oben), erfahren Sie unter TLS-Zugriff auf eine API für die Private Cloud konfigurieren. Wie Sie TLS für den Zugriff von Edge auf Ihre Backend-Dienste konfigurieren, erfahren Sie unter TLS von Edge zum Back-End konfigurieren (Cloud und Private Cloud).

Eine vollständige Übersicht über das Konfigurieren von TLS in Edge finden Sie unter TLS/SSL.

JKS-Datei erstellen

Sie stellen den Schlüsselspeicher als JKS-Datei dar, wobei der Schlüsselspeicher Ihr TLS-Zertifikat und Ihren privaten Schlüssel enthält. Es gibt mehrere Möglichkeiten, eine JKS-Datei zu erstellen. Eine davon ist die Verwendung der Dienstprogramme „openssl“ und „keytool“.

Angenommen, Sie haben eine PEM-Datei mit dem Namen server.pem, die Ihr TLS-Zertifikat, und eine PEM-Datei mit dem Namen private_key.pem, die Ihren privaten Schlüssel enthält. Verwenden Sie die folgenden Befehle, um die PKCS12-Datei zu erstellen:

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

Sie müssen die Passphrase für den Schlüssel eingeben, falls vorhanden, und ein Exportpasswort. Mit diesem Befehl wird eine PKCS12-Datei mit dem Namen keystore.pkcs12 erstellt.

Verwenden Sie den folgenden Befehl, um sie in eine JKS-Datei mit dem Namen „keystore.jks“ zu konvertieren:

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

Sie werden aufgefordert, das neue Passwort für die JKS-Datei und das vorhandene Passwort für die PKCS12-Datei einzugeben. Verwende für die JKS-Datei dasselbe Passwort wie für die PKCS12-Datei.

Wenn Sie einen Schlüsselalias angeben müssen, z. B. beim Konfigurieren von TLS zwischen einem Router und einem Message Processor, fügen Sie dem Befehl „openssl“ die Option -name hinzu:

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

Fügen Sie dann die Option -alias in den Befehl keytool ein:

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

Verschleiertes Passwort generieren

Für einige Teile des TLS-Konfigurationsverfahrens für Edge müssen Sie ein verschleiertes Passwort in eine Konfigurationsdatei eingeben. Ein verschleiertes Passwort ist eine sicherere Alternative zum Eingeben Ihres Passworts im Klartext.

Sie können ein verschleiertes Passwort in Java generieren, indem Sie die mit Edge installierten Jetty-JAR-Dateien verwenden. Generieren Sie das verschleierte Passwort mit einem Befehl im folgenden Format:

> 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

Geben Sie das neue Passwort in der Aufforderung ein. Aus Sicherheitsgründen wird der Text des Passworts nicht angezeigt. Dieser Befehl gibt das Passwort in folgendem Format zurück:

OBF:58fh40h61svy156789gk1saj
MD5:902fobg9d80e6043b394cb2314e9c6

Verwenden Sie beim Konfigurieren von TLS das von OBF angegebene verschleierte Passwort.

Weitere Informationen findest du in diesem Artikel.