Arquivar Seu Tráfego de Rede Espelhado no OCI Object Storage

O Oracle Cloud Infrastructure Virtual Test Access Point (VTAP) é um serviço de espelhamento de tráfego de rede que captura uma cópia do tráfego de rede de uma origem especificada, aplica filtros para se concentrar nos dados relevantes e os envia para um destino para análise. Isso oferece oportunidades para você melhorar a solução de problemas de rede, o monitoramento de segurança, a análise de desempenho da rede e a auditoria de conformidade.

Arquitetura

Essa arquitetura mostra como você pode usar o OCI (Oracle Cloud Infrastructure) para arquivar seu tráfego espelhado do VTAP para o OCI Object Storage.

O arquivamento do tráfego de rede pode ser necessário por motivos de conformidade. Além disso, arquivar seu tráfego de rede tem vantagens ao solucionar problemas de rede elusivos ou intermitentes. Você pode analisar seletivamente a captura de rede do tráfego de produção passado, conforme necessário.

O diagrama a seguir ilustra essa arquitetura de referência.

Veja a seguir a descrição da oci-vtap-archiver.png
Descrição da ilustração oci-vtap-archiver.png

oci-vtap-archiver-oracle.zip

Para fins ilustrativos, um Servidor Web HTTP simples está em uma sub-rede pública com seus clientes na primeira sub-rede privada. Os clientes usam o comando HTTP GET curl para fazer download de arquivos do servidor de arquivos HTTP. Esses clientes são configurados como origens VTAP nesta ilustração. Nós espelhamos apenas o tráfego HTTP com VTAP. O Balanceador de Carga de Rede do OCI recebe o tráfego espelhado do VTAP e o balanceia entre seus nós do servidor de backend. Esses nós de backend fazem upload da captura de rede para o OCI Object Storage. Você pode ter servidores Web ou uma instância de banco de dados como a origem da configuração do VTAP em seu ambiente. O restante do design normalmente permanecerá o mesmo em sua implementação.

As linhas pontilhadas verticais entre os seguintes componentes indicam que fluxos VTAP adicionais são configuráveis: Cliente 1 para Cliente #n, atuando como origens VTAP, e VTAP Sink 1 para VTAP Sink #m, nós que fazem o arquivamento no OCI Object Storage.

A configuração do Terraform criará uma VCN com as três sub-redes a seguir:
  • Sub-rede pública: Contém um único host, que atua como um servidor de arquivos HTTP e um jumpbox para acessar nós nas duas sub-redes privadas. Talvez você precise do servidor jumpbox ou bastion em uma sub-rede pública em seu ambiente de produção para acessar nós em uma sub-rede privada para solução de problemas ou outros fins de manutenção.
  • Sub-rede privada: Nós de hosts que fazem download de um arquivo fictício do servidor de arquivos HTTP para criar tráfego HTTP. Esses nós atuam como fontes para o VTAP, e seu tráfego é espelhado pelo VTAP com um filtro de captura apropriado. Vamos nos referir a esses nós como nós de Origem VTAP. Cada nó de Origem VTAP tem seu próprio VTAP separado.
  • Sub-rede privada: Contém um balanceador de carga de rede (NLB) que atua como destino para os VTAPs. O Balanceador de Carga de Rede Flexível do OCI tem nós de backend que executam a captura de rede do tráfego VTAP como arquivos pcap e os arquivam em um bucket. Chamamos esses nós de VTAP Sink. Os nós VTAP Sink e o NLB residem na mesma sub-rede privada.

O VTAP é configurado com um filtro de captura para capturar apenas o tráfego de rede de solicitações HTTP GET disparadas por essas Origens VTAP para o servidor de arquivos HTTP em nossa sub-rede pública. O VTAP é definido na VNIC principal dos nós de Origem VTAP.

Você pode escolher a região e o compartimento para sua implantação. Todos os recursos são criados na região e no compartimento especificados. O bucket do OCI Object Storage para arquivar os arquivos pcap também é criado.

A arquitetura tem os seguintes componentes:

  • Região

    Região do Oracle Cloud Infrastructure é uma área geográfica localizada que contém um ou mais data centers, denominada domínios de disponibilidade. As regiões são independentes de outras regiões, e grandes distâncias podem separá-las (entre países ou até mesmo continentes).

  • Rede virtual na nuvem (VCN) e sub-redes

    Uma VCN é uma rede personalizável definida por software que você configura em uma região do Oracle Cloud Infrastructure. Como as redes tradicionais de data center, as VCNs oferecem controle sobre seu ambiente de rede. Uma VCN pode ter vários blocos CIDR não sobrepostos que você pode alterar após a criação da VCN. Você pode segmentar uma VCN em sub-redes, com escopo definido para uma região ou para um domínio de disponibilidade. Cada sub-rede consiste em um intervalo contíguo de endereços que não se sobrepõem a outras sub-redes da VCN. Você pode alterar o tamanho de uma sub-rede após a criação. Uma sub-rede pode ser pública ou privada.

  • VTAP

    Um Ponto de Acesso de Teste Virtual (VTAP) fornece uma maneira de espelhar o tráfego de uma origem designada a um destino selecionado para facilitar a solução de problemas, a análise de segurança e o monitoramento de dados.

  • Balanceador de carga de rede (NLB)

    O OCI Flexible Network Load Balancer fornece distribuição de tráfego automatizada de um ponto de entrada para vários servidores em um conjunto de backend. Os balanceadores de carga de rede garantem que seus serviços permaneçam disponíveis direcionando o tráfego apenas para servidores íntegros com base nos dados da Camada 3/Camada 4 (protocolo IP). Aqui usamos o OCI Flexible Network Load Balancer para balancear a carga do tráfego UDP VXLAN para nós VTAP Sink.

  • Object Storage

    O serviço Oracle Cloud Infrastructure Object Storage oferece acesso rápido a grandes quantidades de dados estruturados e não estruturados de qualquer tipo de conteúdo, incluindo backups de bancos de dados, dados de análise e conteúdo avançado, como imagens e vídeos. Você pode armazenar de forma segura e depois recuperar dados diretamente da internet ou de dentro da plataforma da nuvem. Você pode dimensionar o armazenamento sem prejudicar o desempenho ou a confiabilidade do serviço. Use o armazenamento padrão para armazenamento de acesso frequente que você precisa para acessar de forma rápida, imediata e com frequência. Use o armazenamento de arquivos compactados para armazenamento "frio" que você mantém por longos períodos de tempo e raramente acessa.

  • Gateway de serviço

    O gateway de serviço fornece acesso de uma VCN a outros serviços, como o Oracle Cloud Infrastructure Object Storage. O tráfego da VCN para o serviço Oracle percorre a malha da rede Oracle e não passa pela internet.

  • Gateway de internet

    O gateway de internet permite o tráfego entre as sub-redes públicas em uma VCN e a internet pública.

Recomendações

Use as recomendações a seguir como ponto de partida. Seus requisitos podem ser diferentes da arquitetura descrita aqui.
  • VCN

    Ao criar uma VCN, determine o número de blocos CIDR necessários e o tamanho de cada bloco com base no número de recursos que você planeja anexar a sub-redes na VCN. Use blocos CIDR que estejam dentro do espaço de endereço IP privado padrão.

    Selecione blocos CIDR que não se sobreponham a nenhuma outra rede (no Oracle Cloud Infrastructure, em seu data center local ou em outro provedor de nuvem) para a qual você pretende configurar conexões privadas.

    Depois de criar uma VCN, você poderá alterar, adicionar e remover seus blocos CIDR.

    Ao projetar as sub-redes, considere seus requisitos de fluxo de tráfego e segurança. Anexe todos os recursos dentro de uma camada ou atribuição específica à mesma sub-rede, que pode servir como um limite de segurança.

    Usar sub-redes regionais.

  • Limites de conexão do serviço Network Load Balancer

    O Balanceador de Carga de Rede L3/L4 do OCI é um serviço gratuito e dimensiona automaticamente com base no tráfego. Os balanceadores de carga de rede têm um limite de conexão simultânea padrão de 330.000 conexões por AD (Domínio de Disponibilidade). Em três regiões do AD, por padrão, os balanceadores de carga de rede têm um limite de conexão simultânea de um milhão.

  • Listas de segurança

    Use listas de segurança para definir regras de entrada e saída que se aplicam a toda a sub-rede.

  • Grupos de segurança de rede (NSGs)

    Você pode usar NSGs para definir um conjunto de regras de entrada e saída que se aplicam a VNICs específicas. Recomendamos o uso de NSGs em vez de listas de segurança, porque os NSGs permitem que você separe a arquitetura de sub-rede da VCN dos requisitos de segurança do seu aplicativo.

  • Consulte o arquivo vtap.tf em GitHub para obter detalhes sobre o filtro de captura.
  • Consulte o arquivo cloud_init/vtap_sink.yml para obter detalhes sobre como tcpdump está configurado e como funciona o decapsulamento do tráfego espelhado encapsulado de VXLAN.

Considerações

Ao implementar essa solução, considere o seguinte:

  • Tráfego do protocolo da Internet

    Esta solução é desenvolvida e testada apenas para tráfego IPv4.

  • Permissões

    Você deve ter as permissões necessárias do Oracle Cloud Infrastructure Identity and Access Management para o compartimento e a região escolhidos, para criar todos os recursos do OCI necessários para esta implantação.

  • Parâmetros configuráveis

    Consulte o arquivo variables.tf para exibir todos os parâmetros configuráveis.

  • Origens e regras do VTAP
    • Um VTAP deve sempre ter uma origem, um destino e um filtro de captura associado.
    • Um filtro de captura sempre deve ter pelo menos uma regra associada.
    • Uma VTAP nunca pode ser uma origem para mais de um VTAP.

Implante

Faça download do código em GitHub, personalize o código e implante-o. O Terraform configurará todos os recursos necessários na tenancy do OCI.

Você pode usar a implantação com um clique usando o OCI Resource Manager ou fazer download do código para implantar em uma máquina de desenvolvimento local.

Os links estão disponíveis em GitHub.

  1. Vá para GitHub.
  2. A seção Implantar do documento README é exibida.
  3. Siga as instruções no documento README.

Explorar Mais

Saiba mais sobre o Oracle Cloud Infrastructure e o espelhamento de rede:

Revise estes recursos adicionais:

Reconhecimentos

  • Autor: Mayur Raleraskar