Túnel seguro de VPN confiável e escalável

PUBLICADO EM 18 de março de 2020

Visão geral

Quando você se conecta à Internet por meio de qualquer provedor de Internet, não tem dúvidas de que esse provedor levará tudo em consideração para garantir que sua conexão seja segura, mas e se você quiser se conectar a um serviço privado? Como garantir que do cliente ao servidor na infraestrutura pública o tráfego seja seguro? Está aqui quando VPN serviços ou Virtual Private Network tecnologias é necessária. Uma conexão segura é estabelecida entre os dois nós, garantindo que nenhum agente externo intercepte o tráfego, obtendo informações sensíveis.

VPN Os serviços fornecem várias habilidades, como:

Confidencialidade: impedindo que alguém leia seus dados. Isso é implementado com criptografia.
Autenticação: Verificando se os membros que criam o ponto a ponto são dispositivos legítimos.
Integridade: verificando se o pacote VPN não foi alterado de alguma forma durante o transporte.
Anti-replay: impedindo que alguém capture tráfego e o reenvie, tentando aparecer como um dispositivo / usuário legítimo.

Existem diferentes tipos de implementação no mercado, com base em padrões privados e abertos, focaremos este artigo nas soluções abertas, veja abaixo as mais relevantes.

IPSEC: Tornou-se o padrão de fato para as instalações VPN na Internet, implementa um grande número de algoritmos criptográficos e não conhece grandes vulnerabilidades.
OpenVPN: Muito popular, mas não baseado em padrões, usa protocolos de segurança personalizados, suporta TLS / SSL com Openssl e um grande número de algoritmos criptográficos.
L2TP: É uma extensão do PPTP, pode usar o IPSec como a camada de segurança, usada principalmente no passado pelos ISPs. Atualmente, existem melhores opções com melhor desempenho.
Vigia: É uma VPN extremamente rápida e extremamente fácil de instalar, usa os algoritmos criptográficos já incluídos no Kernel Linux, usa UDP e pode ser configurada em qualquer porta.

Ambiente VPN escalável

O objetivo deste artigo é descrever como criar um serviço com balanceamento de carga com configuração de alta disponibilidade para VPN serviços com Balanceador de carga ZEVENET. Focamos este artigo em Vigia, que usa porta 51820 UDP, mas pode ser estendido para outra solução semelhante com outro (s) protocolo (s) e porta (s).

Neste artigo, a configuração do VPN servidor é omitido, mas os seguintes pontos devem ser levados em consideração para dimensionar VPN em alta disponibilidade com sucesso:

A Os arquivos de configuração do servidor VPN precisam ser replicados em todo o VPN servidores que serão equilibrados.
Clientes VPN o tráfego precisa ter NAT no servidor VPN apenas para garantir que todas as conexões de entrada e saída de um cliente APN passem pelo mesmo servidor VPN no pool.

O diagrama a seguir descreve a arquitetura escalável a ser alcançada.

Arquitetura VPN Wireguard

1. Dois Vigia servidores que compartilham a mesma configuração.
2. Cada Vigia servidor cria a mesma rede privada 192.168.2.0/24.
3. Cada VPN O cliente receberá NAT com o IP do VPN servidor onde está conectado.
4. Os clientes se conectam a um IP público vpn.empresa.com via 51820 UDP, essa conexão será encaminhada para ZEVENET (192.168.100.10).
5. ZEVENET balanceará a carga das conexões do cliente com as disponíveis VPN servidores e, finalmente, o túnel será criado em um dos servidores.

Neste artigo, vamos detalhar 2 maneiras diferentes de configurar este serviço escalonável de VPN com ZEVENET: um via GUI da Web e outra via Interface da Linha de comando.

Configuração do serviço virtual VPN com ZEVENET

Esta seção explica como alcançar a configuração adequada com a interface da linha de comandos.

Leve em consideração que Protocolos VPN requerer Sessão de persistência habilidades para garantir que o mesmo cliente esteja conectado ao mesmo Backend durante um período de tempo mesmo se este cliente não gerar nenhum tráfego.

Para criar o Serviço virtual VPN, uma nova fazenda chamada VPNLB com perfil de l4xnat ouvindo 51820 UDP ligado ao IP virtual da VPN 192.168.100.10 e sNAT modo, em que o firewall fará conexões NAT de clientes com o seguinte comando:

zcli farm create -farmname VPNLB -vip 192.168.100.10 -vport 51820 -profile l4xnat

ou via interface web:

Modifique o Parâmetros Globais da fazenda para usar UDP protocolo e, em seguida, configure Sessão de persistência by IP fonte e um simples Algoritmo de balanceamento de carga by Peso.

zcli farm set VPNLB -protocol udp -nattype nat -persistence srcip -ttl 1800 -algorithm weight

ou via interface web:

Adicione dois Servidores back-end 192.168.100.11 e 192.168.100.12 para o farm já criado para o VPN serviço de balanceamento de carga. Porta não é necessário que seja configurado como o l4xnat vai usar o mesmo que no Porta virtual configurado.

zcli farm-service-backend add VPNLB default_service -ip 192.168.100.11
zcli farm-service-backend add VPNLB default_service -ip 192.168.100.12

ou via interface web:

Para selecionar apenas back-ends íntegros, vamos configurar uma verificação de integridade simples para os back-ends que garante a porta 51820 UDP está disponível no lado de back-end. Faça uma cópia de uma verificação de saúde genérica e pré-carregada atual chamada check_udp e edite-o. Recomendamos alterar o intervalo campo para 21 porque cada exame de saúde usa um tempo limite of 10 segundos, assim 10 segundos * 2 back-end + 1 segundo = 21 segundos.

zcli farmguardian create -copy_from check_udp -name check_udp_vpn
zcli farmguardian set check_udp_vpn -description "VPN check for UDP 51820" -interval 21

ou via interface web:

Por fim, adicione a verificação de integridade já criada chamada check_udp_vpn para o farm atual VPNLB.

zcli farm-service-farmguardian add VPNLB default_service -name check_udp_vpn

Mitigação de ataques DDoS com módulo IPDS

Os serviços de VPN geralmente são alvos de ataques e ameaças de segurança cibernética para aproveitar a conectividade remota para entrar nas redes da organização.

Por esse motivo, é recomendável completar nosso escalonável VPN serviço com um sistema de segurança para proteger nossa organização contra ataques externos. A seção atual explica como usar o ZEVENET Módulo IPDS e mitigar Ataques DDoS para Serviços VPN públicos muito facilmente.

Duas proteções diferentes são detalhadas nesta seção, com melhores resultados com este tipo de serviço: proteção IP via listas brancas e limites de conexão.

Permitindo acesso ao serviço VPN público a partir de uma determinada lista de permissões

O uso de lista negra/whitelist pode ser usado em serviços onde podemos garantir que a lista de clientes seja conhecida, por exemplo, uma Serviço VPN permitir o telecomunicações em uma organização de um determinado país.

Para configurar uma lista de permissões para Alemanha e rejeitar o tráfego de outros Endereços IP intervalos de países, aplique o seguinte:

1. Vá para IPDS> Blacklist e encontre lá a lista negra geo_ES_Alemanha. em seguida Editar esta regra da lista negra e altere o campo de política para Permitir para ser usado como lista de permissões.
2. Na mesma lista, vá para a guia Fazendas e mudar a fazenda VPNLB da coluna Fazendas disponíveis para Ativar farms.
3. Pressione o botão Jogar ícone incluído no Opções para ativar a lista de permissões.
4. Acesse IPDS> Lista negra e encontre lá a lista negra Todos os Produtos, vá para a guia Fazendas e mudar a fazenda VPNLB da coluna Fazendas disponíveis para Ativar farms.
5. Pressione o botão Jogar ícone de Opções para ativar a lista negra.

Com essa configuração, uma lista de permissões chamada geo_ES_Alemanha já pré-carregado em ZEVENET com todos os intervalos de IP em tal país é adicionado à fazenda VPNLB e lista negra adicional chamada Todos os Produtos em que o restante dos endereços IP é adicionado ao farm, portanto, se o IP do cliente não corresponder em nenhum intervalo da Alemanha, ele será descartado.

Permitindo acesso ao serviço VPN público com limites de conexão

Para aplicar esse tipo de Proteção contra DDoS é totalmente recomendável saber como funciona nosso serviço público, por exemplo, Vigia usa apenas uma conexão UDP por cliente. Portanto, se recebermos várias conexões simultâneas do mesmo IP de origem, podemos acreditar que mais de um teletrabalhador está se conectando atrás de um NAT que está ocultando o tráfego ou pode estar relacionado a um Ataque de inundação UDP. De qualquer forma, podemos entender que mais de 10 conexões por IP de origem não é um tráfego legitimado.

Para configurar um limite de conexões simultâneas por IP de origem para nosso Serviço virtual VPN faça o seguinte:

1. Acesse IPDS> DoS> Criar regra de DoS, crie uma nova regra com nome limit_per_source_IP e selecione o Tipo de regra limite total de conexão por IP de origem e imprensa Create.
2. No formulário de edição de regras, insira o limite de conexões simultâneas desejado no campo Limite total de conexões por IP de origem, no nosso caso 10 e imprensa Enviar.
3. Vá para a guia Fazendas e mudar a fazenda VPNLB da coluna Fazendas disponíveis para Ativar farms.

Com esta configuração, limitamos o número de conexões simultâneas por IP de origem a 10, não confiamos em nenhum IP de cliente que tente estabelecer mais de 10 conexões VPN. Caso você possa garantir que mais de um cliente nunca irá executar conexões através de qualquer NAT público, então o limit_per_source_IP pode ser configurado para apenas 1.

Aproveite o serviço VPN escalável, altamente disponível e seguro com ZEVENET!

Compartilhar no:

Documentação sob os termos da Licença de Documentação Livre GNU.

Esse artigo foi útil?

Artigos Relacionados