Le TKG Extension richiedono certificati TLS. È possibile installare cert-manager per soddisfare questo prerequisito oppure è possibile utilizzare certificati autofirmati propri. Sono supportati anche i certificati provenienti da un'autorità di certificazione.
Informazioni sull'utilizzo dei propri certificati TLS con le TKG Extension
L'installazione di cert-manager è documentata come parte del processo di distribuzione per ogni TKG Extension. In alternativa, è possibile utilizzare i propri certificati TLS.
Nota: Questa attività presuppone che si stia utilizzando un host Linux in cui è installato OpenSSL.
Generazione di un certificato di autorità di certificazione
In un ambiente di produzione, è necessario ottenere un certificato da un'autorità di certificazione (CA). In un ambiente di sviluppo o test, è possibile generare il proprio certificato autofirmato. Per generare un certificato CA, attenersi alle istruzioni riportate di seguito.
- Generare una chiave privata del certificato CA.
openssl genrsa -out ca.key 4096
- Generare il certificato CA.
Utilizzare il comando seguente come modello. Aggiornare i valori nell'opzione
-subj
in base all'ambiente in uso. Se si utilizza un nome di dominio completo per stabilire la connessione all'host delle TKG Extension, è necessario specificare questo nome di dominio completo come attributo del nome comune (CN).openssl req -x509 -new -nodes -sha512 -days 3650 \ -subj "/C=US/ST=PA/L=PA/O=example/OU=Personal/CN=tkg-extensions.system.tanzu" \ -key ca.key \ -out ca.crt
Generazione di un certificato server
Il certificato di solito contiene un file .crt e un file .key, ad esempio
tls.crt
e
tls.key
.
- Generare una chiave privata.
openssl genrsa -out tls.key 4096
- Generare una richiesta di firma del certificato (CSR).
Utilizzare il comando seguente come modello. Aggiornare i valori nell'opzione
-subj
in base all'ambiente in uso. Se si utilizza un nome di dominio completo per stabilire la connessione all'host delle TKG Extension, è necessario specificare questo nome di dominio completo come attributo del nome comune (CN) e utilizzarlo nei nomi dei file della chiave e della CSR.openssl req -sha512 -new \ -subj "/C=US/ST=PA/L=PA/O=example/OU=Personal/CN=tkg-extensions.system.tanzu" \ -key tls.key \ -out tls.csr
- Generare un file con estensione x509 v3.
Utilizzare il comando seguente come modello. Creare questo file in modo da poter generare un certificato per l'host delle TKG Extension che soddisfi i requisiti di estensione x509 v3 e SAN (Subject Alternative Name).
cat > v3.ext <<-EOF authorityKeyIdentifier=keyid,issuer basicConstraints=CA:FALSE keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment extendedKeyUsage = serverAuth subjectAltName = @alt_names [alt_names] DNS.1=tkg-extensions.system.tanzu EOF
- Utilizzare il file di estensione x509 v3 per generare un certificato per l'host delle TKG Extension.
openssl x509 -req -sha512 -days 3650 \ -extfile v3.ext \ -CA ca.crt -CAkey ca.key -CAcreateserial \ -in tls.csr \ -out tls.crt
- Copiare il contenuto dei file
ca.crt
,tls.crt
etls.key
nel fileTKG-EXTENSION-data-values.yaml
utilizzando il formato seguente.ingress: tlsCertificate: tls.crt: | -----BEGIN ...
- Procedere con la distribuzione di una TKG Extension supportata come documentato.