Questa pagina spiega come aggiungere certificati di autorità di certificazione (CA) personalizzati al bundle di attendibilità del sistema all'interno di Google Distributed Cloud (GDC) con air gap. Un trust bundle è una raccolta di CA attendibili che i servizi della tua organizzazione utilizzano per verificare l'identità di altri servizi. Aggiungendo le tue CA personalizzate, puoi controllare quali certificati sono considerati attendibili dalla tua organizzazione, consentendo connessioni sicure alle tue risorse interne e ad altri endpoint attendibili.
Questa pagina spiega come aggiungere CA personalizzate al bundle di attendibilità del sistema trust-store-root-ext. Quando modifichi il trust bundle trust-store-root-ext, le modifiche vengono propagate automaticamente al bundle trust-store-global-root-ext, rendendo le tue CA personalizzate disponibili in tutte le zone.
Questa pagina è rivolta ai membri del gruppo di amministratori della piattaforma (ad esempio gli amministratori IT) che devono gestire e proteggere le risorse della propria organizzazione all'interno di GDC. Per saperne di più, consulta la documentazione relativa ai segmenti di pubblico per GDC con air gap.
Prima di iniziare
Per aggiungere certificati CA personalizzati al trust bundle di sistema, devi richiedere le autorizzazioni necessarie e preparare l'ambiente.
Richiedi ruoli IAM
Per creare, leggere, aggiornare ed eliminare i secret, contatta l'amministratore dell'organizzazione IAM per richiedere il ruolo Trust Store Admin (trust-store-admin).
prepara l'ambiente
Scarica e installa l'interfaccia a riga di comando gdcloud, se non l'hai ancora fatto.
Accedi alla CLI gdcloud.
Genera un file kubeconfig
Completa i passaggi seguenti per generare il file kubeconfig per il cluster dell'infrastruttura dell'organizzazione e impostarlo come variabile KUBECONFIG da utilizzare in un secondo momento.
Visualizza tutte le zone disponibili:
gdcloud zones listPrendi nota del nome della zona che ospita la tua risorsa personalizzata.
Imposta la variabile di ambiente
ZONEsulla zona che ospita il cluster dell'infrastruttura dell'organizzazione:export ZONE="ZONE"Sostituisci
ZONEcon il nome della zona.Imposta la variabile di ambiente
ORG_INFRA_CLUSTER:export ORG_INFRA_CLUSTER="ORG_NAME-infra"Sostituisci
ORG_NAMEcon il nome della tua organizzazione, ad esempioorg-1.Genera il file kubeconfig del cluster dell'infrastruttura dell'organizzazione per la zona di destinazione e convalida le credenziali:
export KUBECONFIG=${HOME}/${ORG_INFRA_CLUSTER:?}-kubeconfig.yaml rm ${KUBECONFIG:?} gdcloud clusters get-credentials ${ORG_INFRA_CLUSTER:?} --zone ${ZONE:?} [[ $(kubectl config current-context) == *${ORG_INFRA_CLUSTER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"Il comando
rm ${KUBECONFIG:?}rimuove il file kubeconfig esistente nella home directory. Quando generi un nuovo file kubeconfig, questo sovrascrive quello esistente. Se non vuoi sovrascrivere o rimuovere il file esistente, esegui il backup in un'altra posizione sicura.
Aggiungi CA personalizzate al bundle di attendibilità del sistema
Per aggiungere CA personalizzate al bundle di attendibilità del sistema trust-store-root-ext, devi preparare la risorsa CA personalizzata e poi applicarla al cluster dell'infrastruttura dell'organizzazione.
Imposta la variabile di ambiente per il file PEM della CA personalizzata:
export CUSTOM_CA_PEM_FILE=CUSTOM_CA_PEM_FILESostituisci
CUSTOM_CA_PEM_FILEcon il percorso del file contenente i certificati CA personalizzati, codificati in formato PEM.Codifica i certificati CA utilizzando base64:
export ENCODED_CA=$(cat "${CUSTOM_CA_PEM_FILE:?}" | base64 -w 0)Crea il file YAML del secret (
custom-ca.yaml) che ha come target il bundle di attendibilità del sistematrust-store-root-ext:cat > custom-ca.yaml <<EOF apiVersion: v1 kind: Secret metadata: annotations: security.private.gdc.goog/bundles: trust-store-root-ext name: custom-ca namespace: cert-manager data: ca.crt: ${ENCODED_CA:?} EOFDi seguito è riportato un esempio di file
custom-ca.yaml:apiVersion: v1 kind: Secret metadata: annotations: security.private.gdc.goog/bundles: trust-store-root-ext name: custom-ca namespace: cert-manager data: ca.crt: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSU...LQWZRSUE9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==Applica il secret al cluster dell'infrastruttura dell'organizzazione utilizzando il comando
kubectl:kubectl apply -f custom-ca.yaml --kubeconfig ${KUBECONFIG:?}Questo passaggio rende le tue CA personalizzate disponibili per i servizi GDC aggiornando automaticamente i bundle di attendibilità
trust-store-root-extetrust-store-global-root-ext.
Verifica che le CA siano disponibili
Verifica che le CA personalizzate siano state aggiunte al bundle di attendibilità:
Scarica l'ultima versione del bundle di attendibilità
trust-store-root-extseguendo i passaggi descritti in Recupera i bundle di attendibilità GDC.Se vuoi recuperare le CA personalizzate da una zona diversa, utilizza il bundle di attendibilità
trust-store-global-root-ext.Apri il file del bundle di attendibilità scaricato e verifica che sia presente ogni certificato CA personalizzato specificato da
CUSTOM_CA_PEM_FILE.Cerca ogni certificato CA personalizzato singolarmente. L'ordine in cui vengono visualizzati può variare e non è garantito che vengano visualizzati alla fine dell'elenco.
Di seguito è riportato un esempio di
trust-store-root-ext:-----BEGIN CERTIFICATE----- MIIC8DCCAdigAwIBAgIQPLOPa... -----END CERTIFICATE----- ... other CAs ... -----BEGIN CERTIFICATE----- < Imported CA data> -----END CERTIFICATE----- ... other CAs ... -----BEGIN CERTIFICATE----- MIIDAzCCAeugAwIBAgIRAIV2... -----END CERTIFICATE-----