SSL-Konfiguration
SSL aktivieren
SSL kann aktiviert werden, indem Sie die Datei "cycle_server.properties " im Installationsverzeichnis "CycleCloud" bearbeiten. Öffnen Sie die Datei "cycle_server.properties " mit einem Text-Editor, und legen Sie die folgenden Werte entsprechend fest:
# True if SSL is enabled
webServerEnableHttps=true
webServerRedirectHttp=true
Wichtig
Beachten Sie, dass Sie beim Bearbeiten der Datei "cycle_server.properties " zuerst nach bereits vorhandenen Schlüsselwertdefinitionen in der Datei suchen. Wenn mehrere Definitionen vorhanden sind, wird die letzte Definition wirksam.
Der standardmäßige SSL-Port für CycleCloud ist Port 8443. Wenn Sie verschlüsselte Webkommunikation auf einem anderen Port ausführen möchten, können Sie die webServerSslPort
Eigenschaft in den neuen Portwert ändern. Stellen Sie sicher, dass die webServerSslPort
webServerPort
Werte DO NOT CONFLICT sind.
Nachdem Sie die Datei "cycle_server.properties " bearbeitet haben, müssen Sie CycleCloud neu starten, damit der verschlüsselte Kommunikationskanal aktiviert wird:
/opt/cycle_server/cycle_server restart
Angenommen, Sie haben den SSL-Port für CycleCloud beim Konfigurieren für verschlüsselte Kommunikation nicht geändert, können Sie jetzt zur http://<my CycleCloud address>:8443/
Überprüfung der SSL-Verbindung wechseln.
Hinweis
Wenn die HTTPS-URL nicht funktioniert, überprüfen Sie die <CycleCloud Home>/logs/catalina.err und <CycleCloud Home>/logs/cycle_server.log auf Fehlermeldungen, die angeben können, warum der verschlüsselte Kanal nicht reagiert.
Self-Generated Zertifikate
Wenn Sie kein Zertifikat von einer Zertifizierungsstelle (Zertifizierungsstelle) wie VeriSign haben, können Sie das automatisch generierte selbstsignierte Zertifikat verwenden, das mit Azure CycleCloud bereitgestellt wird. Dies ist eine schnelle Möglichkeit, SSL ohne Kosten zu verwenden, aber die meisten Webbrowser zeigen eine Warnung an, dass eine vertrauenswürdige Behörde das Zertifikat, das zum Verschlüsseln des Kanals verwendet wird, nicht überprüft hat. Für einige Fälle, z. B. interne CycleCloud-Bereitstellungen in sicheren Netzwerken, ist dies akzeptabel. Benutzer müssen ihrem Browser eine Ausnahme hinzufügen, um die Website anzuzeigen, aber die Inhalte und die Sitzung werden andernfalls wie erwartet verschlüsselt.
Warnung
Das selbstsignierte Azure CycleCloud-Zertifikat verfügt über eine verkürzte Haltbarkeit. Wenn es abläuft, stellen Browser die Warnung zu den SSL-Zertifikaten erneut aus, die nicht vertrauenswürdig sind. Benutzer müssen sie explizit akzeptieren, um die Webkonsole anzuzeigen.
Arbeiten mit "Let's Encrypt"
CycleCloud unterstützt Zertifikate von Let's Encrypt. Um Let's Encrypt mit CycleCloud zu verwenden, müssen Sie Folgendes ausführen:
- AKTIVIEREN von SSL auf Port 443
- sicherstellen, dass CycleCloud öffentlich über Port 443 mit einem externen Domänennamen erreichbar ist
Sie können die Unterstützung "Let's Encrypt" mit der Option "SSL" auf der Einstellungsseite aktivieren oder über den CycleCloud-Computer ausführen cycle_server keystore automatic DOMAIN_NAME
.
Arbeiten mit CA-Generated Zertifikaten
Die Verwendung eines ca-generierten Zertifikats ermöglicht den Webzugriff auf Ihre CycleCloud-Installation, ohne den Fehler des vertrauenswürdigen Zertifikats anzuzeigen. Um den Prozess zu starten, führen Sie zuerst folgendes aus:
./cycle_server keystore create_request <FQDN>
Sie werden aufgefordert, einen Domänennamen anzugeben, der das Feld "Allgemeiner Name" im signierten Zertifikat ist. Dadurch wird ein neues selbstsigniertes Zertifikat für die angegebene Domäne generiert und eine datei cycle_server.csr geschrieben. Sie müssen die CSR einer Zertifizierungsstelle bereitstellen, und sie stellen das endgültige signierte Zertifikat bereit (das unten als server.crt bezeichnet wird). Außerdem benötigen Sie die Stammzertifikate und alle Zwischenzertifikate, die in der Kette zwischen Ihrem neuen Zertifikat und dem Stammzertifikat verwendet werden. Die Zertifizierungsstelle sollte diese für Sie bereitstellen. Wenn sie sie als einzelne Zertifikatdatei gebündelt bereitgestellt haben, können Sie sie mit dem folgenden Befehl importieren:
./cycle_server keystore import server.crt
Wenn sie mehrere Zertifikatdateien bereitgestellt haben, sollten Sie sie alle gleichzeitig importieren, indem Sie die Namen an denselben Befehl anfügen, getrennt durch Leerzeichen:
./cycle_server keystore import server.crt ca_cert_chain.crt
Importieren vorhandener Zertifikate
Wenn Sie zuvor ein Zertifizierungsstelle- oder selbstsigniertes Zertifikat erstellt haben, können Sie CycleCloud aktualisieren, um es mit dem folgenden Befehl zu verwenden:
./cycle_server keystore update server.crt
Wenn Sie eine PFX-Datei importieren möchten, können Sie sie mit dem folgenden Befehl in CycleCloud 7.9.7 oder höher ausführen:
./cycle_server keystore import_pfx server.pfx --pass PASSWORD
Beachten Sie, dass die PFX-Datei nur einen Eintrag enthalten kann.
Wenn Sie änderungen am Keystore außerhalb dieser Befehle vornehmen, können Sie den Keystore sofort in CycleCloud 7.9.7 oder höher neu laden:
./cycle_server keystore reconfig
Konfigurieren von CycleCloud zur Verwendung nativer HTTPS
Standardmäßig ist Azure CycleCloud so konfiguriert, dass die standardmäßige Java IO HTTPS-Implementierung verwendet wird. Dieser Standardwert funktioniert auf allen unterstützten Plattformen gut.
Um die Leistung bei der Ausführung auf Linux-Plattformen zu verbessern, kann CycleCloud optional für die Verwendung der nativen HTTPS-Implementierung von Tomcat konfiguriert werden.
Um natives HTTPS unter Linux zu aktivieren, fügen Sie die webServerEnableHttps
Attribute ihrer webServerUseNativeHttps
datei "cycle_server.properties " hinzu. Öffnen Sie cycle_server.properties mit einem Text-Editor, und legen Sie die folgenden Werte fest:
# Turn on HTTPS
webServerEnableHttps = true
# Use Native HTTPS connector
webServerUseNativeHttps = true
Abwärtskompatibilität für TLS 1.0 und 1.1
Standardmäßig werden die Java- und native HTTPS-Connectors so konfiguriert, dass nur das TLS 1.2-Protokoll verwendet wird. Wenn Sie TLS 1.0- oder 1.1-Protokolle für ältere Webclients anbieten müssen, können Sie sich zur Abwärtskompatibilität anmelden.
Öffnen Sie cycle_server.properties mit einem Text-Editor, und suchen Sie nach dem sslEnabledProtocols
Attribut:
sslEnabledProtocols="TLSv1.2"
Ändern Sie das Attribut in eine +
durch Trennzeichen getrennte Liste von Protokollen, die Sie unterstützen möchten.
sslEnabledProtocols="TLSv1.0+TLSv1.1+TLSv1.2"
Deaktivieren der unverschlüsselten Kommunikation
Das obige Setup ermöglicht es, unverschlüsselte (HTTP)-Verbindungen herzustellen, aber sie werden zur Sicherheit an HTTPS umgeleitet.
Möglicherweise möchten Sie den unverschlüsselten Zugriff auf Ihre CycleCloud-Installation verhindern. Um die unverschlüsselte Kommunikation zu deaktivieren, öffnen Sie die Datei "cycle_server.properties " in einem Text-Editor. Suchen Sie nach der webServerEnableHttp
Eigenschaft, und ändern Sie sie in:
# HTTP
webServerEnableHttp=false
Speichern Sie die Änderungen, und starten Sie CycleCloud neu. DER HTTP-Zugriff auf CycleCloud wird deaktiviert.