Procedura di rinnovo dei certificati TLS tra nodo master e nodi satellite
Questa documentazione spiega come rinnovare i certificati TLS scaduti o in scadenza.
I certificati TLS vengono utilizzati per garantire una comunicazione sicura tra il nodo master e il nodo o i nodi satellite. La procedura richiede di rinnovare prima il certificato del nodo master, quindi quello dei nodi satellite.
Diagnosi della scadenza di un certificato
Certificate has expired
Connettersi in SSH al nodo satellite ed eseguire il comando seguente:
sudo cyberwatch logs sidekiq
Se l’output del comando contiene le informazioni seguenti, è possibile seguire la procedura per rinnovare i certificati:
Root CA found and valid, Redis certificate will be verified
[2023-10-30T14:47:12.695545 #1] ERROR -- : TLS/SSL error: certificate has expired
Root CA found and valid, MariaDB certificate will be verified
[2023-10-30T14:47:46.921936 #1] ERROR -- : TLS/SSL error: certificate has expired
Conoscere la data di scadenza del certificato root del nodo master
Connettersi in SSH al nodo master ed eseguire il comando seguente:
openssl x509 -noout -enddate -in /etc/cyberwatch/certs/cbw-root-ca-cert.pem
notAfter=Oct 1 00:00:00 2023 GMT
In questo esempio, il certificato non è più valido dopo il 1° ottobre 2023.
Rinnovare il certificato sul nodo master
Connettersi in SSH al nodo master
Salvare i certificati attuali:
sudo mv /etc/cyberwatch/certs{,.old}Creare i nuovi certificati:
Aggiungere, se necessario, le opzioni richieste dall’infrastruttura, ad esempio
--no-dbo--offline.sudo cyberwatch configure --masterRispondere no alla modifica della configurazione. Inserire l’indirizzo IP del nodo master e poi tutti i nomi di dominio utilizzati dai satelliti per raggiungere il nodo master. Verranno utilizzati come nomi alternativi (Subject Alternative Name).
Verificare la validità del nuovo certificato:
openssl x509 -noout -enddate -in /etc/cyberwatch/certs/cbw-root-ca-cert.pem notAfter=Nov 18 15:08:14 2025 GMT
Rinnovare il certificato sul nodo o sui nodi satellite
Versioni di cbw-on-premise precedenti alla 5.29: sul nodo satellite è presente un solo file /etc/cyberwatch/certs/cbw-root-ca-cert.pem. È sufficiente sostituire unicamente questo file con il nuovo certificato del nodo master (output di sudo cyberwatch show-root-cert sul master), quindi riavviare Cyberwatch.
Recuperare il certificato valido sul nodo master:
sudo cyberwatch show-root-certSul nodo satellite, scrivere l’output del comando precedente nel file
/etc/cyberwatch/certs/cbw-root-ca-cert-master.pem:sudo vim /etc/cyberwatch/certs/cbw-root-ca-cert-master.pemConcatenare i certificati del satellite e del master nel file utilizzato dall’applicazione:
cat /etc/cyberwatch/certs/cbw-root-ca-cert-satellite.pem /etc/cyberwatch/certs/cbw-root-ca-cert-master.pem | sudo tee /etc/cyberwatch/certs/cbw-root-ca-cert.pemRiavviare Cyberwatch sul nodo satellite:
sudo cyberwatch restart
Verifica del funzionamento
Per verificare che il nodo satellite sia in grado di raggiungere il nodo master con un certificato valido, controllare i log di sidekiq:
sudo cyberwatch logs sidekiq | grep -C 10 "certificate will be verified"L’output dovrebbe essere simile al seguente:
Healthcheck completed reporting a successful start Checking if Redis supports TLS Using TLS available on ... Root CA found and valid, Redis certificate will be verified Using Redis URL: rediss://... Checking if MariaDB supports TLS TLS is available for MariaDB Root CA found and valid, MariaDB certificate will be verified