In questo articolo verrà descritto come sostituire il certificato autofirmato di default di EXSI con un certificato utilizzando l’autorità di certificazione di windows.
Per generare la chiave privata e il file CSR per generare il certificato è necessario utilizzare OpenSSL, è possibile scaricare direttamente l’eseguibile oppure utilizzare GIT BASH che include questa funzionalità.
Per prima cosa creiamo un file rui.cnf modificando le parti evidenziate con i dati che meglio preferite.
[ req ] default_md = sha512 default_bits = 2048 default_keyfile = rui.key distinguished_name = req_distinguished_name encrypt_key = no prompt = no string_mask = nombstr req_extensions = v3_req [ v3_req ] basicConstraints = CA:false keyUsage = digitalSignature, keyEncipherment, dataEncipherment extendedKeyUsage = serverAuth, clientAuth subjectAltName = DNS:"esxi001.domain.local", DNS:"esxi001", IP:"192.168.0.21" [ req_distinguished_name ] countryName = IT stateOrProvinceName = TV localityName = CITY 0.organizationName = domain.local organizationalUnitName = Information Technology commonName = esxi001.domain.local
Nella richiesta andremmo a inserire sia il nome DNS sia IP della macchina, in questo modo il browser o software che utilizzano Https (es veeam) non forniranno piu errore di sicirezza.
Ora generiamo la chiave privata a 2048 bit
openssl genrsa -out rui.key 2048
Verrà generato un file rui.key nella stessa directory
Ora utilizzando il file di configurazion e la chiave appena generata generiamo la richiesta di certificazione
openssl req -new -key rui.key -out rui.csr -config rui.cnf
Ora nella stessa directory saranno presenti 3 file, il file di configurazione (rui.cnf), la chiave privata (rui.key) e il file CSR (rui.csr)
Ora è necessario che nel nostro dominio sia presente il servizio di certificazione dell’Active directory, se non presente è necessario installalo dal server manager. Inoltre andiamo ad installare anche la funzionalità web per l’emmisione dei certificati. Quest ultimo è un pannello che permette via web di generare certificati in modo semplice e interattivo.
Ora http://<fqdn or IP>/certsrv. Quindi selezionare Richiedi Certificato.
![](https://i0.wp.com/www.manuelroccon.it/wp-content/uploads/2020/03/1961-1.png?resize=739%2C266&ssl=1)
Nella pagina seguente andare in richiesta avanzata certificato per procedere.
![](https://i0.wp.com/www.manuelroccon.it/wp-content/uploads/2020/03/1961-2-1.png?resize=505%2C139&ssl=1)
Quindi aprire il file rui.crt, copiare il contenuto nella textarea
Quindi nel Certificate Template selezionare Web Server e proseguiamo.
![openssl csr certificate authority submit request base-64 encoded cmc pkcs create powercli openssl esxi root certificate microsoft ca server root subordinate.png](https://i0.wp.com/www.manuelroccon.it/wp-content/uploads/2020/03/1961-3.png?resize=896%2C352&ssl=1)
A questo punto selezoniamo Base 64 encoded e scarichiamo il certificato. A questo punto avremmo un file con estestensione .crt.
![](https://i0.wp.com/www.manuelroccon.it/wp-content/uploads/2020/03/1961-4.png?resize=411%2C135&ssl=1)
Se la vostra infrastruttura non è già configurata per utilizzare il certificato RootCa, è consigliabile dopo la configurazione del servizio sul server, distribuire il certificato tramite i criteri di gruppo a tutti i dispositivi del dominio.
A questo punto dobbiamo caricare la chiave privata e il certificato nel nostro server ESXI, prima di tutto di eseguire un backup dei 2 file e di attivare ssh in quanto se avete sbagliato qualcosa nel fare il certificato potreste non riuscire piu a connettervi via web.
Ora colleghiamoci al nostro server via SFTP, possiamo usare WinSCP a tal scopo, e carichiamo rui.crt and rui.key in questa directory /etc/vmware/ssl.
![esxi powershell rui.crt rui.key upload replace vmware vsphere esxi certificate vmware ssl generate certificate openssl microsoft root certificate authority rootca subordinateca microsoft ca server.png](https://i0.wp.com/www.manuelroccon.it/wp-content/uploads/2020/03/1961-6-1.png?resize=692%2C324&ssl=1)
A questo punto riavviamo i servizi trmite questo comando
services.sh restart &tail -f /var/log/jumpstart-stdout.log.
A questo punto riaviamo il browser, il certificato verrà mostrato come attendibile, controllando il percorso di certificazione, dovrebbe mostrare il certificato della catena con il certificato root-ca .