Standardmäßig greifen Sie über HTTP auf die Edge-Benutzeroberfläche zu, indem Sie die IP-Adresse des Management Server-Knotens und Port 9000 verwenden. Beispiel:
http://ms_IP:9000
Alternativ können Sie den TLS-Zugriff auf die Edge-Benutzeroberfläche so konfigurieren, dass Sie auf sie zugreifen können:
https://ms_IP:9443
In diesem Beispiel konfigurieren Sie den TLS-Zugriff für die Verwendung von Port 9443. Diese Portnummer ist jedoch für Edge nicht erforderlich. Sie können den Verwaltungsserver so konfigurieren, dass andere Portwerte verwendet werden. Die einzige Voraussetzung ist, dass Ihre Firewall den Traffic über den angegebenen Port zulässt.
Prüfen, ob der TLS-Port geöffnet ist
Mit dem Verfahren in diesem Abschnitt wird TLS für die Verwendung von Port 9443 auf dem Verwaltungsserver konfiguriert. Unabhängig vom verwendeten Port muss er auf dem Verwaltungsserver geöffnet sein. Sie können sie beispielsweise mit dem folgenden Befehl öffnen:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 9443 -j ACCEPT --verbose
TLS konfigurieren
So konfigurieren Sie den TLS-Zugriff auf die Verwaltungsoberfläche:
- Erstellen Sie die JKS-Datei des Schlüsselspeichers mit Ihrer TLS-Zertifizierung und Ihrem privaten Schlüssel und kopieren Sie sie auf den Knoten des Verwaltungsservers. Weitere Informationen finden Sie unter TLS/SSL für Edge On-Premises konfigurieren.
- Führen Sie den folgenden Befehl aus, um TLS zu konfigurieren:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl
- Geben Sie die HTTPS-Portnummer ein, z. B. 9443.
- Geben Sie an, ob Sie den HTTP-Zugriff auf die Verwaltungsoberfläche deaktivieren möchten. Standardmäßig ist die Verwaltungs-UI über HTTP auf Port 9000 zugänglich.
- Geben Sie den Schlüsselspeicheralgorithmus ein. Der Standardwert ist JKS.
- Geben Sie den absoluten Pfad zur JKS-Datei des Schlüsselspeichers ein.
Das Script kopiert die Datei in das Verzeichnis
/opt/apigee/customer/conf
auf dem Management-Serverknoten und ändert die Inhaberschaft der Datei in „apigee“. - Geben Sie das Klartextpasswort für den Schlüsselspeicher ein.
- Das Skript startet dann die Edge-Management-Benutzeroberfläche neu. Nach dem Neustart unterstützt die Verwaltungs-UI den Zugriff über TLS.
Diese Einstellungen finden Sie unter
/opt/apigee/etc/edge-ui.d/SSL.sh
.
TLS mit einer Konfigurationsdatei konfigurieren
Alternativ zur oben beschriebenen Vorgehensweise können Sie dem Befehl in Schritt 2 der Anleitung eine Konfigurationsdatei übergeben. Sie müssen diese Methode verwenden, wenn Sie optionale TLS-Attribute festlegen möchten.
Wenn Sie eine Konfigurationsdatei verwenden möchten, erstellen Sie eine neue Datei und fügen Sie die folgenden Attribute hinzu:
HTTPSPORT=9443 DISABLE_HTTP=y # Set type to PKCS12 if you are using a PKCS12 keystore KEY_ALGO=JKS KEY_FILE_PATH=/opt/apigee/customer/application/mykeystore.jks KEY_PASS=clearTextKeystorePWord
Speichern Sie die Datei in einem lokalen Verzeichnis mit einem beliebigen Namen. Konfigurieren Sie dann TLS mit dem folgenden Befehl:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
Dabei ist configFile der vollständige Pfad zur gespeicherten Datei.
PKCS12-Schlüsselspeicher für FIPS-fähige Betriebssysteme verwenden
Wenn Sie Edge for Private Cloud auf einem FIPS-kompatiblen Betriebssystem verwenden, sollten Sie einen PKCS12-Schlüsselspeicher verwenden. Sie können einen PKCS12-Schlüsselspeicher mithilfe standardmäßiger OpenSSL-Befehle generieren. Wenn Sie einen PKCS12-Schlüsselspeicher verwenden, legen Sie KEY_ALGO=PKCS12
in der Konfigurationsdatei fest.
Edge-Benutzeroberfläche konfigurieren, wenn TLS am Load Balancer beendet wird
Wenn Sie einen Load Balancer haben, der Anfragen an die Edge-Benutzeroberfläche weiterleitet, können Sie die TLS-Verbindung am Load Balancer beenden und dann Anfragen über HTTP an die Edge-Benutzeroberfläche weiterleiten. Diese Konfiguration wird unterstützt, Sie müssen jedoch den Load Balancer und die Edge-Benutzeroberfläche entsprechend konfigurieren.
Die zusätzliche Konfiguration ist erforderlich, wenn die Edge-Benutzeroberfläche Nutzern E-Mails zum Festlegen ihres Passworts sendet, wenn der Nutzer erstellt wird oder wenn der Nutzer das Zurücksetzen eines verlorenen Passworts anfordert. Diese E-Mail enthält eine URL, über die der Nutzer ein Passwort festlegen oder zurücksetzen kann. Wenn die Edge-Benutzeroberfläche nicht für die Verwendung von TLS konfiguriert ist, wird für die URL in der generierten E-Mail standardmäßig das HTTP-Protokoll und nicht HTTPS verwendet. Sie müssen den Load Balancer und die Edge-Benutzeroberfläche so konfigurieren, dass eine E-Mail-Adresse mit HTTPS generiert wird.
Achten Sie bei der Konfiguration des Load Balancers darauf, dass er den folgenden Header für Anfragen festlegt, die an die Edge-Benutzeroberfläche weitergeleitet werden:
X-Forwarded-Proto: https
So konfigurieren Sie die Edge-Benutzeroberfläche:
- Öffnen Sie die Datei
/opt/apigee/customer/application/ui.properties
in einem Editor. Wenn die Datei nicht vorhanden ist, erstellen Sie sie:vi /opt/apigee/customer/application/ui.properties
- Legen Sie das folgende Attribut in
ui.properties
fest:conf/application.conf+trustxforwarded=true
- Speichern Sie die Änderungen in
ui.properties
. - Starten Sie die Edge-Benutzeroberfläche neu:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Optionale TLS-Attribute festlegen
Die Edge-Benutzeroberfläche unterstützt optionale TLS-Konfigurationseigenschaften, mit denen Sie Folgendes festlegen können:
- Standard-TLS-Protokoll
- Liste der unterstützten TLS-Protokolle
- Unterstützte TLS-Algorithmen
- Unterstützte TLS-Chiffren
Diese optionalen Parameter sind nur verfügbar, wenn Sie die folgende Konfigurationseigenschaft in der Konfigurationsdatei festlegen, wie unter TLS mit einer Konfigurationsdatei konfigurieren beschrieben:
TLS_CONFIGURE=y
In der folgenden Tabelle werden diese Attribute beschrieben:
Attribut | Beschreibung |
---|---|
TLS_PROTOCOL
|
Definiert das Standard-TLS-Protokoll für die Edge-Benutzeroberfläche. Standardmäßig ist dies TLS 1.2. Gültige Werte sind TLSv1.2, TLSv1.1 und TLSv1. |
TLS_ENABLED_PROTOCOL
|
Definiert die Liste der aktivierten Protokolle als kommagetrenntes Array. Beispiel: TLS_ENABLED_PROTOCOL=[\"TLSv1.2\", \"TLSv1.1\", \"TLSv1\"] Beachten Sie, dass Sie das Zeichen " mit Escapezeichen versehen müssen.
Standardmäßig sind alle Protokolle aktiviert. |
TLS_DISABLED_ALGO
|
Hiermit werden die deaktivierten Chiffren-Suites definiert. Außerdem kann damit verhindert werden, dass kleine Schlüsselgrößen für den TLS-Handshake verwendet werden. Es gibt keinen Standardwert. Die an
TLS_DISABLED_ALGO=EC\ keySize\ <\ 160,RSA\ keySize\ <\ 2048 |
TLS_ENABLED_CIPHERS
|
Definiert die Liste der verfügbaren TLS-Chiffren als kommagetrenntes Array. Beispiel: TLS_ENABLED_CIPHERS=[\"TLS_DHE_RSA_WITH_AES_128_CBC_SHA\", \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA\"] Das Anführungszeichen muss maskiert werden.
Die Standardliste der aktivierten Chiffren ist: "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", "TLS_RSA_WITH_AES_256_CBC_SHA", "TLS_RSA_WITH_AES_128_CBC_SHA", "SSL_RSA_WITH_RC4_128_SHA", "SSL_RSA_WITH_RC4_128_MD5", "TLS_EMPTY_RENEGOTIATION_INFO_SCSV" Eine Liste der verfügbaren Chiffren finden Sie hier. |
TLS-Protokolle deaktivieren
Wenn Sie TLS-Protokolle deaktivieren möchten, bearbeiten Sie die Konfigurationsdatei wie unter TLS mit einer Konfigurationsdatei konfigurieren beschrieben:
- Öffnen Sie die Konfigurationsdatei in einem Editor.
- Wenn Sie ein einzelnes TLS-Protokoll deaktivieren möchten, z. B. TLSv1.0, fügen Sie der Konfigurationsdatei Folgendes hinzu:
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1"
Wenn Sie mehrere Protokolle deaktivieren möchten, z. B. TLSv1.0 und TLSv1.1, fügen Sie der Konfigurationsdatei Folgendes hinzu:
TLS_CONFIGURE=y TLS_DISABLED_ALGO="tlsv1, tlsv1.1"
- Speichern Sie die Änderungen in der Konfigurationsdatei.
- Führen Sie den folgenden Befehl aus, um TLS zu konfigurieren:
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile
Dabei ist configFile der vollständige Pfad zur Konfigurationsdatei.
- Starten Sie die Edge-Benutzeroberfläche neu:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Sichere Cookies verwenden
Apigee Edge for Private Cloud unterstützt das Hinzufügen des secure
-Flags zum Set-Cookie
-Header für Antworten von der Edge-Benutzeroberfläche. Wenn dieses Flag vorhanden ist, kann das Cookie nur über TLS-fähige Kanäle gesendet werden. Wenn das nicht der Fall ist, kann das Cookie über jeden Kanal gesendet werden, unabhängig davon, ob er sicher ist oder nicht.
Cookies ohne das Flag secure
können einem Angreifer möglicherweise ermöglichen, das Cookie zu erfassen und wiederzuverwenden oder eine aktive Sitzung zu hacken. Daher empfiehlt es sich, diese Einstellung zu aktivieren.
So legen Sie das Flag secure
für Edge-UI-Cookies fest:
- Öffnen Sie die folgende Datei in einem Texteditor:
/opt/apigee/customer/application/ui.properties
Wenn die Datei nicht vorhanden ist, erstellen Sie sie.
- Legen Sie in der Datei
ui.properties
die Eigenschaftconf_application_session.secure
auftrue
fest, wie im folgenden Beispiel gezeigt:conf_application_session.secure=true
- Speichern Sie die Änderungen.
- Starten Sie die Edge-Benutzeroberfläche mit dem Dienstprogramm
apigee-serice
neu, wie im folgenden Beispiel gezeigt:/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Prüfen Sie mit einem Dienstprogramm wie curl
die Antwortheader in der Edge-Benutzeroberfläche, um zu bestätigen, dass die Änderung funktioniert. Beispiel:
curl -i -v https://edge_UI_URL
Der Header sollte eine Zeile wie die folgende enthalten:
Set-Cookie: secure; ...
Deaktivieren von TLS in der Edge-Benutzeroberfläche
Verwenden Sie den folgenden Befehl, um TLS in der Edge-Benutzeroberfläche zu deaktivieren:
/opt/apigee/apigee-service/bin/apigee-service edge-ui disable-ssl