Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Proteggi Kubernetes con CA privata AWS
I contenitori e le applicazioni Kubernetes utilizzano certificati digitali per fornire autenticazione e crittografia sicure tramite TLS. Una soluzione ampiamente adottata per la gestione del ciclo di vita dei certificati TLS in Kubernetes è cert-manager, un componente aggiuntivo di Kubernetes che richiede i certificati
CA privata AWS fornisce un plug-in open source per cert-manager, per gli utenti di cert-manager che desiderano configurare una CA senza archiviare chiavi private nel cluster. aws-privateca-issuer
Il diagramma seguente mostra alcune delle opzioni disponibili per l'utilizzo di TLS in un cluster Amazon EKS. Questo cluster di esempio, contenente varie risorse, si trova dietro un sistema di bilanciamento del carico. I numeri identificano i possibili endpoint per le comunicazioni protette da TLS, tra cui il sistema di bilanciamento del carico esterno, il controller di ingresso, un singolo pod all'interno di un servizio e un paio di pod che comunicano in modo sicuro tra loro.

-
Interruzione presso il sistema di bilanciamento del carico.
Elastic Load Balancing (ELB) è un servizio AWS Certificate Manager integrato, il che significa che puoi fornire ad ACM una CA privata, firmare un certificato con essa e installarlo utilizzando la console ELB. Questa soluzione fornisce comunicazioni crittografate tra un client remoto e il sistema di bilanciamento del carico. I dati vengono passati non crittografati al cluster EKS. In alternativa, è possibile fornire un certificato privato a un sistema diverso dal sistema di AWS bilanciamento del carico per terminare TLS.
-
Terminazione presso il controller di ingresso Kubernetes.
Il controller di ingresso risiede all'interno del cluster EKS come sistema di bilanciamento del carico e router nativi. Se hai installato sia cert-manager che e hai fornito al cluster una CA privata aws-privateca-issuer, Kubernetes può installare un certificato TLS firmato sul controller, consentendogli di fungere da endpoint del cluster per le comunicazioni esterne. Le comunicazioni tra il load balancer e il controller di ingresso sono crittografate e, dopo l'ingresso, i dati passano non crittografati alle risorse del cluster.
-
Terminazione presso un pod.
Ogni pod è un gruppo di uno o più contenitori che condividono risorse di archiviazione e di rete. Se hai installato sia cert-manager che e hai fornito al cluster una CA privata aws-privateca-issuer, Kubernetes può installare certificati TLS firmati sui pod, se necessario. Per impostazione predefinita, una connessione TLS che termina su un pod non è disponibile per gli altri pod del cluster.
-
Comunicazioni sicure tra i pod.
Puoi anche fornire a più pod certificati che consentano loro di comunicare tra loro. Gli scenari possibili sono i seguenti:
-
Fornitura con certificati autofirmati generati da Kubernetes. Ciò protegge le comunicazioni tra i pod, ma i certificati autofirmati non soddisfano i requisiti HIPAA o FIPS.
-
Fornitura con certificati firmati da una CA privata. Come nei numeri 2 e 3 precedenti, ciò richiede l'installazione sia di cert-manager che di una aws-privateca-issuerCA privata e il provisioning del cluster. Kubernetes può quindi installare certificati TLS firmati sui pod in base alle esigenze.
-
Utilizzo del cert-manager su più account
Gli amministratori con accesso a una CA su più account possono utilizzare cert-manager per effettuare il provisioning di un cluster Kubernetes. Per ulteriori informazioni, consulta Le migliori pratiche di sicurezza per l'accesso ai dati privati da più account CAs.
Nota
Solo alcuni modelli di CA privata AWS certificato possono essere utilizzati in scenari tra più account. Modelli di certificato supportati Per un elenco dei modelli disponibili, consulta la sezione.
Modelli di certificato supportati
La tabella seguente elenca i CA privata AWS modelli che possono essere utilizzati con cert-manager per effettuare il provisioning di un cluster Kubernetes.
Modelli supportati per Kubernetes | Support per l'utilizzo su più account |
---|---|
BlankEndEntityCertificateDefinizione _ CSRPassthrough /V1 | |
CodeSigningCertificateDefinizione /V1 | |
EndEntityCertificateDefinizione /V1 | ✓ |
EndEntityClientAuthCertificateDefinizione /V1 | ✓ |
EndEntityServerAuthCertificateDefinizione /V1 | ✓ |
OCSPSigningDefinizione del certificato/V1 |
Soluzioni di esempio
Le seguenti soluzioni di integrazione mostrano come configurare l'accesso CA privata AWS a un cluster Amazon EKS.