Questa pagina descrive come ruotare l'autorità di certificazione radice utilizzata per la convalida dei pacchetti nell'appliance isolata di Google Distributed Cloud (GDC)
La convalida del pacchetto GDC utilizza un'autorità di certificazione (CA) radice per convalidare i certificati delle chiavi di rilascio. Per questo motivo è fondamentale ruotare periodicamente il certificato CA radice. Devi ruotare la CA radice se ti viene chiesto di farlo tramite un avviso di rilascio o il messaggio di avviso che potrebbe essere visualizzato durante l'esecuzione di un upgrade.
Prima di iniziare
Per ruotare il certificato di convalida del pacchetto, devi disporre dei ruoli di identità e accesso necessari:
- Assicurati di disporre dell'accesso in scrittura a
package-validation-root-certs ConfigMap. - Chiedi all'Amministratore sicurezza di concederti il ruolo Esegui upgrade di Debugger (
upgrade-debugger-cp).
Verifica della rotazione del certificato obbligatoria
Verifica che sia necessaria la rotazione di un certificato di convalida del pacchetto prima di eseguire l'operazione:
Imposta la variabile di ambiente
KUBECONFIG:$ KUBECONFIG=PATH_TO_KUBECONFIG_FILESostituisci
PATH_TO_KUBECONFIG_FILEcon il percorso del filekubeconfigche hai ottenuto eseguendogdcloud auth loginnel cluster di amministrazione principale.Determina se è necessario un upgrade confrontando il trust anchor attuale con l'ultimo trust anchor. I dati
ConfigMapinharbor-system/package-validation-root-certsvengono confrontati con il trust anchor locale:$ CURRENT_TRUST_ANCHOR=$(kubectl --kubeconfig=$KUBECONFIG get cm package-validation-root-certs -n harbor-system -o jsonpath='{.data.ca\.crt}') $ LATEST_TRUST_ANCHOR=$(cat /root/release/staging_root_ca_certificate.crt) $ diff <( echo "$CURRENT_TRUST_ANCHOR" ) <( echo "$LATEST_TRUST_ANCHOR" ) && echo trust anchors are same || echo trust anchors are different, upgrade required!
Eseguire la rotazione dei certificati e l'upgrade sull'appliance
Per ruotare l'oggetto ConfigMap che si trova in
harbor-system/package-validation-root-certs nel cluster di amministrazione principale, segui questi passaggi. L'operatore
dell'infrastruttura deve disporre dell'accesso in scrittura a ConfigMap.
Crea e assegna valori alle seguenti variabili:
USERNAME=USER_NAME #IO TARGET_FOLDER=/tmp/${USERNAME} OUTPUT="${TARGET_FOLDER}/package-validation-root-certs.yaml" LATEST_TRUST_ANCHOR_CA_FILE=/root/release/staging_root_ca_certificate.crt CONFIGMAP_NAME=package-validation-root-certs NAMESPACE=harbor-systemSostituisci
USER_NAMEcon il nome utente IO.Crea la cartella di destinazione che conterrà i file di output del processo di rotazione dei certificati:
mkdir -p "${TARGET_FOLDER}"Aggiorna e sostituisci il valore di
LATEST_TRUST_ANCHOR:cat <<EOF > "${OUTPUT}" apiVersion: v1 kind: ConfigMap metadata: name: ${CONFIGMAP_NAME} namespace: ${NAMESPACE} data: ca.crt: | $(sed 's/^/ /' "${LATEST_TRUST_ANCHOR_CA_FILE}") EOFApplica la nuova configurazione con
kubectl:kubectl apply -f ${OUTPUT}Assicurati che il file ca.crt appena applicato sia presente in
ConfigMap:kubectl describe configmap package-validation-root-certs -n harbor-system
In questo modo viene gestita la rotazione di un nuovo certificato in package-validation-root-cert.