Avançar para o conteúdo principal
BlogueRedesComo construir um gateway NAT em um VPC com Linode

Como criar um gateway NAT em um VPC com Linode

Texto: Como construir um gateway NAT em um VPC com Linode

Um dos nossos clientes que lida com dados sensíveis dos clientes precisava de uma infraestrutura de nuvem segura para as suas aplicações Web e bases de dados. Implementámos um Gateway NAT numa VPC para permitir que as instâncias em sub-redes privadas acedessem à Internet para actualizações e chamadas de API, bloqueando simultaneamente o tráfego de entrada. Esta solução fornece acesso à Internet a instâncias privadas sem as expor diretamente à Internet pública, aumentando a segurança. Eis o que fizemos:

Este diagrama ilustra uma configuração típica de VPC dividida em três secções principais: VPC, sub-rede pública e sub-rede privada. Primeiro, temos a caixa verde externa, a VPC, que isola os recursos dentro dela de outras redes. Os utilizadores acedem ao servidor Web através da Internet pública utilizando um endereço IP estático atribuído através de NAT 1:1. O servidor Web processa os pedidos e, se necessário, comunica com o servidor de base de dados. O servidor Web comunica com o servidor da base de dados através do Servidor de encaminhamento. O servidor do router utiliza a NAT personalizada para encaminhar de forma segura o tráfego entre as sub-redes pública e privada. O servidor de banco de dados, localizado na sub-rede privada, recebe solicitações do servidor Web por meio do VLAN. O isolamento da sub-rede privada garante que o servidor de banco de dados não seja exposto diretamente à Internet, aumentando a segurança. Neste tutorial, vamos percorrer os passos para configurar esta arquitetura, garantindo uma comunicação segura e eficiente entre as sub-redes privada e pública. Criaremos uma VPC com uma sub-rede pública e privada, configuraremos o gateway NAT e definiremos o VLAN. 

Tutorial

Neste tutorial, estaremos criando um Gateway NAT em um VPC, assim como o diagrama que acabamos de passar. Se você já tem uma conta Linode, pode passar para a etapa 1. Se você não tiver uma conta Linode, use este link para se inscrever e obter $ 100 em créditos gratuitos para seguir as etapas a seguir. A partir do Linode Dashboard, vamos criar um VPC com duas sub-redes: uma sub-rede pública e uma sub-rede privada. Na sub-rede privada, vamos adicionar uma base de dados e, na sub-rede privada, vamos adicionar 2 instâncias: uma que actuará como servidor Web e outra que actuará como servidor de router (NAT personalizado). 

Passo 1: Criar uma VPC

A primeira etapa para criar um gateway NAT em uma VPC é criar a VPC para isolar logicamente nossos recursos. Lembre-se de que essa é a caixa verde do diagrama que vimos. As sub-redes privadas e públicas viverão dentro desta VPC.

Para fazer isso, no Linode Cloud Manager, clique em VPC no painel esquerdo e, em seguida, clique em Criar VPC.

Passo 2: Configurar a sub-rede pública

A seguir, precisamos de adicionar uma sub-rede pública na VPC que irá conter o servidor do router (NAT personalizado) e o servidor Web. Lembre-se de que esse é o quadrado azul do diagrama que examinamos.

Na parte inferior do ecrã, onde diz Subnets, adicione uma etiqueta para a sub-rede pública. Essa sub-rede hospedará o servidor do roteador (NAT personalizado) e o servidor da Web.

Em seguida, clique em Criar VPC para provisionar a VPC.

Verá a sub-rede pública criada com o ID de sub-rede e o intervalo de IP correspondentes.

Passo 3: Implementar o servidor do router e o servidor Web

Em seguida, precisamos implantar 2 instâncias do Linode na sub-rede pública. Uma instância do Linode actuará como o nosso servidor de router (NAT personalizado), que tratará das operações NAT para gerir o tráfego entre as sub-redes pública e privada. O outro servidor actuará como servidor Web para lidar com o tráfego de entrada da Internet e encaminhar os pedidos necessários para a sub-rede privada. Primeiro, vamos criar o servidor do roteador. No Cloud Manager, clique em Linodes no painel esquerdo e, em seguida, clique em Criar Linode. Escolha a mesma região que escolheu quando criou a VPC e, em seguida, selecione a opção Dedicated 8 GB CPU.

Em seguida, desloque-se para baixo e atribua a VPC que criou no Passo 1 e, em seguida, escolha a sub-rede pública no menu pendente.

Clique em Criar Linode para concluir o provisionamento desta instância.

Agora, vamos criar o servidor Web, usando o mesmo processo acima. Clique em Criar Linode, selecione a região que escolheu para a sua VPC e, em seguida, atribua a VPC a esta instância. Verá agora o servidor Web e o servidor de router listados na VPC sob a sub-rede pública. 

Passo 4: Criar uma sub-rede privada

Em seguida, precisamos de criar a sub-rede privada dentro da VPC para alojar o servidor da base de dados, que não terá acesso direto à Internet pública. Estamos agora a construir a caixa roxa.

A partir da sua VPC, clique em Criar Sub-rede e, em seguida, introduza uma etiqueta e atribua o intervalo de IP privado. Esta sub-rede mantém a sua base de dados protegida de quaisquer ameaças externas.

Etapa 5: Implantar o servidor de banco de dados 

Agora, vamos implantar uma instância do Linode na sub-rede privada para servir como nosso servidor de banco de dados. Essa instância só será acessível a partir da sub-rede pública por meio do site seguro VLAN. No painel esquerdo do Linode Cloud Manager, clique em Bancos de dados e, em seguida, clique em Criar cluster de banco de dados. Digite um rótulo e escolha seu mecanismo de banco de dados preferido.

Lembre-se de que esta base de dados não pode ser diretamente acessível à Internet pública, como acontece com os outros servidores. Na parte inferior do ecrã, onde diz Adicionar controlos de acesso, vamos adicionar o intervalo de endereços UP permitido para a sub-rede privada que criámos acima. 

Em seguida, clique em Criar cluster de base de dados. Note que esta base de dados pode demorar até 30 minutos a ser aprovisionada.

Passo 6: Configurar VLAN

De seguida, precisamos de estabelecer um VLAN para permitir uma comunicação segura entre as sub-redes pública e privada. 

Isto garante que o tráfego entre o servidor Web e o servidor de base de dados permanece privado e seguro. A partir do servidor do router, clique no separador Configurações e, em seguida, clique em Editar.

Desloque-se para baixo até à secção Rede. Clique no menu suspenso sob a interface de rede desejada e selecione VLAN. Normalmente, eth1 ou eth2 seriam usadas ao adicionar a primeira ou a segunda VLAN a uma instância de computação, respetivamente, uma vez que a interface de rede eth0 da instância é normalmente configurada para acessar a Internet pública.

Ao lado da interface selecionada, aparece um menu secundário para introduzir a etiqueta VLANe o endereço IP a utilizar. 

Clique no texto do espaço reservado para "Criar ou selecionar um VLAN" e introduza um nome para o VLAN. Em seguida, clique em Guardar alterações. Verá agora todas as interfaces de rede listadas no separador de configurações.

Passo 8: Testar a conetividade

Agora, vamos testar a conetividade para verificar se o servidor do router está a tratar corretamente as operações NAT. Também precisamos de garantir que o servidor Web pode comunicar com o servidor da base de dados através de VLAN e que o servidor da base de dados não está diretamente exposto à Internet.

Navegue até ao primeiro servidor de router que criámos e inicie a consola do LISH. Em seguida, faça ping na rede privada da base de dados utilizando o endereço IP.

A saída deve mostrar os pacotes ICMP transmitidos e recebidos com sucesso desta instância para a base de dados na rede privada.

Vantagens desta arquitetura

Existem algumas vantagens importantes na utilização desta arquitetura. Em primeiro lugar, obtém-se uma maior segurança. Uma VPC permite o isolamento de recursos em sub-redes distintas (públicas e privadas). Um gateway NAT garante que as instâncias em sub-redes privadas podem aceder à Internet sem as expor diretamente a ameaças públicas da Internet. Ao utilizar um gateway NAT numa VPC, apenas o tráfego de saída é permitido a partir de instâncias privadas para a Internet, evitando ligações de entrada não solicitadas que possam representar riscos de segurança. Colocamos a base de dados dentro da sub-rede privada, e os itens sensíveis aqui estão protegidos da exposição direta à Internet, reduzindo o risco de violações de dados.

Esta arquitetura também aumenta consideravelmente a escalabilidade. Os gateways NAT são projetados para gerenciar volumes substanciais de tráfego e podem se ajustar automaticamente às demandas crescentes, eliminando a necessidade de intervenção manual. À medida que a carga de tráfego aumenta, o gateway NAT dimensiona os seus recursos para manter um desempenho ótimo e garantir uma disponibilidade contínua. Esta escalabilidade automatizada é particularmente benéfica para as plataformas de comércio eletrónico, que frequentemente apresentam padrões de tráfego flutuantes devido a vendas sazonais, promoções e comportamentos variáveis dos clientes. Ao tirar partido das gateways NAT, os programadores podem garantir que as suas aplicações permanecem receptivas e fiáveis, mesmo sob elevada procura, proporcionando, em última análise, uma melhor experiência ao utilizador e apoiando o crescimento do negócio.

Construir um gateway NAT em um VPC usando Linode fornece uma maneira segura e eficiente de gerenciar o tráfego de rede entre recursos públicos e privados. Ele garante que suas instâncias privadas possam acessar os recursos externos necessários e, ao mesmo tempo, protegê-las da exposição direta à Internet, aumentando a segurança, a escalabilidade e a eficiência da sua infraestrutura de nuvem. 

Seguindo as etapas descritas acima e usando o diagrama fornecido como referência, você pode não apenas proteger os dados confidenciais dos seus clientes, mas também otimizar o desempenho da sua rede. Se é um programador que procura otimizar a sua segurança na nuvem e pretende criar mais recursos na nuvem, utilize esta ligação para se candidatar a até $5.000 em créditos Linode.

Comentários

Deixe uma resposta

O seu endereço de correio electrónico não será publicado. Os campos obrigatórios estão marcados com *