Implantando o NGINX Ingress Controller com Serviços Integrados Wallarm¶
Estas instruções fornecem os passos para implantar o controlador de ingresso Wallarm NGINX-based em seu cluster K8s. A solução envolve a funcionalidade padrão do Community Ingress NGINX Controller com serviços integrados Wallarm.
A solução tem a seguinte arquitetura:
A solução é implantada a partir do Wallarm Helm chart.
Casos de uso¶
Entre todas as opções de implantação Wallarm suportadas, esta solução é a recomendada para os seguintes casos de uso:
-
Não há controlador de ingresso e camada de segurança direcionando tráfego para recursos de ingresso compatíveis com o Community Ingress NGINX Controller.
-
Você está usando o Community Ingress NGINX Controller e procura uma solução de segurança compatível com sua pilha de tecnologia.
Você pode substituir perfeitamente o Controlador de Ingresso NGINX implantado pelo descrito nestas instruções, apenas movendo sua configuração para uma nova implantação.
Requisitos¶
-
Versão da plataforma Kubernetes 1.24-1.27
-
Gerenciador de pacotes Helm
-
Compatibilidade dos seus serviços com o Controlador Ingress NGINX da comunidade versão 1.9.5
-
Acesso à conta com a função de Administrador e autenticação de dois fatores desativada no Console Wallarm para a Nuvem US ou Nuvem EU
-
Acesso a
https://us1.api.wallarm.com
para trabalhar com a Nuvem Wallarm US ou ahttps://api.wallarm.com
para trabalhar com a Nuvem Wallarm EU -
Acesso a
https://charts.wallarm.com
para adicionar os gráficos Helm da Wallarm. Certifique-se de que o acesso não está bloqueado por um firewall -
Acesso aos repositórios Wallarm no Docker Hub
https://hub.docker.com/r/wallarm
. Certifique-se de que o acesso não está bloqueado por um firewall -
Access to the IP addresses below for downloading updates to attack detection rules, as well as retrieving precise IPs for your allowlisted, denylisted, or graylisted countries, regions, or data centers
Veja também
Restrições conhecidas¶
-
A operação sem o módulo postanalytics não é suportada.
-
A redução de escala do módulo postanalytics pode resultar em uma perda parcial dos dados do ataque.
Instalação¶
-
Instale o Wallarm Ingress Controller.
-
Habilite a análise de tráfego para seu Ingress.
-
Verifique a operação do Wallarm Ingress Controller.
Passo 1: Instalando o Wallarm Ingress Controller¶
Para instalar o Wallarm Ingress Controller:
-
Gere um token de nó de filtração do tipo apropriado:
-
Crie um espaço de nomes Kubernetes para implantar o Helm chart com o Wallarm Ingress Controller:
-
Adicione o repositório do gráfico Wallarm:
-
Crie o arquivo
values.yaml
com a configuração Wallarm. Exemplo do arquivo com a configuração mínima está abaixo.Ao usar um token de API, especifique um nome de grupo de nós no parâmetro
nodeGroup
. Seu nó será atribuído a este grupo, mostrado na seção Nodes do Console Wallarm. O nome do grupo padrão édefaultIngressGroup
.Você também pode armazenar o token de nó Wallarm em segredos do Kubernetes e puxá-lo para o Helm chart. Leia mais
-
Instale os pacotes Wallarm:
helm install --version 4.8.2 <RELEASE_NAME> wallarm/wallarm-ingress -n <KUBERNETES_NAMESPACE> -f <PATH_TO_VALUES>
<RELEASE_NAME>
é o nome para a versão Helm do gráfico do controlador de ingresso<KUBERNETES_NAMESPACE>
é o namespace Kubernetes que você criou para o Helm chart com o Wallarm Ingress Controller<PATH_TO_VALUES>
é o caminho para o arquivovalues.yaml
Passo 2: Habilitando a análise de tráfego para o seu Ingress¶
kubectl annotate ingress <YOUR_INGRESS_NAME> -n <YOUR_INGRESS_NAMESPACE> nginx.ingress.kubernetes.io/wallarm-mode=monitoring
kubectl annotate ingress <YOUR_INGRESS_NAME> -n <YOUR_INGRESS_NAMESPACE> nginx.ingress.kubernetes.io/wallarm-application=<APPLICATION>
-
<YOUR_INGRESS_NAME>
é o nome do seu Ingress -
<YOUR_INGRESS_NAMESPACE>
é o namespace do seu Ingress -
<APPLICATION>
é um número positivo que é único para cada uma de suas aplicações ou grupos de aplicações. Isso permitirá que você obtenha estatísticas separadas e distinga entre ataques direcionados às aplicações correspondentes
Passo 3: Verificando a operação do Wallarm Ingress Controller¶
-
Pegue a lista de pods:
Cada pod deve exibir o seguinte: STATUS: Running e READY: N/N. Por exemplo:
-
Envie a solicitação com o teste Path Traversal ataque para o Ingress Controller Service:
Se o nó de filtragem estiver funcionando no modo
block
, o código403 Forbidden
será retornado na resposta à solicitação e o ataque será exibido em Wallarm Console → Events.
Configuração¶
Após a instalação e verificação bem-sucedida do Wallarm Ingress Controller, você pode fazer configurações avançadas para a solução, como:
Para encontrar parâmetros usados para configuração avançada e instruções apropriadas, por favor, siga o link.