Como Configurar um Servidor WireGuard em 5 Minutos

WireGuard é um protocolo de VPN moderno, rápido e simples. Diferente do OpenVPN e IPSec, ele foi projetado para ser mínimo — menos código, menos superfície de ataque, mais performance.

Por que WireGuard?

  • Código mínimo (~4000 linhas no kernel Linux)
  • Performance superior ao OpenVPN
  • Configuração declarativa (apenas chaves e IPs)
  • Roaming automático entre redes

Configurando o servidor com Docker

docker run -d \
  --name wireguard \
  --cap-add NET_ADMIN \
  --cap-add SYS_MODULE \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=America/Sao_Paulo \
  -e SERVERURL=vpn.seusite.com \
  -e SERVERPORT=51820 \
  -e PEERS=5 \
  -e PEERDNS=1.1.1.1 \
  -p 51820:51820/udp \
  -v /opt/wireguard:/config \
  linuxserver/wireguard:latest

Conectando um cliente

Copie o arquivo peer1.conf gerado no diretório /opt/wireguard e importe no seu cliente:

[Interface]
PrivateKey = <chave-privada>
Address = 10.13.13.2/32
DNS = 1.1.1.1

[Peer]
PublicKey = <chave-publica-servidor>
Endpoint = vpn.seusite.com:51820
AllowedIPs = 0.0.0.0/0

Pronto. VPN funcional em menos de 5 minutos.