Verwenden Sie die certs-Befehle des APICUP-Installationsprogramms, um vorhandene Zertifikate
zu ersetzen.
Informationen zu diesem Vorgang
Wichtig:
- Die Anpassung von öffentlichen Zertifikaten und öffentlichen von Benutzern verwendeten Zertifikaten wird empfohlen. Von der Anpassung von internen Zertifikaten wird stark abgeraten.
- Eine Liste mit öffentlichen, öffentlichen von Benutzern verwendeten und internen Zertifikaten finden Sie unter Zertifikatsmanagement: Bitte zuerst lesen. Weitere Informationen zu den einzelnen Zertifikaten finden Sie unter Zertifikatsreferenz.
Das APICUP-Installationsprogramm kann verwendet werden, um nach der Installation Zertifikate für jedes Subsystem zu aktualisieren.
- Anforderungen für angepasste Zertifikate:
-
- Extended Key Usage (EKU), entweder serverAuth oder clientAuth, je nach Zertifikatstyp. Zertifikate vom Typ
Server müssen über eine EKU mit serverAuth verfügen. Zertifikate vom Typ Client müssen über
eine EKU mit clientAuth verfügen.
- SAN (Subject Alternative Name) für die erforderlichen Hosts.
- Alle angepassten allgemeinen Zertifikate, die verwendet werden, müssen vor dem Festlegen von angepassten Zertifikaten für ein
Subsystem festgelegt werden.
Lesen Sie den Abschnitt
Zertifikatsreferenz, um die Liste der allgemeinen Zertifikate
anzuzeigen und um festzustellen, ob EKU für ein Zertifikat benötigt wird, und welche Art von EKU (serverAuth oder clientAuth)
verwendet werden soll.
- Zertifikate und identische Endpunkte:
-
Das Managementsubsystem
verfügt über vier öffentliche Endpunkte: api-manager-ui, cloud-admin-ui, platform-api und
consumer-api. Für jeden Endpunkt können unterschiedliche TLS-Zertifikate festgelegt werden. Wenn jedoch zwei
Endpunkte identisch sind, ist nur ein TLS-Zertifikat wirksam. Wenn 2 oder mehr Endpunkte
auf denselben Host gesetzt sind, sollten die den Endpunkten zugeordneten geheimen
Schlüssel identisch sein oder dieselben Zertifikatsdateien enthalten.
Vorgehensweise
- Generieren Sie das angepasste Zertifikat mit dem entsprechenden EKU und SAN. Sie müssen den privaten Schlüssel, das
öffentliche Zertifikat und die CA-Zertifikate in einem nicht kennwortgeschützten PEM-Format für das angepasste Zertifikat
anfordern. Im Folgenden ist ein Beispiel dargestellt, wie ein Zertifikat (platform-api-example) mit EKU serverAuth und SAN unter
Verwendung von openssl generiert wird:
openssl x509 -req -days 360 -in platform-api-example.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -out platform-api-cert -sha256
-extfile <(cat /etc/ssl/openssl.cnf <(printf "\n[SAN]\nsubjectAltName=DNS:fqdn.myserver.com\nextendedKeyUsage=serverAuth"))
-extensions SAN
Dabei gilt Folgendes:
DNS:fqdn.myserver.com ist der vollständig qualifizierte Domänenname des Endpunkts, für den das Zertifikat
gilt. Dies stimmt mit den Endpunkten überein, die im APICUP-Installationsprogramm eingegeben wurden. Siehe
Management-Subsystem in einer Kubernetes-Umgebung installieren.
platform-api-example.csr ist der Dateiname für die Zertifikatssignieranforderung.
Im Folgenden ist ein Beispiel dargestellt, wie ein Zertifikat (portal-client) mit EKU clientAuth und SAN unter Verwendung
von openssl generiert wird:
openssl x509 -req -days 360 -in portal-client-example.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -out portal-client-cert
-sha256 -extfile <(cat /etc/ssl/openssl.cnf <(printf "\n[SAN]\nkeyUsage=critical, digitalSignature,keyEncipherment\nextendedKeyUsage = clientAuth\nbasicConstraints=critical,
CA:FALSE\nsubjectKeyIdentifier=hash\n")) -extensions SAN
- Nachdem das Zertifikat erstellt wurde, legen Sie das Zertifikat fest, indem Sie den folgenden Befehl eingeben:
apicup certs set SUBSYS CERT_NAME [CERT_FILE KEY_FILE CA_FILE]
Sie finden Definitionen für Befehle an der folgenden Position: Befehlsreferenz
Wenn das Zertifikat von einer Zwischenzertifizierungsstelle signiert wird, muss das Argument CA_File auf eine Datei verweisen, in der die temporäre Zertifizierungsstelle (CA) gefolgt von der Stammzertifizierungsstelle (CA) in dieser Reihenfolge verkettet sind.
Wenn das Zertifikat mit EKU serverAuth generiert wurde, muss es einem Serverzertifikat zugeordnet werden. Wenn das Zertifikat
mit EKU clientAuth generiert wurde, muss es einem Clientzertifikat zugeordnet werden.
- Installieren Sie das Subsystem mit dem neuen Zertifikat mit dem Befehl
apicup subsys install SUBSYS. Alle
fehlenden Zertifikate werden generiert. Die Installation wird nicht fortgesetzt, wenn
Prüfungsfehler in den Zertifikaten auftreten.
- Wiederholen Sie den Vorgang für andere Subsysteme, für die neue Zertifikate erforderlich sind.