As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Proteja o Kubernetes com CA privada da AWS
nota
O Amazon EKS oferece suporte ao AWS Private CA Connector for Kubernetes como um complemento do EKS. Isso simplifica a instalação e a configuração do conector. Consulte AWS complementos para obter mais informações.
Contêineres e aplicações Kubernetes usam certificados digitais para fornecer autenticação e criptografia seguras via TLS. Uma solução amplamente adotada para gerenciar o ciclo de vida de certificados TLS no Kubernetes é o cert-manager
CA privada da AWS fornece um plug-in de código aberto para cert-manager, aws-privateca-issuer
O diagrama abaixo mostra algumas das opções disponíveis para usar o TLS em um cluster do Amazon EKS. Esse cluster de exemplo, contendo vários recursos, está atrás de um balanceador de carga. Os números identificam possíveis pontos finais para comunicações protegidas por TLS, incluindo o balanceador de carga externo, o controlador de entrada, um pod individual dentro de um serviço e um par de pods que se comunicam com segurança entre si.

-
Término no balanceador de carga.
O Elastic Load Balancing (ELB) é um serviço AWS Certificate Manager integrado, o que significa que você pode provisionar o ACM com uma CA privada, assinar um certificado com ela e instalá-la usando o console do ELB. Essa solução fornece comunicação criptografada entre um cliente remoto e o balanceador de carga. Os dados são transmitidos sem criptografia ao cluster do EKS. Como alternativa, você pode fornecer um certificado privado a um balanceador que não seja de AWS carga para encerrar o TLS.
-
Término no controlador de entrada Kubernetes.
O controlador de entrada reside no cluster do EKS como um balanceador de carga e roteador nativos. Se você instalou o cert-manager e aws-privateca-issuerprovisionou o cluster com uma CA privada, o Kubernetes pode instalar um certificado TLS assinado no controlador, permitindo que ele sirva como ponto final do cluster para comunicações externas. As comunicações entre o balanceador de carga e o controlador de entrada são criptografadas e, após a entrada, os dados são transmitidos sem criptografia aos recursos do cluster.
-
Término em um pod.
Cada pod é um grupo de um ou mais contêineres que compartilham recursos de armazenamento e rede. Se você instalou o cert-manager e provisionou o cluster com uma CA privada aws-privateca-issuer, o Kubernetes pode instalar certificados TLS assinados em pods conforme necessário. Uma conexão TLS terminando em um pod não está disponível por padrão para outros pods no cluster.
-
Comunicações seguras entre pods.
Você também pode provisionar vários pods com certificados que permitem a comunicação deles entre si. Os cenários a seguir são possíveis:
-
Provisionamento com certificados autoassinados e gerados pelo Kubernetes. Isso protege as comunicações entre os pods, mas os certificados autoassinados não atendem aos requisitos da HIPAA ou do FIPS.
-
Provisionamento com certificados assinados por uma CA privada. Como nos números 2 e 3 acima, isso requer a instalação do cert-manager e aws-privateca-issuero provisionamento do cluster com uma CA privada. O Kubernetes pode então instalar certificados TLS assinados nos pods conforme necessário.
-
Uso entre contas do cert-manager
Administradores com acesso entre contas a uma CA podem usar o cert-manager para provisionar um cluster do Kubernetes. Para obter mais informações, consulte Práticas recomendadas de segurança para acesso entre contas a serviços privados CAs.
nota
Somente determinados modelos de CA privada da AWS certificado podem ser usados em cenários entre contas. Consulte Modelos de certificados com suporte para obter uma lista de modelos disponíveis.
Modelos de certificados com suporte
A tabela a seguir lista os CA privada da AWS modelos que podem ser usados com o cert-manager para provisionar um cluster Kubernetes.
Modelos compatíveis com o Kubernetes | Suporte para uso entre contas |
---|---|
BlankEndEntityCertificateDefinição de _ CSRPassthrough /V1 | |
CodeSigningCertificateDefinição de /V1 | |
EndEntityCertificateDefinição de /V1 | ✓ |
EndEntityClientAuthCertificateDefinição de /V1 | ✓ |
EndEntityServerAuthCertificateDefinição de /V1 | ✓ |
OCSPSigningDefinição de certificado/V1 |
Soluções de exemplo
As soluções de integração a seguir mostram como configurar o acesso CA privada da AWS em um cluster Amazon EKS.