Ativação do FIPS 140-3
FIPS 140-3 é um padrão dos EUA. Padrão de segurança do governo federal usado para aprovar módulos criptográficos. Este documento explica como o RKE2 é construído com bibliotecas criptográficas validadas pelo padrão FIPS.
A verificação de conformidade está disponível em: FIPS 140-3 Verificado.
Uso do compilador Go compatível com FIPS
O compilador Go utilizado pode ser encontrado aqui. Cada componente do sistema é construído com a versão deste compilador que corresponde à mesma versão do compilador Go padrão que seria utilizada de outra forma.
Esta versão do Go substitui as bibliotecas criptográficas padrão do Go pelo módulo BoringCrypto validado pelo FIPS. Para mais informações, consulte o README do GoBoring para mais detalhes. Este módulo é validado pelo NIST como o módulo BoringCrypto em uma ampla gama de sistemas.
Suporte ao FIPS em Componentes do Cluster
A maioria dos componentes do RKE2 é compilada estaticamente usando o compilador GoBoring. Arquitetonicamente, o RKE2 é dividido em várias seções, e a lista a seguir descreve essas seções e seus componentes associados:
-
Kubernetes
-
Servidor API
-
Gerenciador de Controladores
-
Programador
-
Kubelet
-
Kube Proxy
-
Servidor de Métricas
-
Kubectl
-
-
Gráficos do Helm
-
Flannel
-
Calico
-
CoreDNS
-
Traefik
-
Runtime
Para garantir que toda a arquitetura utilize algoritmos compatíveis com FIPS 140-3, os utilitários de runtime do RKE2 são compilados estaticamente com o compilador Go com FIPS habilitado. Isso garante conformidade em todos os níveis da pilha, desde os daemons do Kubernetes até os mecanismos de orquestração de contêineres.
-
etcd
-
containerd
-
containerd-shim
-
containerd-shim-runc-v1
-
containerd-shim-runc-v2
-
ctr
-
-
crictl
-
runc
CNI
O RKE2 suporta a seleção de um CNI alternativo através da flag --cni. Ele vem acompanhado de várias opções, incluindo Canal (padrão), Calico, Cilium e Multus. No entanto, apenas o Canal é reconstruído para conformidade com FIPS.
Ingress
O RKE2 é fornecido com dois controladores de ingress: ingress-nginx e Traefik. Ambos são compatíveis com FIPS.
O controlador ingress-nginx e toda a pilha do Traefik completo (controlador e servidor proxy) são escritos em Go e compilados usando o compilador Go compatível com FIPS.
O ingress-nginx utiliza o servidor proxy nginx, que é escrito em C e depende do OpenSSL para funcionar corretamente. Como resultado, ele utiliza uma versão do OpenSSL validada pelo FIPS para alcançar a conformidade com FIPS.
|
O controlador ingress-nginx atinge o fim do serviço (EOL) em março de 2026. Os usuários SUSE® Rancher Prime: RKE2 continuarão a receber suporte e correções de CVE (8+) durante todo o ciclo de vida do RKE2 v1.32, v1.33, v1.34, v1.35 e v1.36. Recomendamos a migração para o Traefik seguindo o guia Migrando do Ingress-NGINX para o Traefik em um cluster RKE2 autônomo. |