Atualizando o módulo EOL pós-análises¶
Estas instruções descrevem as etapas para atualizar o módulo pós-análise fim de vida (versão 3.6 e inferior) instalado em um servidor separado. O módulo pós-análise deve ser atualizado antes de Atualização dos módulos NGINX Wallarm.
Os nós Wallarm 3.6 e inferiores não são suportados
Recomenda-se que você atualize os nós Wallarm 3.6 e inferiores, pois essas versões não são suportadas, elas estão no fim da vida.
A configuração do nó e a filtragem de tráfego foram significativamente simplificadas no nó Wallarm das últimas versões. Antes de atualizar os módulos, por favor, revise cuidadosamente a lista de mudanças e as recomendações gerais. Observe que algumas configurações do nó mais recente são incompatíveis com os nós 3.6 e inferiores.
Métodos de atualização¶
Você pode realizar a atualização de duas maneiras distintas:
-
Migrar para o uso do instalador tudo-em-um durante o procedimento de atualização. Esse é o método recomendado, pois automatiza diversas atividades de instalação e atualização do nó, como identificação da versão do NGINX e do sistema operacional, adição de repositórios Wallarm adequados, instalação de pacotes e outros.
-
Continue usando o método atual de instalação manual através de pacotes DEB/RPM individuais. No entanto, é importante salientar que em futuras atualizações esse método exigirá um esforço adicional e configuração manual em comparação ao novo método.
Atualização com o instalador tudo-em-um¶
Use o procedimento abaixo para atualizar o módulo pós-análise fim de vida (versão 3.6 e inferior) instalado em um servidor separado para a versão 4.8 usando o instalador tudo-em-um.
Requisitos para atualização usando o instalador tudo-em-um¶
-
Acesso à conta com a função de Administrador no Console Wallarm para US Cloud ou EU Cloud.
-
Acesso a
https://meganode.wallarm.com
para baixar o instalador Wallarm all-in-one. Certifique-se de que o acesso não está bloqueado por um firewall. -
Acesso a
https://us1.api.wallarm.com
para trabalhar com o US Wallarm Cloud ou parahttps://api.wallarm.com
para trabalhar com o EU Wallarm Cloud. Se o acesso pode ser configurado somente via servidor proxy, então use as instruções. -
Execução de todos os comandos como superusuário (por exemplo,
root
).
Passo 1: Prepare uma máquina limpa¶
Ao atualizar os módulos 4.x com o instalador all-in-one, você não pode atualizar uma instalação de pacote antigo - em vez disso, você precisa usar uma máquina limpa. Assim, como passo 1, prepare uma máquina com um dos sistemas operacionais suportados:
-
Debian 10, 11 e 12.x
-
Ubuntu LTS 18.04, 20.04, 22.04
-
CentOS 7, 8 Stream, 9 Stream
-
Alma/Rocky Linux 9
-
RHEL 8.x
-
RHEL 9.x
-
Oracle Linux 8.x
-
Oracle Linux 9.x
-
Redox
-
SuSe Linux
-
Outros (a lista está constantemente se expandindo, entre em contato com a equipe de suporte da Wallarm para verificar se seu sistema operacional está na lista)
Usar uma máquina limpa nova levará ao fato de que, em algum momento, você terá ambos os nós antigos e novos, o que é bom: você pode testar o novo funcionando corretamente sem interromper o antigo.
Passo 2: Prepare o token Wallarm¶
Para instalar o node, você precisará de um token Wallarm do tipo apropriado. Para preparar um token:
Passo 3: Baixe o instalador tudo-em-um Wallarm¶
A Wallarm sugere instalações all-in-one para os seguintes processadores:
-
x86_64
-
ARM64 (beta)
Para baixar o script de instalação all-in-one da Wallarm, execute o comando:
Passo 4: Execute o instalador tudo-em-um Wallarm para instalar pós-análises¶
Para instalar o postanalytics separadamente com o instalador all-in-one, use:
# Se estiver usando a versão x86_64:
sudo env WALLARM_LABELS='group=<GROUP>' sh wallarm-4.8.0.x86_64-glibc.sh postanalytics
# Se estiver usando a versão ARM64:
sudo env WALLARM_LABELS='group=<GROUP>' sh wallarm-4.8.0.aarch64-glibc.sh postanalytics
A variável WALLARM_LABELS
define o grupo ao qual o nó será adicionado (usado para agrupamento lógico de nós no Wallarm Console UI).
Passo 5: Atualize a porta da API¶
Começando com a versão 4.0, o nó de filtragem carrega dados para a nuvem usando os endpoints da API us1.api.wallarm.com:443
(NUvem EUA) e api.wallarm.com:443
(Nuvem EU) em vez de us1.api.wallarm.com:444
e api.wallarm.com:444
.
Se você atualizar o nó da versão 3.x ou inferior e seu servidor com o nó implantado tiver acesso limitado aos recursos externos, e o acesso for concedido a cada recurso separadamente, então após a atualização a sincronização entre o nó de filtragem e a nuvem irá parar.
Para restaurar a sincronização, em sua configuração, altere a porta 444
para 443
para o endpoint da API para cada recurso.
Passo 6: Atualize o módulo NGINX-Wallarm em um servidor separado¶
Uma vez que o módulo pós-análise foi instalado em um servidor separado, atualize o NGINX-Wallarm module relacionado que está em execução em um servidor diferente.
Combinando métodos de atualização
Ambas as abordagens manual e automática podem ser usadas para atualizar o módulo NGINX-Wallarm relacionado.
Passo 7: Reconecte o módulo NGINX-Wallarm ao módulo pós-análise¶
Na máquina com o módulo NGINX-Wallarm, no arquivo de configuração do NGINX, especifique o endereço do servidor do módulo postanalytics:
upstream wallarm_tarantool {
server <ip1>:3313 max_fails=0 fail_timeout=0 max_conns=1;
server <ip2>:3313 max_fails=0 fail_timeout=0 max_conns=1;
keepalive 2;
}
# omitido
wallarm_tarantool_upstream wallarm_tarantool;
-
O valor de
max_conns
deve ser especificado para cada um dos servidores upstream do Tarantool para evitar a criação de conexões excessivas. -
O valor de
keepalive
não deve ser inferior ao número de servidores Tarantool. -
A string
# wallarm_tarantool_upstream wallarm_tarantool;
vem comentada por padrão - por favor, delete#
.
Uma vez alterado o arquivo de configuração, reinicie o NGINX/NGINX Plus no servidor do módulo NGINX-Wallarm:
Passo 8: Verifique a interação dos módulos NGINX‑Wallarm e separado de pós-análises¶
Para verificar a interação dos módulos NGINX‑Wallarm e postanalytics separados, você pode enviar a solicitação com um teste de ataque para o endereço do aplicativo protegido:
Se os módulos NGINX‑Wallarm e postanalytics separados estiverem configurados corretamente, o ataque será enviado para a Nuvem Wallarm e exibido na seção Eventos do Console Wallarm:
Se o ataque não foi enviado para a Nuvem, verifique se não há erros na operação dos serviços:
-
Certifique-se de que o serviço postanalytics
wallarm-tarantool
está no statusativo
-
Analise os logs do módulo postanalytics
Se houver o registro como
SystemError binary: failed to bind: Cannot assign requested address
, certifique-se de que o servidor aceita a conexão no endereço e porta especificados. -
No servidor com o módulo NGINX‑Wallarm, analise os logs do NGINX:
Se houver o registro como [error] wallarm: <endereço> connect() failed
,certifique-se de que o endereço do módulo postanalytics separado está correto nos arquivos de configuração do módulo NGINX‑Wallarm e o servidor postanalytics separado aceita conexão no endereço e porta especificados.
-
No servidor com o módulo NGINX‑Wallarm, obtenha as estatísticas das solicitações processadas usando o comando abaixo e certifique-se de que o valor de
tnt_errors
é 0Descrição de todos os parâmetros retornados pelo serviço de estatísticas →
Passo 9: Remova o antigo módulo pós-análise¶
-
Exclua o módulo postanalytics antigo no Console Wallarm → Nós selecionando seu nó do módulo postanalytics e clicando em Excluir.
-
Confirme a ação.
Quando o nó do módulo postanalytics é excluído da Cloud, ele deixará de participar da filtragem de solicitações para suas aplicações. A exclusão não pode ser desfeita. O nó do módulo postanalytics será excluído permanentemente da lista de nós.
- Exclua a máquina com o módulo postanalytics antigo ou simplesmente limpe-a dos componentes do módulo postanalytics do Wallarm:
=== "Debian"
=== "Ubuntu"
=== "CentOS ou Amazon Linux 2.0.2021 e inferior"
=== "AlmaLinux, Rocky Linux ou Oracle Linux 8.x"
=== "RHEL 8.x"
Atualização manual¶
Use o procedimento abaixo para atualizar manualmente o módulo pós-análise fim de vida (versão 3.6 e inferior) instalado em um servidor separado para a versão 4.8.
Requisitos¶
-
Acesso à conta com a função de Administrador no Console Wallarm no US Cloud ou EU Cloud
-
Acesso a
https://us1.api.wallarm.com
se estiver trabalhando com o Wallarm Cloud dos EUA ou parahttps://api.wallarm.com
se estiver trabalhando com o Wallarm Cloud da UE. Por favor, certifique-se de que o acesso não está bloqueado por um firewall
Passo 1: Atualize a porta da API¶
Começando com a versão 4.0, o nó de filtragem carrega dados para a nuvem usando os endpoints da API us1.api.wallarm.com:443
(NUvem EUA) e api.wallarm.com:443
(Nuvem EU) em vez de us1.api.wallarm.com:444
e api.wallarm.com:444
.
Se você atualizar o nó da versão 3.x ou inferior e seu servidor com o nó implantado tiver acesso limitado aos recursos externos, e o acesso for concedido a cada recurso separadamente, então após a atualização a sincronização entre o nó de filtragem e a nuvem irá parar.
Para restaurar a sincronização, em sua configuração, altere a porta 444
para 443
para o endpoint da API para cada recurso.
Passo 2: Adicione um novo repositório Wallarm¶
Delete o endereço do repositório Wallarm anterior e adicione um repositório com novos pacotes de versão de nó Wallarm. Por favor, use os comandos para a plataforma apropriada.
CentOS e Amazon Linux 2.0.2021x e inferiores
O suporte para CentOS 8.x foi descontinuado
O suporte para CentOS 8.x foi descontinuado. Você pode instalar o nó Wallarm no sistema operacional AlmaLinux, Rocky Linux, Oracle Linux 8.x ou RHEL 8.x em vez disso.
Debian e Ubuntu
-
Abra o arquivo com o endereço do repositório Wallarm no editor de texto instalado. Nesta instrução, vim é usado.
-
Comente ou delete o endereço do repositório anterior.
-
Adicione um novo endereço de repositório:
Não suportado por NGINX estável e NGINX Plus
As versões oficiais do NGINX (estável e Plus) e, como resultado, o nó Wallarm 4.4 e acima não podem ser instalados no Debian 10.x (buster). Por favor, use este SO apenas se o NGINX for instalado a partir dos repositórios Debian/CentOS.
Passo 3: Atualize os pacotes Tarantool¶
O erro "as assinaturas não puderam ser verificadas"
Se as chaves GPG adicionadas expirarem, o seguinte erro será retornado:
W: GPG error: https://repo.wallarm.com/ubuntu/wallarm-node focal/4.8/ Release:As seguintes
assinaturas não puderam ser verificadas porque a chave pública não está disponível: NO_PUBKEY 1111FQQW999
E: O repositório 'https://repo.wallarm.com/ubuntu/wallarm-node focal/4.8/ Release' não está assinado.
N: Atualizar a partir de tal repositório não pode ser feito de maneira segura, e é, portanto, desativado por padrão.
N: Veja a página man do apt-secure(8) para detalhes da criação de repositório e configuração do usuário.
Para corrigir o problema, importe novas chaves GPG para os pacotes Wallarm e então atualize os pacotes usando os seguintes comandos:
Atualizando as dependências do Wallarm
O comando sudo apt dist-upgrade
atualiza tanto os pacotes Wallarm quanto as dependências do nó de filtragem. É a opção recomendada para a atualização, uma vez que assegura o correto funcionamento da nova versão do nó de filtragem.
O erro "as assinaturas não puderam ser verificadas"
Se as chaves GPG adicionadas expirarem, o seguinte erro será retornado:
W: GPG error: https://repo.wallarm.com/ubuntu/wallarm-node focal/4.8/ Release:As seguintes
assinaturas não puderam ser verificadas porque a chave pública não está disponível: NO_PUBKEY 1111FQQW999
E: O repositório 'https://repo.wallarm.com/ubuntu/wallarm-node focal/4.8/ Release' não está assinado.
N: Atualizar a partir de tal repositório não pode ser feito de maneira segura, e é, portanto, desativado por padrão.
N: Veja a página man do apt-secure(8) para detalhes da criação de repositório e configuração do usuário.
Para corrigir o problema, importe novas chaves GPG para os pacotes Wallarm e então atualize os pacotes usando os seguintes comandos:
Atualizando as dependências do Wallarm
O comando sudo apt dist-upgrade
atualiza tanto os pacotes Wallarm quanto as dependências do nó de filtragem. É a opção recomendada para a atualização, uma vez que assegura o correto funcionamento da nova versão do nó de filtragem.
Passo 4: Atualize o tipo de nó¶
O nó pós-análises implantado 3.6 ou inferior possui o tipo obsoleto regular que é agora substituído pelo novo tipo de nó Wallarm node.
É recomendado instalar o novo tipo de nó em vez do obsoleto durante a migração para a versão 4.8. O tipo de nó regular será removido em futuras versões, por favor, migre antes.
Para substituir o nó regular pós-análises pelo Wallarm node:
-
Abra Wallarm Console → Nodes Nuvem US ou Nuvem EU e crie o nó Wallarm node.
-
Copie o token gerado.
-
Execute o script
register-node
para executar o Wallarm node:<TOKEN>
é o valor copiado do token de nó ou token de API com a funçãoDeploy
.- A opção
--force
força a reescritura das credenciais de acesso à Wallarm Cloud especificadas no arquivo/etc/wallarm/node.yaml
.
Usando um token para várias instalações
Você tem duas opções para usar um token para várias instalações:
- Para todas as versões de nó, você pode usar um token de nó em várias instalações, independentemente da plataforma selecionada. Isso permite a agrupação lógica de instâncias de nó na interface do usuário do Console Wallarm. Exemplo: você implanta vários nós Wallarm em um ambiente de desenvolvimento, cada nó está em sua própria máquina de propriedade de um determinado desenvolvedor.
A partir do nó 4.6, para agrupamento de nós, você pode usar um token API com a função
Deploy
junto com a flag--labels 'group=<GROUP>'
, por exemplo:sudo /usr/share/wallarm-common/register-node -t <TOKEN API COM FUNÇÃO DEPLOY> --labels 'group=<GROUP>'