320.06.70.037 [email protected]
Seleziona una pagina

Alert Certificato su vCenter 6.7: STS Signing Certificates are about to expire

da | Feb 13, 2024 | Virtualizzazione, VmWare | 0 commenti

Security Token Service (servizio token di sicurezza, STS) di vCenter Server è un servizio Web che genera, convalida e rinnova i token di sicurezza.

In qualità di emittente di token, STS utilizza una chiave privata per firmare i token e pubblica i certificati pubblici affinché i servizi verifichino la firma del token. vCenter Server gestisce i certificati di firma STS e li archivia in VMware Directory Service (vmdir).

I token possono avere una durata estesa e, nella loro cronologia possono essere stati firmati da qualsiasi chiave multiple. In questo tutorial mostrerò vari metodi per verificare la valdità dei certificati e le procedure da seguire per il rinnovo.

CHECK DEI CERTIFICATI TRAMITE VSPHERE WEB GUI

Di recente mi è capitato dopo essermi collegato al vSphere Client di imbattermi in un errore relativo ad uin certificato.

Nell’immagine sovrastante l’errore che compare: STS Signing Certificates are about to expire

Dal vSphere Client cliccare su Menu quindi Administration

Nella sezione Certificates selezionare l’opzione Certificate Management

Inserire l’IP o l’FDQN del Server vCenter quindi Username e Password e cliccare su Login and Manage Certificates

Dovremmo visualizzare tutti i certificati presenti con le relative scadenze

CHECK DEI CERTIFICATI TRAMITE SCRIPT

Il check dei certificati è possibile farlo tramite uno script chiamato checksts.py che potete scaricare al fondo di questo articolo.

Prima di tutto dobbiamo copiare lo script all’interno dell’appliance VCSA L’ Appliance Shell predefinita non può essere il partner remoto di WinSCP.

È necessario abilitare la shell Bash sull’appliance, come segue: Avvia una connessione SSH a vCenter Server Appliance.

Fornire il nome utente e la password dell’utente root quando richiesto. Eseguire questo comando per abilitare la shell BASH, se si utilizza il vCenter Server 6.0


Quindi abilitare la shell con il comando:


Nella shell Bash, eseguire questo comando per modificare la shell predefinita in Bash:


Dopo aver eseguito i comandi sopraelencati collegarsi al server VCSA con il WinSCP per copiare lo script. per comodità io copierò nella /tmp Dalla console SSH posizionarsi nella cartella dove abbiamo copiato lo script con il comando:


Quindi eseguire il comando:


Dovremmo visualizzare una schermata come quella sovrastante con la lista dei certificati attivi e relativa scadenza e la lista dei ceritifcati scaduti

NOTA BENE: solo a partire dal vCenter 7 potremo visualizzare nella vSphere UI la scadenza del certificato STS. Nelle versioni precedenti del vCenter è possibile visualizzare il Certificato Leaf solo da riga di comando.

RIGENERARE I CERTIFICATI USANDO SELF-SIGNED IN VMCA

Come è possibile notare dall’immagine precedente non è presente il certificato STS Questo problema può presentarsi quando si effettua un upgrade del vCenter (nel mio caso sono passato dalla versione 6.5 alla versione 6.7) Collegarsi in SSH al vCenter Server quindi eseguire il seguente comando:


Dovremmo visualizzare il seguente output


A questo punto utilizzare il Certificate Manager con il comando:


Dovremmo visualizzare la schermata sovsrastante con tutte le opzioni

Selezionare l’opzione 4 (Regenerate a new VMCA Root Certificate and replace all certificates) quindi premere INVIO

Alla domanda:


Premere Y quindi INVIO

Alla domanda:


Inserire l’utente utilizzato per accedere al vCenter quindi premere INVIO Quindi inserire la password dell’utente e premere INVIO

Se è la prima volta che i certificati VMCA vengono rigenerati verrà chiesto di configurare certool.cfg. Nelle attività successive ti verrà offerto di riutilizzare questi valori.

ATTENZIONE: consiglio di lasciare tutto di Default a meno che non si intende inserire dei paramentri personalizzati

Come potete notare dall’immagine sovrastante ho modificato solo l’indirizzo mail, l’Hostname del vCenter e il Name inserirendo l’FDQN del server vCenter

Alla domanda:


Premere Y quindi INVIO A questo partirà al rigenereazione di tutti i certificare del nostro vCenter

Attendere qualche minuto fino al termine delle ganerazione di tutti i certificati. Se è andato tutto a buon fine dovremmo vedere un immagine come quella sovrastante.

RIGENERARE IL CERTIFICATO STS TRAMITE SCRIPT

Utilizzare questo script quando certificato Security Token Service (STS) è scaduto o sta per scadere.
Ciò fa sì che i servizi interni e gli utenti della soluzione non siano in grado di acquisire token validi e di conseguenza non funzionano come previsto.

Questo si può verificare nei seguenti scenari:

Nuova installazione di PSC/vCenter Server 6.5 a partire da U2 o versioni successive (solo 6.5).
Nuova installazione di PSC/vCenter Server 6.5 U2 o qualsiasi versione successiva 6.5 e aggiornamento a una versione successiva incluse 6.7 e 7.0.
Il certificato di firma STS è stato sostituito utilizzando certool post-installazione di PSC o vCenter Server.
Il certificato di firma STS è stato sostituito con un certificato personalizzato (firmato CA interno/esterno).

ATTENZIONE: Questo script interagisce con il database di VMDIR. Fare uno Snapshot della VM del server vCenter prima di procedere.

Prima di tutto verificare la scadenza del certificato STS tramite script.

Collegarsi alla console SSH e posizionarsi nella cartella dove abbiamo copiato lo script checksts.py con il comando:


Quindi eseguire il comando:


Dovremmo visualizzare una schermata come quella sovrastante con la lista dei certificati attivi e relativa scadenza e la lista dei ceritifcati scaduti.

Come si può notare il Certificato Leaf scadrà tra 71 Giorni invece il Certificato Root scadrà tra 8 anni


Come è possibile vedere prima della rigenerazione la scadenza del Certificato Leaf è tra 71 Giorni

NOTA BENE: solo a partire dal vCenter 7 potremo visualizzare nella vSphere UI la scadenza del certificato STS. Nelle versioni precedenti del vCenter è possibile visualizzare il Certificato Leaf solo da riga di comando.

Scaricare lo script fixsts.sh allegato al fondo di questo articolo e caricalo sul vCenter Server con WINSCP nella cartella /tmp.

Se la connessione per caricare su vCenter da parte del client SCP viene rifiutata, da una sessione SSH su vCenter eseguire il comando:


Quindi connettersi vCenter con una sessione SSH e spostarsi sulla directory /tmp con il comando:


Rendere eseguibile il file con il comando:


Eseguire lo script:


Ad un certo punto ci verrà richiesto di inserire la password dell’utente administrator per poter procedere.

Se è tutto corretto dovremmo vedere una schermata come quella sovrastante Per rendere effettive le modifiche

Riavviare i servizi sul vCenter con il seguente comando:


A questo punto verificare che il Certificato Leaf sia aggiornato esegundo lo script


 

Dovremmo visualizzare una schermata come quella sovrastante con la lista dei certificati attivi e relativa scadenza e la lista dei ceritifcati scaduti.

Come si può notare il Certificato Leaf scadrà tra 2 Anni invece il Certificato Root scadrà tra 10 anni.

Quindi il rinnovo è avvenuto con successo.

GENERARE UN NUOVO CERTIFICATO DI FIRMA STS (FACOLTATIVO)

Creare una directory di primo livello per conservare il nuovo certificato e verificare il percorso della directory coni seguenti comandi:


Se è OK dovremmo vedere il seguente output:


Copiare il file certool.cfg nella nuova directory con il comando:


Aprire la copia del file certool.cfg e modificalo per utilizzare l’indirizzo IP e il nome host del Platform Services Controller locale. Il paese è obbligatorio e deve essere composto da due caratteri, come mostrato nell’esempio seguente.


Modificare tutti i parametri a piacimento quindi salvare e chiudere il file di configurazione. Procedere con la generazione della chiave con il comando:


Se è andato tutto a buon fine dovremmo vedere il seguente output:


Generare il certificato con il comando:


Se è andato tutto a buon fine dovremmo vedere il seguente output:


Convertire il certificato nel formato PK12 con il comando:


NOTA BENE: inserire al posto di PASSWORD una password valida Aggiungere il certificato all’archivio chiavi Java (JKS) con i seguenti comandi:


NOTA BENE: inserire al posto di PASSWORD una password valida Se è andato tutto a buon fine dovremmo vedere il seguente output:


Quindi eseguire il comando:


Dovremmo vedere il seguente output:


Scrivere Yes e premere INVIO Se tutto è andato a buon fine dovremmo vedere il seguente output:


A questo punto riavviare il server vCenter per applicare le impostazioni oppure rivviare i servizi del Platofrm Services Controller con i comandi di seguito:


 

Download “checksts.zip”

checksts.zip – Scaricato 105 volte – 2,59 KB

 

Download “fixsts.zip”

fixsts.zip – Scaricato 98 volte – 2,85 KB
Raffaele Chiatto

Scritto da Raffaele Chiatto

Sono Raffaele Chiatto, un appassionato di informatica a 360°…
Mi sono avvicinato al mondo dell’informatica nel lontano 1996 con Windows 95 e da allora non ho più smesso di dedicarmi allo studio ed approfondimento di questo settore.
Laureato in Ingegneria Informatica nel 2009, lavoro nel campo dell’IT dal lontano 2001.

Link – Friends

Infrastrutture IT

English School

Act for Change

Graphic and Web solution

0 commenti

Invia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Translate »