Delen via


SSL-configuratie

SSL inschakelen

SSL kan worden ingeschakeld door het bestand cycle_server.properties te bewerken in de cycleCloud-installatiemap. Open het bestand cycle_server.properties met een teksteditor en stel de volgende waarden op de juiste manier in:

# True if SSL is enabled
webServerEnableHttps=true
webServerRedirectHttp=true

Belangrijk

Houd er rekening mee dat bij het bewerken van het bestand cycle_server.properties, het belangrijk is dat u eerst zoekt naar bestaande sleutelwaardedefinities in het bestand. Als er meer dan één definitie is, is de laatste van kracht.

De standaard-SSL-poort voor CycleCloud is poort 8443. Als u versleutelde webcommunicatie op een andere poort wilt uitvoeren, kunt u de eigenschap webServerSslPort wijzigen in de nieuwe poortwaarde. Zorg ervoor dat de webServerSslPort en de webServerPort waarden NIET CONFLICTeren.

Nadat u het bestand cycle_server.properties hebt bewerkt, moet u CycleCloud opnieuw starten om het versleutelde communicatiekanaal te activeren:

/opt/cycle_server/cycle_server restart

Ervan uitgaande dat u de SSL-poort voor CycleCloud niet hebt gewijzigd bij het configureren voor versleutelde communicatie, kunt u nu naar http://<my CycleCloud address>:8443/ gaan om de SSL-verbinding te verifiëren.

Notitie

Als de HTTPS-URL niet werkt, controleert u de <CycleCloud Home>/logs/catalina.err en <CycleCloud Home>/logs/cycle_server.log op foutberichten die kunnen aangeven waarom het versleutelde kanaal niet reageert.

Self-Generated certificaten

Als u geen certificaat hebt van een certificeringsinstantie (CA), zoals VeriSign, kunt u het automatisch gegenereerde zelfondertekende certificaat gebruiken dat is geleverd met Azure CycleCloud. Dit is een snelle manier om zonder kosten SSL te gebruiken, maar in de meeste webbrowsers wordt een waarschuwing weergegeven waarin staat dat een vertrouwde instantie het certificaat dat wordt gebruikt voor het versleutelen van het kanaal niet heeft geverifieerd. In sommige gevallen, zoals interne CycleCloud-implementaties op beveiligde netwerken, is dit acceptabel. Gebruikers moeten een uitzondering toevoegen aan hun browser om de site weer te geven, maar de inhoud en de sessie worden anders versleuteld zoals verwacht.

Waarschuwing

Het zelfondertekende Azure CycleCloud-certificaat heeft een verkorte houdbaarheid. Wanneer deze verloopt, geven browsers de waarschuwing opnieuw uit over het niet-vertrouwde SSL-certificaat. Gebruikers moeten de voorwaarden expliciet accepteren om de webconsole weer te geven.

Werken met Let's Encrypt

CycleCloud ondersteunt certificaten van Let's Encrypt. Als u Let's Encrypt wilt gebruiken met CycleCloud, moet u het volgende doen:

  • SSL inschakelen op poort 443
  • controleren of CycleCloud openbaar bereikbaar is via poort 443 met een externe domeinnaam

U kunt Ondersteuning voor Let's Encrypt inschakelen met de optie SSL op de instellingenpagina of door cycle_server keystore automatic DOMAIN_NAME uit te voeren vanaf de CycleCloud-computer.

Werken met CA-Generated certificaten

Als u een door een CA gegenereerd certificaat gebruikt, heeft u webtoegang tot uw CycleCloud-installatie zonder de fout met het vertrouwde certificaat weer te geven. Voer eerst het volgende uit om het proces te starten:

./cycle_server keystore create_request <FQDN>

U wordt gevraagd een domeinnaam op te geven. Dit is het veld 'Algemene naam' op het ondertekende certificaat. Hiermee genereert u een nieuw zelfondertekend certificaat voor het opgegeven domein en schrijft u een cycle_server.csr-bestand. U moet de CSR aan een certificeringsinstantie verstrekken, en zij zullen u het uiteindelijke ondertekende certificaat leveren (dit wordt hieronder server.crt genoemd). U hebt ook de basiscertificaten en tussenliggende certificaten nodig die in de keten tussen uw nieuwe certificaat en het basiscertificaat worden gebruikt. De CA moet deze voor u opgeven. Als ze ze hebben geleverd als één certificaatbestand, kunt u ze importeren met de volgende opdracht:

./cycle_server keystore import server.crt

Als ze meerdere certificaatbestanden hebben opgegeven, moet u ze allemaal tegelijk importeren en de namen toevoegen aan dezelfde opdracht, gescheiden door spaties:

./cycle_server keystore import server.crt ca_cert_chain.crt

Bestaande certificaten importeren

Als u eerder een CA of zelfondertekend certificaat hebt gemaakt, kunt u CycleCloud bijwerken om dit te gebruiken met de volgende opdracht:

./cycle_server keystore update server.crt

Als u een PFX-bestand wilt importeren, kunt u dit doen met de volgende opdracht in CycleCloud 7.9.7 of hoger:

./cycle_server keystore import_pfx server.pfx --pass PASSWORD

Houd er rekening mee dat het PFX-bestand slechts één vermelding mag bevatten.

Als u wijzigingen aanbrengt in het sleutelarchief buiten deze opdrachten, kunt u het sleutelarchief onmiddellijk opnieuw laden in CycleCloud 7.9.7 of hoger:

./cycle_server keystore reconfig

Details van keystore-implementatie

Certificaten voor CycleCloud worden opgeslagen in /opt/cycle_server/config/private/keystore, naast andere certificaten die nodig zijn voor bewerking. Hier volgt een niet-volledige lijst met de items die zijn opgeslagen in het sleutelarchief:

Alias Doel
identiteit Bevat de certificaatketen voor de gebruikersgerichte webinterface (poort 443 of 8443)
clusteridentiteit Bevat de certificaatketen voor knooppunten om verbinding te maken met CycleCloud (poort 9443)
wortel Bevat het certificaat dat wordt gebruikt om alle lokale certificaten te ondertekenen, inclusief clusteridentiteit

Het sleutelarchief kan worden geïnspecteerd met het sleutelarchiefbestand van Java. Met de volgende opdracht worden bijvoorbeeld alle items in het sleutelarchief weergegeven:

keytool -list -keystore /opt/cycle_server/config/private/keystore -storepass changeit

De bovenstaande cycle_server-opdrachten werken de identity alias bij. Het bijwerken van andere vermeldingen, inclusief de cluster-identity of root certificaten, wordt NIET ondersteund.

Het sleutelarchief kan rechtstreeks worden gewijzigd, maar dit wordt niet aanbevolen. Over het algemeen is het opnieuw opstarten van CycleServer vereist om wijzigingen door te voeren.

Waarschuwing

Als u de inhoud van het sleutelarchief wijzigt, kan dit ertoe leiden dat clusters niet werken. Maak altijd een back-up voordat u deze wijzigt.

Het wachtwoord van het sleutelarchief is changeit en kan op dit moment niet worden gewijzigd. Het bestand kan echter alleen worden gelezen en beschrijfbaar door de cycle_server gebruiker.

Compatibiliteit met eerdere versies voor TLS 1.0 en 1.1

CycleServer wordt standaard geconfigureerd om alleen het TLS 1.2-protocol te gebruiken. Als u TLS 1.0- of 1.1-protocollen voor oudere webclients moet aanbieden, kunt u ervoor kiezen om compatibiliteit met eerdere versies aan te bieden.

Open cycle_server.properties met een teksteditor en zoek naar het kenmerk sslEnabledProtocols:

sslEnabledProtocols="TLSv1.2"

Wijzig het kenmerk in een door + gescheiden lijst met protocollen die u wilt ondersteunen.

sslEnabledProtocols="TLSv1.0+TLSv1.1+TLSv1.2"

Niet-versleutelde communicatie uitschakelen

Met de bovenstaande installatie kunnen niet-versleutelde (HTTP)-verbindingen worden gemaakt, maar ze worden omgeleid naar HTTPS voor beveiliging. Mogelijk wilt u niet-versleutelde toegang tot uw CycleCloud-installatie voorkomen. Als u niet-versleutelde communicatie wilt uitschakelen, opent u het bestand cycle_server.properties in een teksteditor. Zoek de eigenschap webServerEnableHttp en wijzig deze in:

# HTTP
webServerEnableHttp=false

Sla de wijzigingen op en start CycleCloud opnieuw op. HTTP-toegang tot CycleCloud wordt uitgeschakeld.