Rotazione dei certificati CA nel tuo cluster
Revocare i certificati CA (Certificate Authority) esistenti nel cluster ed emettere nuovi certificati CA.
Si consiglia di ruotare regolarmente i certificati CA per mantenere la sicurezza della configurazione. È buona norma ruotare i certificati CA ogni volta che si aggiornano i nodi worker, poiché la fase più lunga della rotazione dei certificati prevede la ricarica o la sostituzione dei nodi worker.
Per impostazione predefinita, i certificati CA (Certificate Authority) vengono gestiti per proteggere l'accesso a diversi componenti del tuo cluster, come il server API master. Quando utilizzi il tuo cluster, potresti voler revocare i certificati emessi dalla CA esistente. Ad esempio, gli amministratori del tuo team potrebbero utilizzare una CSR (certificate signing request) per generare manualmente i certificati firmati dalla CA del cluster per i nodi di lavoro nel cluster. Se un amministratore lascia la tua organizzazione, puoi assicurarti che non abbia più accesso di amministratore al tuo cluster creando una nuova CA e i certificati per il tuo cluster e rimuovendo la vecchia CA e i certificati.
-
Crea un'autorità di certificazione (CA) per il tuo cluster. I certificati firmati da questa nuova CA vengono emessi per i componenti master del cluster e il server API viene aggiornato.
ibmcloud ks cluster ca create -c CLUSTER -
Assicurati che l'integrità master del tuo cluster sia normale, che l'aggiornamento del server API sia completo e che tutti gli aggiornamenti master siano completi. Potrebbero essere necessari alcuni minuti prima che il server API principale si aggiorni.
ibmcloud ks cluster get --cluster CLUSTER -
Verificare lo stato della creazione della CA. Nell'output, prendere nota della data / ora nel campo Azione completata. Per una descrizione di ogni stato, vedere Stati del certificato e timestamp.
ibmcloud ks cluster ca status -c CLUSTEROutput di esempio
Status: CA certificate created. Reload your worker nodes then begin the CA certificate rotation. Action Started: 2024-08-30T16:17:56+0000 Action Completed: 2024-08-30T16:21:13+0000 -
Scarica i certificati e i dati di configurazione di Kubernetes aggiornati nel tuo file
kubeconfigdel cluster.ibmcloud ks cluster config -c CLUSTER --admin --network -
Verificate che i timestamp dei nuovi certificati siano successivi al timestamp trovato al punto 3. Per controllare la data sui tuoi certificati, puoi utilizzare uno strumento come KeyCDN.
-
Aggiornare tutti i tool o i webhook che si basano sui certificati precedenti. Ad esempio, potrebbe essere necessario aggiornare uno o più dei seguenti elementi.
- Se si utilizza il certificato del file
kubeconfigdel cluster nel proprio servizio, come Jenkins. - Se si utilizza
calicoctlper gestire i criteri di rete Calico, aggiornare i servizi e l'automazione per utilizzare i nuovi certificati. - Se si inoltrano i registri di audit a IBM Cloud Logs, aggiornare i certificati per il webhook di audit principale.
- Se si inoltrano i log di audit sulla rete privata, aggiornare i certificati per il webhook di audit principale.
- Se si utilizza il certificato del file
-
Ricarica i tuoi nodi di lavoro classici o sostituisci i tuoi nodi di lavoro VPC per raccogliere i certificati firmati dalla nuova CA.
-
Ruotare i vecchi certificati con i nuovi certificati. I vecchi certificati CA nel tuo cluster vengono rimossi.
ibmcloud ks cluster ca rotate -c CLUSTER -
Controllare lo stato della rotazione del certificato CA.
ibmcloud ks cluster ca status -c CLUSTEROutput di esempio
Status: CA certificate rotation complete. Action Started: 2024-08-30T16:37:56+0000 Action Completed: 2024-08-30T16:41:13+0000 -
Poiché alcuni client potrebbero non consentire certificati CA scaduti nel bundle di certificati, scaricare la configurazione aggiornata di Kubernetes e i certificati nel file
kubeconfigdel cluster.ibmcloud ks cluster config -c CLUSTER --admin --network -
Aggiornare gli strumenti che si basano sui precedenti certificati. Se utilizzi il certificato dal file
kubeconfigdel tuo cluster nel tuo proprio servizio come Travis o Jenkins, o se utilizzicalicoctlper gestire le politiche di rete Calico, aggiorna i tuoi servizi e l'automazione per utilizzare i nuovi certificati.
Impatto della rotazione sugli aggiornamenti del cluster
Gli aggiornamenti al master del cluster sono bloccati se è in corso una rotazione del certificato CA. Completare la rotazione prima di aggiornare il master del cluster. Per verificare lo stato di rotazione di
un certificato CA, eseguire ibmcloud ks cluster ca status -c CLUSTER.
Stati del certificato e timestamp
Per verificare lo stato della CA, eseguire ibmcloud ks cluster ca status -c CLUSTER.
I timestamp nell'output indicano l'ora di inizio e di completamento dell'azione che ha avviato lo stato corrente. La tabella seguente contiene le descrizioni di ogni possibile stato.
| Stato | Descrizione | Impatto sull'aggiornamento del cluster |
|---|---|---|
CA certificate creation in progress. |
I nuovi certificati vengono creati per il processo di rotazione e inseriti nella catena di certificati. | Aggiornamento cluster bloccato |
CA certificate created and awaiting rotation. Reload your worker nodes then begin CA certificate rotation. |
Sono stati creati nuovi certificati e inseriti nella catena di certificati. | Aggiornamento cluster bloccato |
CA certificate rotation in progress. |
La rotazione del certificato è in corso. I vecchi certificati vengono rimossi dalla catena di certificati. | Aggiornamento cluster bloccato |
CA certificate rotation complete. |
I vecchi certificati sono stati rimossi dalla catena di certificati. | L'aggiornamento del cluster non è bloccato |
| Stato vuoto | La rotazione di un certificato non è mai stata avviata o completata. | Aggiornamento cluster non bloccato |
Domande frequenti sulla rotazione dei certificati
- IBM. esegue la rotazione automatica delle CA per i cluster?
- No, IBM non esegue rotazioni automatiche delle CA. Gli utenti sono responsabili dell'esecuzione del processo di rotazione CA.
- Quando è necessario sostituire i certificati CA?
- I certificati CA devono essere ruotati quando è necessario revocare l'accesso esistente al cluster. In particolare, se un amministratore di cluster non dovesse più avere accesso al cluster, poiché potrebbe aver generato certificati firmati dall'attuale CA per accedere al cluster.
- IBM e estende automaticamente la scadenza dei certificati CA?
- Sì, i nuovi certificati CA vengono generati utilizzando la chiave privata esistente. Ciò consente ai certificati di avere una nuova data di scadenza, pur consentendo la convalida dei certificati intermedi e finali esistenti.
- Lo stato della CA del mio cluster è "
CA certificate created"; quali azioni sono previste in questo caso? - La creazione di nuovi certificati CA è il primo passo della rotazione. L'aspettativa è che una volta avviato il processo di rotazione del CA, questo venga completato seguendo tutte le fasi del processo. Ciò garantisce che i certificati intermedi e finali generati con la CA precedente siano invalidati.
- Lo stato CA del mio cluster mostra
Action StartedeAction Completedtimestamp risalenti a diversi anni fa. Quali azioni sono previste in questo caso? - I timestamp indicano l'ora di inizio e di completamento dell'azione che ha avviato lo stato corrente della CA. L'azione da intraprendere dipende dallo stato di rotazione. Ad esempio, se lo stato della CA è
CA certificate created and awaiting rotation. Reload your worker nodes then begin CA certificate rotation, la creazione del certificato è stata avviata e completata all'ora indicata nel timestamp, ma la rotazione completa non è stata completata. - L'esecuzione della rotazione CA comporta un periodo di validità più breve rispetto al certificato attuale?
- Sì, è possibile che l'esecuzione di una rotazione comporti una durata di validità del nuovo certificato inferiore a quella del certificato precedente. Ciò è dovuto a una riduzione della durata di validità predefinita del certificato.