SSL-Schlüssel für den Verbundcontroller generieren
Sie können den Befehl genKey des Verbunddienstprogramms verwenden, um einen Keystore im JKS-Format (Java™ Keystore) zu generieren. Der Keystore enthält ein persönliches Zertifikat, das die SSL-Kommunikation mit dem Verbundcontroller ermöglicht.
Vorbereitende Schritte
Erstellen Sie einen Verbundcontroller. Weitere Informationen hierzu finden Sie unter Liberty-Verbund konfigurieren.
Informationen zu diesem Vorgang
Ferne JMX-Verbindungen zu einem Verbundcontroller verwenden SSL und erfordern geeignete SSL-Schlüssel. Der Befehl genKey des Verbunddienstprogramms generiert einen Keystore mit einem persönlichen Zertifikat, das der Verbundcontroller anerkennt. Der generierte Keystore enthält auch ein öffentliches Unterzeichnerzertifikat und kann somit als Truststore fungieren.
Eine Java Virtual Machine (JVM), z. B. ein Verbundmember-Server oder ein Nicht-Liberty-Server, benötigt für das Herstellen einer Verbindung zu einem Verbundcontroller einen Keystore, der einen Schlüssel enthält, den der Verbundcontroller anerkennt. Mit dem Befehl genKey wird ein solcher Keystore generiert. Wenn die JVM den Keystore hat, kann sie eine Verbindung zum Verbundcontroller herstellen und der Verbundcontroller kann seinen Schlüssel zurückgeben. Die Rückgabe des Schlüssels des Verbundcontrollers an die JVM wird als SSL-Handshake bezeichnet.
Damit die JVM den Verbundcontrollerschlüssel dem JVM-Truststore hinzufügt, muss die Option --autoAcceptCertificates verwendet werden. Wenn die Option --autoAcceptCertificates nicht verwendet wird, wird der Benutzer aufgefordert, dem Truststore den Schlüssel hinzuzufügen.
Vorgehensweise
wlp/bin/collective genKey [--host=Host_des_Verbundcontrollers --password=Kennwort_des_Verbundcontrolleradministrators --port=HTTPS-Port_des_Verbundcontrollers --user=ID_des_Verbundcontrolleradministrators --keystorePassword=generiertes_Keystore-Kennwort --autoAcceptCertificates]
Wenn Sie die Anzahl der erforderlichen Optionen verringern möchten, verwenden Sie die Option --controller anstelle der Optionen --user, --password,
--host und --port.
wlp/bin/collective genKey [--controller=collectiveControllerAdminUserID:collectiveControllerAdminUserPassword@collectiveControllerHost:collectiveControllerHTTPSPort --keystorePassword=generatedKeystorePassword --autoAcceptCertificates]
Für einen einen Verbundcontroller auf dem Host machineA, der den Port 1090 verwendet und dessen Administrator Admin1 mit dem Kennwort Admin1pwd ist, müssten Sie beispielsweise den folgenden Befehl ausführen, um einen Keystore zu generieren und das Keystore-Kennwort auf kspwd zu setzen:
collective genKey --host=machineA --password=Admin1pwd --port=1090 --user=Admin1 --keystorePassword=kspwd --autoAcceptCertificates
Wenn Sie die Anzahl der erforderlichen Optionen verringern möchten, verwenden Sie die Option --controller anstelle der Optionen --user, --password,
--host und --port.
collective genKey --controller=Admin1:Admin1pwd@machineA:1090 --keystorePassword=kspwd --autoAcceptCertificates
In diesem Beispiel sind die erforderlichen Einstellungen für den Befehl genKey enthalten:
- --host=Host_des_Verbundcontrollers
- Name des Hosts für den Zielverbundcontroller
- --password=Administratorkennwort_für_Verbundcontroller
- Kennwort des Benutzers mit Verwaltungsaufgaben für den Zielverbundcontroller. Wenn kein Kennwort definiert wird, werden Sie aufgefordert, das Kennwort für den Benutzer mit Verwaltungsaufgaben, der über die Einstellung --user definiert ist, anzugeben.
- --port=HTTPS-Port_des_Verbundcontrollers
- Nummer des HTTPS-Ports für den Zielverbundcontroller
- --user=Administrator-ID_für_Verbundcontroller
- Benutzer mit Verwaltungsaufgaben für den Zielverbundcontroller
- --keystorePassword=generiertes_Keystore-Kennwort
- Kennwort für den generierten Keystore. Bei Angabe ohne Wert werden Sie zur Eingabe eines Kennworts aufgefordert.
Der Befehl genKey kann auch mit optionalen Einstellungen verwendet werden:
- --autoAcceptCertificates
- SSL-Zertifikate werden mit diesem Befehl automatisch anerkannt.
- --certificateSubject=DN
- Definierter Name (DN) des generierten SSL-Zertifikats.
Der Standard-DN ist:
CN=localhost,OU=client,O=ibm,C=usCN=localhost,OU=client,O=ibm,C=usCN=localhost,OU=client,O=ibm,C=usCN=localhost,OU=client,O=ibm,C=us
- --certificateValidity=Anzahl_Tage
- Gültigkeitsdauer des generierten SSL-Zertifikats in Tagen. Der Standardgültigkeitszeitraum ist 1825 Tage oder fünf Jahre. Der Mindestgültigkeitszeitraum liegt bei 365 Tagen.
- --keystoreFile=Dateipfad
- Datei, in die der Keystore geschrieben wird. Standardmäßig wird die Datei key.jks im aktuellen Verzeichnis verwendet.
- --key=Schlüssel
- Für die Verschlüsselung (aes) zu verwendender Schlüssel. Das Produkt wandelt die angegebene Schlüsselzeichenfolge in einen Hashwert um, um einen Chiffrierschlüssel für die Ver- und Entschlüsselung des Kennworts zu erzeugen. Definieren Sie eine Variable wlp.password.encryption.key, deren Wert der Schlüssel ist, um den Schlüssel an den Server zu übergeben. Wenn Sie diese Option nicht angeben, stellt das Produkt einen Standardschlüssel bereit.