|

Como configurar e gerenciar sua própria rede privada virtual usando o WireGuard.

Utilizar um serviço VPN de terceiros é simples, porém implica em confiar em terceiros com parte do seu tráfego online. Se deseja mais controle, menos variáveis e uma VPN que possa ser utilizada em seus próprios dispositivos ou rede interna, a opção mais direta muitas vezes é criar sua própria VPN com o WireGuard.

Este manual fornece informações sobre WireGuard, motivos para sua popularidade, instruções para configurar um servidor básico em um VPS Linux, além de abordar aspectos como roteamento, regras de firewall, configuração do cliente e possíveis problemas comuns.

Explicação sobre o WireGuard.

O WireGuard é um protocolo VPN contemporâneo e uma implementação de software que foi desenvolvida com o objetivo de ser fácil de configurar e mais acessível para auditorias em comparação às tecnologias VPN tradicionais. Ele é descrito como um túnel de rede seguro que utiliza pares de chaves públicas e privadas para autenticação, e sua ferramenta oficial oferece uma interface direta para a criação de pares e a atribuição de IPs permitidos.

Em uma perspectiva prática, o WireGuard estabelece uma conexão segura entre dispositivos, onde cada dispositivo se torna um par e recebe um conjunto exclusivo de chaves e um endereço IP VPN. No sistema Linux, o WireGuard é integrado como uma interface de rede e o processo de inicialização oficial faz uso de ferramentas de rede comuns, como ip juntamente com wg ou wg-quick, para ativar e desativar os túneis de forma eficiente.

Por que optar por hospedar sua própria rede privada virtual (VPN)?

Uma rede privada virtual (VPN) WireGuard hospedada pelo próprio usuário geralmente se trata de ter controle, não de ser anônimo.

Por exemplo, poderá ser benéfico quando precisar de:

  • Acessar remotamente um laboratório ou serviços internos.
  • Segurança do tráfego em redes Wi-Fi em hotéis, aeroportos e cafés.
  • Estabelecer uma conexão segura entre um telefone, laptop e desktop por meio de um túnel privado.
  • Mostrar uma rede privada somente para dispositivos permitidos.
  • Evite a sobrecarga e a complexidade dos programas VPN antigos.

Resumindo, mesmo que use um VPS para todo o tráfego, ele ainda será identificado como a fonte desse tráfego. Uma VPN auto-hospedada deve ser vista como um acesso remoto privado com um transporte criptografado sob seu controle.

Quando o WireGuard é mais apropriado do que o OpenVPN.

O WireGuard é frequentemente selecionado devido à sua simplicidade e leveza. A documentação do projeto destaca seu design minimalista, escolhas criptográficas avançadas e um modelo de configuração mais simples, baseado em chaves, em comparação com as complexas pilhas de VPN tradicionais.

Isso não quer dizer que o OpenVPN esteja ultrapassado. O OpenVPN ainda é utilizado em cenários que o requerem, principalmente onde a compatibilidade com sistemas antigos é importante. No entanto, se a intenção é estabelecer uma VPN pessoal de forma rápida e simples no Linux, o WireGuard é geralmente a melhor opção inicial.

Quais são os requisitos necessários antes de iniciar?

Para uma instalação simples, você precisará de:

  • Um servidor virtual privado Linux com permissão de acesso root ou sudo.
  • Um endereço IPv4 público é essencial, e o IPv6 é uma vantagem adicional.
  • um aparelho cliente, como um laptop ou celular
  • A habilidade de autorizar o tráfego UDP na porta preferida do WireGuard, geralmente 51820.

Um VPS é frequentemente a opção mais conveniente para hospedar o WireGuard, fornecendo um IP público estável e evitando problemas com o roteador doméstico. Além disso, ao escolher onde implementá-lo, um VPS pode ser usado como um servidor intermediário para conexões SSH, painéis internos ou serviços privados mais simples.

Explicação do funcionamento do WireGuard em termos gerais.

WireGuard fundamenta-se em pares e chaves para garantir a segurança da conexão.

O servidor e os clientes possuem chaves privadas e públicas. As chaves públicas são trocadas entre eles, endereços IP VPN são atribuídos e são definidos os intervalos IP autorizados para cada par atravessar o túnel.

Essa última parte é crucial. No WireGuard, o AllowedIPs atua como uma diretriz de roteamento e um identificador de pares. Se for definido de forma muito abrangente ou duplicado erroneamente entre os pares, pode resultar em redirecionamento incorreto do tráfego ou falha total na comunicação.

Como criar sua própria rede privada virtual com WireGuard.

O exemplo a seguir demonstra o uso de comandos no Ubuntu ou em sistemas com estilo Debian. Embora o processo seja parecido em outras distribuições Linux, o WireGuard oferece instruções oficiais de instalação para diversas plataformas.

Passo 1: Implementar a instalação do WireGuard.

Atualize os pacotes primeiro e depois proceda com a instalação do WireGuard e suas ferramentas.

O uso do qrencode é facultativo, porém recomendado caso deseje criar um código QR para usuários de dispositivos móveis posteriormente.

Etapa 2: Habilitar o redirecionamento de IP.

Um servidor VPN deve rotear dados entre o túnel e a rede pública.

Abra o arquivo /etc/sysctl.conf e verifique se essas linhas estão presentes.

Implementar a alteração.

Se você pretende usar somente o IPv4, pode optar por não se preocupar com o IPv6, porém é aconselhável considerar a possibilidade de implementá-lo no futuro.

Etapa 3: Criar chaves do servidor.

Gerar uma chave secreta e obter a chave compartilhada.

O projeto WireGuard utiliza o mesmo modelo fundamental de criação de chaves em seu guia de início rápido oficial.

Você tem a possibilidade de visualizar a chave pública utilizando:

Não divulgue a chave secreta.

Etapa 4: Elaborar a configuração do servidor.

Criar um arquivo chamado wg0.conf no diretório /etc/wireguard.

Trocar por outra coisa.

  • Chave privada do servidor com o conteúdo do arquivo /etc/wireguard/server.key.
  • eth0 com a sua interface de rede pública real se não for igual.

Esta disposição realiza quatro funções.

  1. Associa a rede privada virtual à máquina do servidor.
  2. Indica ao WireGuard em qual porta UDP deve ficar atento.
  3. possui a chave privada do servidor
  4. Permite redirecionamento e tradução de endereços de rede (NAT) para que os clientes possam acessar a internet por meio do VPS.

Se o seu servidor está configurado com nftables em vez de iptables, é possível realizar a mesma ação. O tipo específico de firewall utilizado é menos relevante do que garantir que o encaminhamento e o mascaramento estejam corretamente configurados.

Etapa 5: Inicie o firewall.

Autorizar a passagem de tráfego UDP pela porta do WireGuard.

Se optar por utilizar o UFW:

Caso o seu provedor tenha um firewall em nuvem ou grupo de segurança, certifique-se de permitir também o UDP 51820. Muitas vezes, essa é a causa de uma configuração aparentemente correta que ainda não consegue se conectar.

Etapa 6: Inicie a escavação do túnel.

Eleve a interface.

Então, certifique-se de conferir.

O guia de inicialização rápida oficial descreve o processo fundamental de criar uma interface, configurar endereços, carregar a configuração e ativar o dispositivo.

Sétimo passo: Gerar chaves de acesso para o cliente.

Gerar um par de chaves para o cliente, seja no servidor ou no próprio dispositivo do cliente.

Agora você possui:

  • Chave do cliente.
  • Pode fornecer mais contexto ou detalhes sobre o texto que deseja parafrasear? Dessa forma, poderei ajudá-lo com mais precisão.

Mantenha a chave privada do cliente segura.

Etapa 8: Incluir o cliente como um parceiro no servidor.

Modificar o arquivo /etc/wireguard/wg0.conf inserindo:

Trocar o CLIENT_PUBLIC_KEY pelo conteúdo de cliente.pub.

Depois, faça a recarga da configuração.

Etapa 9: Elaborar as especificações do cliente.

No cliente, utilize uma configuração semelhante a esta.

Substitua as lacunas evidentes pelos seus valores reais.

Alguns pontos a serem observados:

  • Permitindo que todo o tráfego seja direcionado pela VPN, independente da origem.
  • Se deseja apenas acessar recursos privados, opte por algo mais específico, como a rede 10.8.0.0/24.
  • Muitas vezes, definir PersistentKeepalive = 25 pode ser benéfico para clientes que estão atrás de um NAT.

Caso deseje inserir as configurações no app móvel de forma digital, é possível criar um código QR.

Comparación entre túnel completo y túnel dividido.

Essa é uma das escolhas mais cruciais em qualquer cenário envolvendo o WireGuard.

Um túnel completo implica que toda a atividade dos clientes é direcionada através da VPN. Este é o ponto de partida.

Um túnel segmentado implica que somente as redes escolhidas são direcionadas através da VPN, como por exemplo:

Utilize um túnel completo para garantir uma conexão segura à internet em redes não confiáveis, ou se deseja que o tráfego seja direcionado a partir do seu servidor. Opte por um túnel dividido caso necessite apenas de acesso remoto a serviços internos e deseje que o tráfego comum da internet permaneça local.

Problemas típicos que comprometem a eficácia do WireGuard.

A maioria dos problemas com o WireGuard são causados por um número limitado de questões.

Erro no nome da interface em regras NAT.

Se a configuração do seu servidor indicar eth0, mas a interface pública for ens3 ou enp1s0, o masquerading não funcionará corretamente.

Checar com:

Envio de endereço IP ausente.

Caso o encaminhamento não esteja habilitado, o túnel pode ser exibido, mas os clientes não conseguirão utilizar para rotear o tráfego.

O firewall aceita conexões SSH, mas bloqueia o tráfego UDP na porta 51820.

O WireGuard utiliza UDP em vez de TCP, o que pode facilitar a permissão de algo inadequado.

Permitido duplicar ou incorretamente duplicar DIPs.

Se dois conjuntos de pares indicam ter o mesmo IP do cliente, a rotação pode se tornar confusa. Certifique-se de que as designações dos pares sejam distintas e exclusivas.

Não há firewall atrás de NAT.

Algumas redes móveis e residenciais costumam eliminar de forma agressiva os mapas de conexões inativas UDP. A opção PersistentKeepalive = 25 frequentemente resolve problemas de conectividade intermitente.

Não se lembrar de reiniciar ou carregar novamente após fazer mudanças na configuração.

O WireGuard não aplicará as modificações feitas no arquivo wg0.conf a menos que você recarregue ou reinicie a interface.

Deveria implementar o WireGuard no Docker?

Você tem a opção de fazer isso, porém, normalmente torna as coisas mais complicadas sem trazer nenhum benefício real, se o seu objetivo é apenas ter um servidor VPN simples.

Realizar a instalação do WireGuard diretamente no VPS simplifica a rede, especialmente ao lidar com encaminhamento IP, regras de firewall e comportamento da interface. Embora os contêineres possam ser úteis em configurações mais complexas, para uma única VPN auto-hospedada, a instalação nativa geralmente é a opção mais simples.

Orientações de segurança para uma VPN WireGuard hospedada por si mesmo.

Uma VPN que é auto-hospedada pode ser considerada simples, no entanto, requer atenção aos princípios básicos de segurança.

É importante manter o servidor atualizado, restringir o acesso SSH e adicionar apenas chaves que são essenciais. Caso um dispositivo seja perdido ou não seja mais utilizado, é necessário remover a chave correspondente e gerar uma nova configuração conforme necessário. Devido ao WireGuard depender de chaves, é mais relevante manter a higiene das chaves do que se preocupar com a complexidade da senha.

Também é uma boa ideia restringir as capacidades da VPN. Se a intenção for somente acessar alguns serviços remotamente, é preferível utilizar regras de firewall mais restritas e permitir IPs específicos em vez de transformar a VPN em um gateway para todos os fins.

Quando um servidor virtual privado é apropriado para utilizar o WireGuard.

Um servidor virtual privado é uma escolha conveniente quando se deseja um ponto de acesso público confiável sem depender do provedor de serviços de internet, roteador ou alterar o endereço IP residencial.

Essa disposição é particularmente vantajosa para:

  • Controle administrativo remoto
  • painéis exclusivos e recursos internos
  • Comunicação protegida em redes Wi-Fi públicas utilizando criptografia.
  • Passagem de tráfego por um servidor sob seu controle, conhecido como túnel.

Se você está atualmente utilizando infraestrutura alugada para projetos secundários, um VPS de pequeno porte geralmente é adequado para implementar um projeto pessoal ou um WireGuard de pequena escala.

Resumo ou ponto final.

Hospedar sua própria VPN com WireGuard é uma forma prática de garantir acesso remoto seguro e tráfego criptografado, sem a complicação de uma VPN tradicional. Ao entender conceitos como pares, chaves, PermitirIPs e encaminhamento, a configuração se torna simples e eficiente, sendo facilmente escalável para vários dispositivos.

Agradeço por sua leitura! Caso deseje utilizar o WireGuard em um servidor Linux de forma eficiente, o QDE VPS Hosting disponibiliza acesso root completo, virtualização KVM, armazenamento NVMe puro, backups diários e conexão de 10 Gbps da Holanda.

Precisa de suporte para selecionar o plano adequado ou configurar seu dispositivo? Contate o QDE para receber assistência na busca da melhor opção para você.

Dúvidas comuns sobre como hospedar sua própria VPN usando WireGuard.

É complicado configurar sua própria rede privada virtual utilizando o WireGuard?

Devido a isso, o WireGuard é menos complexo do que várias alternativas de VPN mais antigas, já que se baseia em um conjunto reduzido de conceitos: pares, chaves, endereços e rotas permitidas. A configuração geralmente se torna mais fácil de gerenciar quando as regras de encaminhamento de pacotes e firewall são configuradas.

WireGuard supera o OpenVPN?

Em várias situações de auto-hospedagem, o WireGuard é frequentemente mais simples de configurar e mais eficiente em termos de recursos do que o OpenVPN. No entanto, o OpenVPN ainda é relevante em ambientes que requerem compatibilidade com sistemas mais antigos ou ferramentas já existentes. O projeto do WireGuard destaca sua base de código menor, design criptográfico moderno e configuração simplificada.

É possível instalar o WireGuard em um servidor VPS?

Sim, um Servidor Privado Virtual (VPS) é frequentemente utilizado para hospedar o WireGuard devido à sua capacidade de fornecer um IP público fixo, acesso root e uma conexão de rede mais estável em comparação com uma conexão residencial.

Uma VPN auto-hospedada pode me tornar anônimo?

Uma rede privada virtual auto-hospedada oferece maior privacidade e segurança, principalmente em redes não confiáveis, porém o tráfego ainda passa pela infraestrutura sob seu controle. Deve-se considerar mais como um meio de transporte seguro e acesso privado, e não como garantia de anonimato.

Qual é a porta utilizada pelo WireGuard?

O WireGuard normalmente utiliza a porta UDP 51820, mas é possível alterar essa configuração para outra porta UDP, se for preciso. Os guias oficiais de configuração rápida também demonstram o WireGuard funcionando com UDP e uma porta de escuta que pode ser configurada.

É possível utilizar o WireGuard para implementar um túnel dividido?

Sim, os túneis divididos são configurados usando as Permissões de IPs. É possível encaminhar somente sub-redes privadas pela VPN ou encaminhar todo o tráfego por ela usando 0.0.0.0/0 e :/0.

Onde consigo acessar os documentos oficiais do WireGuard?

Uma boa forma de iniciar é acessando o site oficial do WireGuard e consultando o tutorial de instalação e de início rápido.

Posts Similares

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *