Sie lesen gerade die Dokumentation zu Apigee Edge.
Apigee X-Dokumentation aufrufen info
In diesem Dokument wird beschrieben, wie Sie Cipher Suites für virtuelle Hosts und Router in Apigee Edge konfigurieren.
Eine Cipher Suite ist eine Reihe von Algorithmen, die zum Schutz einer Netzwerkverbindung beitragen, die TLS verwendet. Der Client und der Server müssen sich auf die spezifische Cipher Suite einigen, die für den Austausch von Nachrichten verwendet werden soll. Wenn sich Client und Server nicht auf eine Cipher Suite einigen können, schlagen die Anfragen mit TLS-Handshake-Fehlern fehl.
In Apigee sollten sich Clientanwendungen und Router auf die Cipher Suites einigen.
Es gibt folgende Gründe, die Cipher Suites in Apigee Edge zu ändern:
- Vermeiden von Abweichungen bei den Chiffrierverfahren zwischen Clientanwendungen und Apigee-Routern
- Sicherere Cipher Suites verwenden, um Sicherheitslücken zu schließen oder erweiterte Sicherheitsfunktionen zu nutzen
Cipher Suites können entweder auf den virtuellen Hosts oder auf den Apigee-Routern konfiguriert werden. Beachten Sie, dass Apigee Cipher Suites nur im Format OpenSSL cipher strings sowohl auf dem virtuellen Host als auch auf dem Router akzeptiert. Die OpenSSL-Handbuchseite zu Chiffren enthält die SSL- oder TLS-Chiffresammlungen aus der entsprechenden Spezifikation und ihre OpenSSL-Entsprechungen.
Beispiel:
Wenn Sie die TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 -Chiffriergruppe auf dem virtuellen Host oder dem Apigee-Router konfigurieren möchten, müssen Sie den entsprechenden OpenSSL-Chiffrierstring aus der OpenSSL-Chiffrier-Manpage ermitteln.
Der OpenSSL-Chiffrierstring für die Chiffrier-Suite TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ist ECDHE-RSA-AES128-GCM-SHA256.. Sie müssen also den OpenSSL-Chiffrierstring ECDHE-RSA-AES128-GCM-SHA256 verwenden, wenn Sie die Chiffrier-Suite im virtuellen Host oder auf dem Apigee-Router konfigurieren.
Hinweis
- Informationen zu den OpenSSL-Chiffre-Strings für die verschiedenen Chiffresammlungen finden Sie auf der OpenSSL-Manpage für Chiffren.
- Wenn Sie mit den Attributen für virtuelle Hosts nicht vertraut sind, lesen Sie die Referenz zu Attributen für virtuelle Hosts.
- Wenn Sie mit der Konfiguration von Attributen für Edge in der Private Cloud nicht vertraut sind, lesen Sie den Abschnitt Edge konfigurieren.
Chiffrierverfahren für virtuelle Hosts konfigurieren
In diesem Abschnitt wird beschrieben, wie Sie Cipher Suites in den virtuellen Hosts konfigurieren, die einer Organisation und Umgebung zugeordnet sind. Cipher Suites können im virtuellen Host über das Attribut ssl_ciphers konfiguriert werden. Dieses Attribut stellt die Liste der vom virtuellen Host unterstützten Cipher Suites dar.
Eine Liste der von Apigee unterstützten Cipher Suites finden Sie unter Unterstützte Cipher Suites.
Sie können den virtuellen Host mit einer der folgenden Methoden konfigurieren:
- Edge-Benutzeroberfläche verwenden
- Edge API verwenden
Edge-Benutzeroberfläche verwenden
So konfigurieren Sie den virtuellen Host über die Edge-Benutzeroberfläche:
- Melden Sie sich in der Edge-Benutzeroberfläche an.
- Gehen Sie zu Verwaltung > Virtuelle Hosts.
- Wählen Sie eine bestimmte Umgebung aus, in der Sie diese Änderung vornehmen möchten.
- Wählen Sie den virtuellen Host aus, für den Sie die Chiffrierverfahren konfigurieren möchten.
-
Aktualisieren Sie unter Properties (Eigenschaften) den Wert Ciphers (Chiffren) mit einer durch Doppelpunkte getrennten Liste von OpenSSL-Chiffrierstrings.
Wenn Sie beispielsweise nur die Cipher Suites
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256undTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256zulassen möchten, ermitteln Sie die entsprechenden OpenSSL-Chiffrierstrings aus der OpenSSL-Manpage für Chiffren, wie in der folgenden Tabelle dargestellt:Cipher Suite OpenSSL-Chiffrestring TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256Fügen Sie den OpenSSL-Chiffrierstring mit Doppelpunkt-Trennung hinzu, wie in der folgenden Abbildung dargestellt:
- Speichern Sie die Änderung.
Edge API verwenden
So konfigurieren Sie die Cipher Suites für einen virtuellen Host mit der Edge API:
- Rufen Sie die aktuelle Konfiguration des virtuellen Hosts mit der API
Get virtual host ab, wie unten dargestellt:
Nutzer der öffentlichen Cloud:
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}Private Cloud-Nutzer:
curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}{ "hostAliases": [ "api.myCompany,com" ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false } -
Fügen Sie der vorhandenen JSON-Nutzlast für die Konfiguration des virtuellen Hosts unter
propertiesdas Attributssl_ciphersmit den entsprechenden OpenSSL-Chiffrier-Strings hinzu.Wenn Sie beispielsweise nur die Cipher Suites
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256undTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256zulassen möchten, ermitteln Sie die entsprechenden OpenSSL-Cipher-Strings aus der OpenSSL-Manpage für Ciphers, wie in der folgenden Tabelle dargestellt:Cipher Suite OpenSSL-Chiffrestring TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256Fügen Sie den folgenden
properties-Codeblock hinzu:Beispiel für eine aktualisierte Konfiguration des virtuellen Hosts:
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "ssl_ciphers", "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false } -
Speichern Sie die aktualisierte Konfiguration des virtuellen Hosts in einer Datei. Beispiel:
virtualhost-payload.json. -
Aktualisieren Sie die
virtualhost-Konfiguration mit der Änderung mithilfe der API Virtuellen Host aktualisieren:Nutzer der öffentlichen Cloud:
curl -v -X POST Content-Type: application/json https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
Private Cloud-Nutzer:
curl -v -X POST Content-Type: application/json http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
Unterstützte Cipher Suites
Apigee unterstützt die folgenden Cipher Suites:
ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-SHA384 ECDHE-RSA-AES256-SHA DHE-RSA-AES256-GCM-SHA384 DHE-RSA-AES256-SHA256 DHE-RSA-AES256-SHA DHE-RSA-CAMELLIA256-SHA AES256-GCM-SHA384 AES256-SHA256 AES256-SHA CAMELLIA256-SHA ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA DHE-RSA-AES128-GCM-SHA256 DHE-RSA-AES128-SHA256 DHE-RSA-AES128-SHA DHE-RSA-CAMELLIA128-SHA AES128-GCM-SHA256 AES128-SHA256 AES128-SHA CAMELLIA128-SHA
Verschlüsselungssuiten auf virtuellen Hosts prüfen
In diesem Abschnitt wird beschrieben, wie Sie mit der Edge API überprüfen, ob die Cipher Suites im virtuellen Host erfolgreich geändert wurden.
- Führen Sie die API
Get virtual host aus, um die
virtualhost-Konfiguration wie unten dargestellt abzurufen:Nutzer der öffentlichen Cloud:
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}Private Cloud-Nutzer:
curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username} -
Prüfen Sie, ob die Property
ssl_ciphersauf den neuen Wert festgelegt wurde.Beispiel für eine aktualisierte Konfiguration des virtuellen Hosts:
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "ssl_ciphers", "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }Im obigen Beispiel wurde
ssl_ciphersmit dem neuen Wert festgelegt. -
Wenn Sie immer noch den alten Wert für
ssl_cipherssehen, prüfen Sie, ob Sie alle Schritte unter Chiffrierverfahren für virtuelle Hosts konfigurieren richtig ausgeführt haben. Wenn Sie einen Schritt ausgelassen haben, wiederholen Sie alle Schritte noch einmal. - Wenn Sie weiterhin keine Chiffrierverfahren für den virtuellen Host aktualisieren oder hinzufügen können, wenden Sie sich an den Apigee Edge-Support.
Cipher Suites auf Routern konfigurieren
In diesem Abschnitt wird beschrieben, wie Sie Chiffrierverfahren auf den Routern konfigurieren. Cipher Suites können über die Router-Property conf_load_balancing_load.balancing.driver.server.ssl.ciphers konfiguriert werden. Sie stellt die durch Doppelpunkt getrennten akzeptierten Cipher Suites dar.
So konfigurieren Sie Chiffrierverfahren auf den Routern:
-
Öffnen Sie auf dem Routercomputer die folgende Datei in einem Editor. Wenn sie noch nicht vorhanden ist, erstellen Sie sie.
/opt/apigee/customer/application/router.properties
Wenn Sie die Datei beispielsweise mit
viöffnen möchten, geben Sie Folgendes ein:vi /opt/apigee/customer/application/router.properties
-
Fügen Sie der Datei
propertieseine Zeile im folgenden Format hinzu und ersetzen Sie colon_separated_cipher_suites durch einen Wert:conf_load_balancing_load.balancing.driver.server.ssl.ciphers=colon_separated_cipher_suites
Wenn Sie beispielsweise nur die Cipher Suites
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256undTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256zulassen möchten, ermitteln Sie die entsprechenden OpenSSL-Cipher-Strings aus der OpenSSL-Manpage für Ciphers, wie in der folgenden Tabelle dargestellt:Cipher Suite OpenSSL-Chiffrestring TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256Fügen Sie dann die folgende Zeile hinzu:
conf_load_balancing_load.balancing.driver.server.ssl.ciphers=DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
- Speichern Sie die Änderungen.
-
Prüfen Sie, ob die Datei mit den Eigenschaften dem Nutzer
apigeegehört, wie unten dargestellt:chown apigee:apigee /opt/apigee/customer/application/router.properties
-
Starte den Router wie unten beschrieben neu:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Wenn Sie mehr als einen Router haben, wiederholen Sie die obigen Schritte auf allen Routern.
Cipher Suite auf Routern prüfen
In diesem Abschnitt wird beschrieben, wie Sie prüfen können, ob die Chiffrierverfahren auf den Routern erfolgreich geändert wurden.
-
Suchen Sie auf dem Router mit dem Apigee-Suchdienstprogramm aus dem Ordner
/opt/apigeenach der Eigenschaftconf_load_balancing_load.balancing.driver.server.ssl.ciphersund prüfen Sie, ob sie mit dem neuen Wert festgelegt wurde:/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.server.ssl.ciphers
-
Wenn die neuen Chiffrierverfahren erfolgreich auf dem Router festgelegt wurden, werden die neuen Werte im obigen Befehl angezeigt.
Das folgende Beispiel zeigt das Ergebnis des Befehls
searchoben, wenn die Cipher Suites aufDHE-RSA-AES128-GCM-SHA256undECDHE-RSA-AES128-GCM-SHA256aktualisiert wurden:Found key conf_load_balancing_load.balancing.driver.server.ssl.ciphers, with value, DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256, in /opt/apigee/customer//application/router.properties
In der obigen Beispielausgabe sehen Sie, dass die Property
conf_load_balancing_load.balancing.driver.server.ssl.ciphersmit den neuen Cipher Suite-Werten festgelegt wurde. Dies weist darauf hin, dass die Cipher Suite auf dem Router erfolgreich auf die OpenSSL-Cipher-StringsDHE-RSA-AES128-GCM-SHA25undECDHE-RSA-AES128-GCM-SHA256aktualisiert wurde. -
Wenn Sie weiterhin die alten Werte für die Chiffrierverfahren
conf_load_balancing_load.balancing.driver.server.ssl.cipherssehen, prüfen Sie, ob Sie alle Schritte unter Chiffrierverfahren auf Routern konfigurieren richtig ausgeführt haben. Wenn Sie einen Schritt ausgelassen haben, wiederholen Sie alle Schritte noch einmal. - Wenn Sie die Cipher Suites auf Routern weiterhin nicht ändern können, wenden Sie sich an den Apigee Edge-Support.