SSL für selbstsignierte Zertifikate aktivieren/erneuern
Ein selbstsigniertes Zertifikat wird vom Subject des Zertifikats erstellt, signiert und ausgestellt. In Big Data Service-Clustern mit Version 3.0.7 und höher können Sie mit dem Big Data Service-Zertifikatutility selbstsignierte SSL-Zertifikate für ODH-Cluster generieren.
Hinweis
SSL für Aktivierung/Verlängerung ist in Big Data Service ODH identisch. Wenn Zertifikate abgelaufen sind, muss das gesamte Set von Zertifikaten mit dem regulären SSL-Aktivierungsprozess neu generiert werden. Es wird empfohlen, eine Benachrichtigung basierend auf der Ablaufzeit des Zertifikats zu erstellen. Weitere Informationen finden Sie unter Alarm erstellen.
SSL für Aktivierung/Verlängerung ist in Big Data Service ODH identisch. Wenn Zertifikate abgelaufen sind, muss das gesamte Set von Zertifikaten mit dem regulären SSL-Aktivierungsprozess neu generiert werden. Es wird empfohlen, eine Benachrichtigung basierend auf der Ablaufzeit des Zertifikats zu erstellen. Weitere Informationen finden Sie unter Alarm erstellen.
-
Stellen Sie als Benutzer
opc
eine SSH-Verbindung zum ersten Masterknoten (mn0) des ODH-Clusters her. -
Bearbeiten Sie
/home/opc/cloud/flask-microservice/cert_util/conf/bds-certs.conf
.Beispiel:
vi /home/opc/cloud/flask-microservice/cert_util/conf/bds-certs.conf
Beispieldatei:
# Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved. # [BDS_CERT_CONFIGS] #This files defines all the SSL certificate related configurations used in BDS cluster #Whether custom certificate or not CUSTOM_CERTIFICATE=false #Recommended SSL services, Mostly all the customer facing UI services #Allowed values AMBARI,RANGER,HUE,DATASTUDIO,LIVY DEFAULT_SSL_SERVICES=AMBARI #Comma separated service names for enabling SSL, These are the additional components from ambari UI to enable/disable SSL. #Allowed values ZOOKEEPER,AMS,HDFS,YARN,MAPREDUCE,OOZIE,HBASE,SPARK,HIVE,KAFKA,FLINK,REGISTRY ADDITIONAL_SSL_SERVICES=NONE #Whether to restart all the required services after certificate deployment RESTART_REQUIRED_SERVICES=false #Certificate validity in days. Mostly used for self signed certificates CERTIFICATE_VALIDITY=180 #Bits to be used for certificate generation. Mostly used for self signed certificates CERTIFICATE_BITS=3072 #Algorithm to be used for generating self signed certificate CERTIFICATE_ALGORITHM=sha256 #Default path to store all the certificate, keys and keystore. Same path will be used for hadoop credential store CERT_PATH=/etc/security/serverKeys #Temporary certificate directory. Will be used before applying the certificate TEMP_CERT_PATH=/etc/security/serverKeys_new #Initital certificate generation path. Used only when generating self signed certificates CERT_GEN_FOLDER=/etc/security/serverKeys_cert_gen #Secure password location. This location will be used only during transaction CERT_PASS_PATH=/etc/security/certPass #Whether to take backup when doing certificate renewal. Mostly used for self signed certificates KEEP_OLD_CERTS=true #Set this flag incase utility used for older cluster. It will update the keystore path along with other properties LEGACY_CLUSTER=false #Set Keystore type KEYSTORE_TYPE=jks #This is completely owned by oracle. Leave this field unchanged ORACLE_OWNED_ROOT_CERTIFICATE_NAME=bdsOracleCA.crt ORACLE_OWNED_ROOT_CERTIFICATE_KEY_NAME=bdsOracleCA.key #Final trust bundle that contains all the trust certificates. #Including all public ca root certs, oracle owned root certs and customer specified root certs. #This will be saved in CERT_PATH. Leave this field untouched TRUST_CERTS_BUNDLE_NAME=oraclerootCA.crt #Root Certificate related details ROOT_CERT_PATH=/etc/security/serverKeys/bdsOracleCA.crt #Server certificate details SERVER_CERT_PATH="NONE" SERVER_CERT_KEY_PATH="NONE" #Support for LDAPS LDAP_URL=NONE
Hinweis
Das Root-/Ausstellerzertifikat eines selbstsignierten Zertifikats finden Sie im PfadCERT_PATH
mit dem NamenORACLE_OWNED_ROOT_CERTIFICATE_NAME in all the nodes of the cluster
. -
Aktualisieren Sie die Eigenschaft
ADDITIONAL_SSL_SERVICES
mit den Services, für die Sie SSL aktivieren möchten. Der Standardwert für diese Eigenschaft istNONE
. Die zulässigen Werte sindAMS
,HDFS
,YARN
,MAPREDUCE
,OOZIE
,HBASE
,SPARK
,ZOOKEEPER
,HIVE
,KAFKA
,FLINK
undREGISTRY
. Es wird empfohlen, SSL für alle erforderlichen Services auf einmal zu aktivieren. Verwenden Sie dazu eine durch Komma getrennte Liste der Services. -
Aktualisieren Sie LDAP_URL so, dass es auf die LDAP-Server-URL verweist (nur für sicheres LDAP anwendbar), wenn das ODH-Cluster mit LDAP/AD integriert ist.
Beispiel:
LDAP_URL=ldaps://<myldap.com:636>
Dadurch werden die erforderlichen Zertifikate automatisch in den ODH-Truststore abgerufen.
-
Aktualisieren Sie den Wert der Eigenschaft
RESTART_REQUIRED_SERVICES
intrue
, wenn dieses Utility die Services neu starten soll. Der Standardwert für diese Eigenschaft istfalse
. Wenn Sie den Standardwert beibehalten, müssen Sie alle betroffenen Services über Apache Ambari manuell neu starten, um die SSL-Aktivierung für das Cluster abzuschließen.Unabhängig vom Wert dieser Eigenschaft werden nur wenige Services wie Apache Ambari und Datastudio sofort neu gestartet, wenn Sie Zertifikate mit diesem Utility aktivieren. -
Behalten Sie den Standardwert
true
für die EigenschaftKEEP_OLD_CERTS
bei, um ein Backup der alten Zertifikate beizubehalten. Zertifikatsbackups werden unter/etc/security/serverKeys-backup-<dateofbackup>
gespeichert. -
Wenn die Clusterversion 3.0.6 oder niedriger ist, setzen Sie den Wert der Eigenschaft
LEGACY_CLUSTER
auftrue
, um die SSL-Eigenschaften im Cluster zu aktualisieren. Überspringen Sie diesen Schritt, wenn die Clusterversion 3.0.7 oder höher ist. - Speichern Sie die an der Konfigurationsdatei vorgenommenen Änderungen.
-
Führen Sie das Utility aus, um die SSL-Zertifikate zu aktivieren. Wenn Sie den Parameter
ambariPass
nicht verwenden, werden Sie aufgefordert, das Ambari-Kennwort einzugeben.sudo bds_cert_util --enable --ambariPass ambari-password
Hinweis
Wenn das Ambari-Kennwort ein Sonderzeichen enthält, setzen Sie das Kennwort in einfache Anführungszeichen.Beispiel:
sudo bds_cert_util --enable --ambariPass '<ambari-password>' Example:- ## sudo bds_cert_util --enable --ambariPass 'Welcome@879'
Hinweis
Nachdem das Zertifikat erneuert wurde, müssen Sie sicherstellen, dass die erneuerten Zertifikate im System aktualisiert werden. Beispiel: Wenn Big Data Service-Zertifikate in einem Load Balancer hinzugefügt werden, muss das neue Root-Zertifikat nach der Verlängerung in den Load Balancer aktualisiert werden. - Warten Sie, bis das Utility abgeschlossen ist.
-
Prüfen Sie die Utilitylogs unter
/home/opc/cloud/flask-microservice/logs/bds_cert_util*.log
. -
Nach erfolgreicher Ausführung des Utilitys werden alle konfigurierten Services über SSL ausgeführt. Um zu überprüfen, ob die Services für SSL aktiviert sind, melden Sie sich bei "Apache Ambari" an, und wählen Sie unter den einzelnen konfigurierten Services die Quicklinks aus.
Hinweis
Wenn der JupyterHub-Service nicht die neuesten Zertifikate verwendet, starten Sie nach der Erneuerung der SSL-Zertifikate für das Big Data Service-Cluster den JupyterHub-Service neu.- Melden Sie sich beim Knoten JupyterHub an (verwenden Sie un1 für HA-Cluster oder un0 für Nicht-HA-Cluster).
- Starten Sie den JupyterHub-Service neu:
systemctl restart jupyterhub.service
- Prüfen Sie den Status des JupyterHub-Service:
systemctl status jupyterhub.service
Dadurch wird sichergestellt, dass der JupyterHub-Service die aktualisierten SSL-Zertifikate verwendet.