O que é WireGuard?

WireGuard é um protocolo VPN moderno e de alto desempenho, projetado para simplicidade e velocidade. Diferentemente de protocolos mais antigos, como OpenVPN ou IPsec, WireGuard utiliza criptografia de última geração (Curve25519 para troca de chaves, ChaCha20 para criptografia e Poly1305 para autenticação) e funciona com código mínimo — aproximadamente 4.000 linhas em comparação com centenas de milhares em soluções legadas. Este design enxuto facilita a auditoria, acelera o estabelecimento de conexões e é mais confiável em mudanças de rede, como alternar entre Wi-Fi e dados móveis.

WireGuard funciona criando túneis criptografados ponto-a-ponto entre um servidor e um ou mais clientes. Cada lado mantém uma chave privada e conhece a chave pública de seus pares. Uma vez configurado, o tráfego flui pelo túnel perfeitamente, com o protocolo gerenciando handshakes, rotação de chaves e pacotes keepalive automaticamente.

Descrição da ferramenta

Esta ferramenta gera arquivos de configuração WireGuard prontos para uso tanto no lado do servidor quanto do cliente. Ela cria automaticamente pares de chaves X25519 criptograficamente válidos, constrói arquivos .conf adequadamente formatados e permite gerenciar múltiplos clientes a partir de uma única interface. Você pode baixar cada arquivo de configuração diretamente ou escanear um código QR para configuração rápida em dispositivos móveis.

Exemplos

Saída de configuração do servidor:

[Interface]
PrivateKey = aGVsbG93b3JsZC4uLi4uLi4uLi4uLi4uLi4uLi4=
Address = 10.0.0.1/24
ListenPort = 51820
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT
SaveConfig = true

[Peer]
PublicKey = Y2xpZW50cHVibGlja2V5Li4uLi4uLi4uLi4uLi4=
AllowedIPs = 10.0.0.2/32

Saída de configuração do cliente:

[Interface]
PrivateKey = Y2xpZW50cHJpdmF0ZWtleS4uLi4uLi4uLi4uLi4=
Address = 10.0.0.2/32
DNS = 1.1.1.1, 1.0.0.1

[Peer]
PublicKey = c2VydmVycHVibGlja2V5Li4uLi4uLi4uLi4uLi4=
Endpoint = vpn.example.com:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25

Recursos

  • Gera pares de chaves X25519 criptograficamente válidos diretamente no navegador usando Curve25519
  • Produz arquivos .conf para download tanto para o servidor quanto para todos os clientes
  • Exibe códigos QR para configurações de cliente, permitindo configuração instantânea de dispositivos móveis

Opções explicadas

  • Nome do servidor — um rótulo usado no comentário do arquivo de configuração e no nome do arquivo para download
  • Porta do servidor — a porta UDP na qual WireGuard escuta (padrão: 51820)
  • Endereço IP do servidor — o endereço da sub-rede VPN para a interface do servidor (por exemplo, 10.0.0.1/24)
  • Endpoint do servidor — o hostname público ou IP e porta aos quais os clientes se conectam
  • MTU — tamanho máximo da unidade de transmissão; deixe em branco para usar o padrão do sistema (normalmente 1420)
  • PostUp / PostDown — comandos shell executados quando a interface é ativada ou desativada (comumente usado para regras NAT do iptables)
  • IPs permitidos — intervalos de IP que o cliente roteia através do túnel; 0.0.0.0/0, ::/0 roteia todo o tráfego
  • DNS — servidores DNS que o cliente usa enquanto conectado
  • PersistentKeepalive — intervalo em segundos para pacotes keepalive, útil para clientes atrás de NAT (padrão: 25)