Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official.

Visão Geral

NeuVector 5.x é uma plataforma de segurança centrada em contêineres de código aberto que está integrada ao Rancher. O NeuVector oferece conformidade em tempo real, visibilidade e proteção para aplicativos e dados críticos durante o runtime. O NeuVector fornece um gateway de segurança, monitoramento de processos/sistema de arquivos de contêiner, auditoria de segurança com benchmarks CIS e varredura de vulnerabilidades. Para mais informações sobre a segurança do Rancher, consulte a documentação de segurança.

O NeuVector pode ser habilitado por meio de um gráfico Helm que pode ser instalado tanto através de Apps quanto pelo botão Cluster Tools na interface do Rancher. Uma vez que o gráfico Helm esteja instalado, os usuários podem facilmente implantar e gerenciar clusters do NeuVector dentro do Rancher.

Instalando SUSE Security com o Rancher.

O gráfico Helm do Harvester é usado para gerenciar o acesso à interface do NeuVector no Rancher, onde os usuários podem navegar diretamente para implantar e gerenciar seus clusters do NeuVector.

Para navegar e instalar o gráfico do NeuVector através de Apps:

  1. Clique em ☰ > Gerenciamento de Cluster.

  2. Na página Clusters, vá para o cluster onde você deseja implantar o NeuVector e clique em Explorar.

  3. Vá para Apps  Charts e instale NeuVector do repositório de gráficos.

  4. Diferentes tipos de cluster requerem diferentes tempos de execução do contêiner. Ao configurar os valores do gráfico Helm, vá para a seção Tempo de Execução do Contêiner e selecione o tempo de execução adequado conforme o tipo de cluster. Por fim, clique em Instalar novamente.

Alguns exemplos são os seguintes:

  • K3s e RKE2: k3scontainerd

  • AKS: containerd para v1.19 e superior

  • EKS: docker para v1.22 e inferior; containerd para v1.23 e superior.

  • GKE: containerd (veja os documentos do Google para mais)

Apenas um mecanismo de execução de contêiner pode ser selecionado por vez durante a instalação.

Para navegar e instalar o gráfico do NeuVector através das Ferramentas do Cluster:

  1. Clique em ☰ > Gerenciamento de Cluster.

  2. Na página Clusters, vá para o cluster onde você deseja implantar o NeuVector e clique em Explorar.

  3. Clique em Ferramentas do Cluster na parte inferior da barra de navegação à esquerda.

  4. Repita o passo 4 acima para selecionar o runtime de contêiner correspondente e, em seguida, clique em Instalar novamente.

Acessando SUSE Security pela interface do Rancher

  1. Navegue até o explorador de clusters do cluster onde o NeuVector está instalado. Na barra de navegação à esquerda, clique em NeuVector.

  2. Clique no link externo para ir para a interface do NeuVector. Uma vez que o link é selecionado, os usuários devem aceitar o END USER LICENSE AGREEMENT para acessar a interface do NeuVector.

Desinstalando SUSE Security pela interface do Rancher

Para desinstalar de Apps:

  1. Clique em ☰ > Gerenciamento de Cluster.

  2. Sob Apps, clique em Apps Instalados.

  3. Sob cattle-neuvector-system, selecione tanto o app NeuVector (e o CRD associado, se desejado), em seguida, clique em Excluir.

Para desinstalar das Ferramentas do Cluster:

  1. Clique em ☰ > Gerenciamento de Cluster.

  2. Clique em Ferramentas do Cluster no canto inferior esquerdo da tela, em seguida, clique no ícone da lixeira sob o gráfico do NeuVector. Selecione Delete the CRD associated with this app se desejado, em seguida, clique em Excluir.

Repositório GitHub

O projeto NeuVector está disponível aqui.

Documentação

A documentação do NeuVector está aqui.

Arquitetura

A solução de segurança NeuVector contém quatro tipos de contêineres de segurança: Controllers, Enforcers, Managers e Scanners. Um contêiner especial chamado All-in-One também é fornecido para combinar as funções de Controller, Enforcer e Manager em um único contêiner, principalmente para implantações nativas do Docker. Há também um Atualizador que, quando executado, atualizará o banco de dados CVE.

  • Controlador: Gerencia o contêiner Enforcer do NeuVector; fornece APIs REST para o console de gerenciamento.

  • Enforcer: Aplica políticas de segurança.

  • NeuVector Manager: Fornece uma interface web e um console CLI para gerenciar a plataforma NeuVector.

  • All-in-One: Inclui o Controller, Enforcer e Manager.

  • Scanner: Realiza a verificação de vulnerabilidade e conformidade para imagens, contêineres e nós.

  • Atualizador: Atualiza o banco de dados CVE para o NeuVector (quando executado); reimplanta os pods do scanner.

Contêineres de Segurança NeuVector
Figure 1. Contêineres de Segurança NeuVector
Arquitetura NeuVector
Figure 2. Arquitetura NeuVector

Para saber mais sobre a arquitetura do NeuVector, consulte aqui.

Alocações de CPU e Memória

Abaixo estão os recursos computacionais mínimos recomendados para a instalação do gráfico do NeuVector em uma implantação padrão. Observe que o limite de recursos não está definido.

Container CPU - Requisição Memória - Requisição

Controlador

3 (1GB 1vCPU necessário por controlador)

*

Enforcer

Em todos os nós (500MB .5vCPU)

1GB

Gerente

1 (500MB .5vCPU)

*

Scanner

3 (100MB .5vCPU)

*

  • Mínimo de 1GB de memória total necessária para os contêineres Controller, Manager e Scanner combinados.

Suporte a Cluster Endurecido - Calico e Canal

RKE2

  • Os componentes Controller e Enforcer do NeuVector podem ser implantados se o PSP estiver definido como verdadeiro.

Aplicável apenas à versão 100.0.0+up2.2.0 do gráfico do NeuVector:

  • Para os componentes Manager, Scanner e Updater, configuração adicional é necessária, conforme mostrado abaixo:

    kubectl patch deploy neuvector-manager-pod -n cattle-neuvector-system --patch '{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}'
    kubectl patch deploy neuvector-scanner-pod -n cattle-neuvector-system --patch '{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}'
    kubectl patch cronjob neuvector-updater-pod -n cattle-neuvector-system --patch '{"spec":{"jobTemplate":{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}}}'

    Você precisará definir uma configuração adicional para o seu ambiente de cluster endurecido.

    Você deve atualizar suas configurações em ambos os clusters endurecidos RKE2 e K3s, conforme mostrado abaixo.
    1. Clique em ☰ > Gerenciamento de Cluster.

    2. Vá para o cluster que você criou e clique em Explorar.

    3. Na barra de navegação à esquerda, clique em Apps.

    4. Instale (ou faça upgrade para) a versão do NeuVector 100.0.1+up2.2.2.

      1. Em Editar Opções > Outra Configuração, ative Política de Segurança de Pod marcando a caixa. Observe que você também deve inserir um valor maior que zero para Manager runAsUser ID, Scanner runAsUser ID e Updater runAsUser ID:

        Ativar PSP para Clusters Endurecidos RKE2 e K3s
    5. Clique Instalar no canto inferior direito para concluir.

Suporte a Cluster com SELinux habilitado - Calico e Canal

Para habilitar o SELinux em clusters RKE2, siga os passos abaixo:

  • Os componentes Controller e Enforcer do NeuVector podem ser implantados se o PSP estiver definido como verdadeiro.

Aplicável apenas à versão 100.0.0+up2.2.0 do gráfico do NeuVector:

  • Para os componentes Manager, Scanner e Updater, é necessária configuração adicional, conforme mostrado abaixo:

kubectl patch deploy neuvector-manager-pod -n cattle-neuvector-system --patch '{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}'
kubectl patch deploy neuvector-scanner-pod -n cattle-neuvector-system --patch '{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}'
kubectl patch cronjob neuvector-updater-pod -n cattle-neuvector-system --patch '{"spec":{"jobTemplate":{"spec":{"template":{"spec":{"securityContext":{"runAsUser": 5400}}}}}}}'

Suporte a Cluster em um Ambiente air-gapped

  • Todos os componentes do NeuVector são implantáveis em um cluster em um ambiente air-gapped sem necessidade de configuração adicional.

Limitações de Suporte

  • Atualmente, apenas administradores e proprietários de cluster são suportados.

  • A implantação multi-cluster do Fleet não é suportada.

  • O NeuVector não é suportado em um cluster Windows.

Outras Limitações

  • Atualmente, a instalação do gráfico de recursos do NeuVector falha quando um gráfico de parceiro do NeuVector já existe. Para contornar esse problema, desinstale o gráfico de parceiro do NeuVector e reinstale o gráfico de recursos do NeuVector.

  • Às vezes, quando os controladores não estão prontos, a interface do usuário do NeuVector não está acessível a partir da interface do usuário do Rancher. Durante esse tempo, os controladores tentarão reiniciar, e leva alguns minutos para que os controladores estejam ativos.

  • O tempo de execução do contêiner não é detectado automaticamente para diferentes tipos de cluster ao instalar o gráfico do NeuVector. Para contornar isso, você pode especificar o tempo de execução manualmente.