Sem KYC · DMCA ignorado · sem logs. Pague com cripto: BTC, USDT, USDC, ETH, SOL, LTC, XMR
Idioma: Português
Implantar um VPS

Guia · WireGuard no Debian e Ubuntu

Como configuro o WireGuard em um VPS?

Todos os comandos para um servidor VPN WireGuard no Debian 12 ou Ubuntu 24.04: pacotes, chaves, arquivos do servidor e do cliente, IP forwarding, NAT e uma primeira conexão.

Última atualização: · 8 min de leitura

Resposta rápida

Como configuro o WireGuard em um VPS?

Para configurar o WireGuard em um VPS, instale o pacote wireguard, gere um par de chaves para o servidor e um por dispositivo, e escreva o /etc/wireguard/wg0.conf. Depois ative o IP forwarding e o NAT, inicie o wg-quick@wg0 e importe o arquivo do cliente. Na OffshoreKVM, um VPS KVM com Debian 12 ou Ubuntu 24.04 custa a partir de $3.08 por 30 dias. Sem KYC, pague com cripto.

O que preciso antes de começar?

ServidorUm VPS KVM com kernel próprio. OffshoreKVM KVM 1 (1 vCPU, 1 GB RAM, 20 GB NVMe, 2 TB de tráfego) é suficiente para uma residência
AcessoAcesso root por SSH com a sua própria chave pública; o login por senha fica desativado por padrão. Os comandos abaixo rodam como root
SistemaDebian 12 ou Ubuntu 24.04 LTS; ambos estão entre as imagens da OffshoreKVM
Pacoteswireguard e iptables, do repositório da própria distribuição
PortaUDP 51820, a porta usada nos exemplos da documentação do WireGuard
Endereços de túnel10.8.0.0/24: servidor 10.8.0.1, primeiro dispositivo 10.8.0.2
Apps para clientesWireGuard para Windows, macOS, Android, iOS e Linux, listado em wireguard.com
PreçoKVM 1 $3.08, KVM 2 $4.92, KVM 4 $8.25, KVM 8 $13.50, KVM 16 $20.62 a cada 30 dias. Sem KYC, somente cripto

Como configurar um servidor WireGuard, passo a passo?

Nove passos, de uma VPS Debian 12 ou Ubuntu 24.04 recém-instalada até um celular que navega por ela.

  1. Conectar e atualizar

    Faça login com ssh root@YOUR_VPS_IP e depois rode apt update && apt upgrade -y.

  2. Instalar WireGuard e iptables

    Rode apt install -y wireguard iptables. As ferramentas do WireGuard apenas recomendam um pacote de firewall, e as regras de NAT abaixo usam iptables.

  3. Gerar as chaves

    Rode cd /etc/wireguard && umask 077. Faça o servidor formar par com wg genkey | tee server.key | wg pubkey > server.pub. Faça o dispositivo formar par com wg genkey | tee phone.key | wg pubkey > phone.pub.

  4. Descobrir a interface pública

    Rode ip route show default. A palavra depois de dev, como eth0 ou ens3, é a interface de que a regra de NAT precisa.

  5. Escrever o arquivo do servidor

    Crie /etc/wireguard/wg0.conf com a chave privada do servidor, a porta de escuta, as regras de NAT e um bloco [Peer] por dispositivo, como mostrado abaixo.

  6. Ativar o encaminhamento de IP

    Rode echo 'net.ipv4.ip_forward=1' > /etc/sysctl.d/99-wireguard.conf && sysctl --system. Sem isso, a VPS descarta o tráfego do túnel.

  7. Iniciar o túnel na inicialização

    Rode systemctl enable --now wg-quick@wg0 e depois wg show para ver a interface, a porta e o peer.

  8. Criar e importar o arquivo do cliente

    Escreva phone.conf como mostrado abaixo. Importe-o no app WireGuard ou exiba-o como QR code com qrencode -t ansiutf8 < /etc/wireguard/phone.conf.

  9. Testar o túnel

    Ative o túnel e abra qualquer site. No servidor, wg show agora mostra um latest handshake recente, e os sites veem o endereço da VPS.

O que vai no wg0.conf do servidor?

O arquivo do servidor contém a chave privada do servidor, seu endereço de túnel, a porta de escuta, as regras de NAT e um bloco [Peer] por dispositivo. O heredoc abaixo preenche as duas chaves a partir dos arquivos criados no passo 3. Substitua eth0 pela interface do passo 4 antes de rodar.

O WireGuard identifica cada dispositivo pela sua chave pública: um pacote só é aceito se for assinado por uma chave conhecida e vier do AllowedIPs desse peer.

Servidor: /etc/wireguard/wg0.conf (rode como root)
cd /etc/wireguard
cat > wg0.conf <<EOF
[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = $(cat server.key)
# Forward tunnel traffic and hide it behind the VPS address (eth0 = your interface)
PostUp = iptables -I FORWARD -i %i -j ACCEPT
PostUp = iptables -I FORWARD -o %i -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
PostUp = iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT
PostDown = iptables -D FORWARD -o %i -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
PostDown = iptables -t nat -D POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

[Peer]
# phone
PublicKey = $(cat phone.pub)
AllowedIPs = 10.8.0.2/32
EOF
chmod 600 wg0.conf

%i é substituído pelo nome da interface, wg0, quando wg-quick executa as linhas PostUp e PostDown. MASQUERADE reescreve cada pacote para o endereço da interface de saída. O manual do iptables prefere SNAT --to-source YOUR_VPS_IP para um endereço estático; ambos funcionam aqui.

O que vai na configuração do cliente?

O arquivo do cliente contém a chave privada do dispositivo, seu endereço de túnel, um servidor DNS e a chave pública e o endereço do servidor. AllowedIPs = 0.0.0.0/0, ::/0 envia todo o tráfego para o túnel, IPv6 incluído, então nada vaza para fora dele. Com o servidor somente IPv4 acima, o tráfego IPv6 simplesmente para, e a maioria dos apps volta para IPv4.

Cliente: /etc/wireguard/phone.conf (criado no servidor)
cd /etc/wireguard
cat > phone.conf <<EOF
[Interface]
PrivateKey = $(cat phone.key)
Address = 10.8.0.2/32
DNS = 9.9.9.9

[Peer]
PublicKey = $(cat server.pub)
Endpoint = YOUR_VPS_IP:51820
AllowedIPs = 0.0.0.0/0, ::/0
EOF

# Phone: scan this QR code in the WireGuard app
apt install -y qrencode
qrencode -t ansiutf8 < phone.conf

# Linux computer: copy phone.conf to /etc/wireguard/, then
# wg-quick up phone

Use qualquer resolvedor DNS de sua confiança no lugar de 9.9.9.9. Em um cliente Linux, a linha DNS precisa de resolvconf ou openresolv, que o Debian lista como pacotes sugeridos. Apague phone.key e phone.conf do servidor depois que o dispositivo tiver sua cópia.

Preciso abrir uma porta no firewall?

Somente se um firewall rodar na VPS: ele precisa liberar a entrada UDP 51820 e deixar o tráfego do túnel passar. Com ufw, rode ufw allow 51820/udp. As regras FORWARD em wg0.conf são inseridas no topo da chain, à frente da política padrão DROP que ufw define para o tráfego roteado. Mantenha a porta 22 aberta antes de ativar qualquer firewall, ou você se tranca para fora.

Como adiciono outro dispositivo?

Cada dispositivo recebe seu próprio par de chaves, seu próprio endereço de túnel e seu próprio bloco [Peer]. Rode wg genkey | tee laptop.key | wg pubkey > laptop.pub em /etc/wireguard. Adicione um [Peer] com PublicKey definido para a nova chave pública e AllowedIPs = 10.8.0.3/32. Aplique sem derrubar os outros dispositivos: systemctl reload wg-quick@wg0, que executa wg syncconf. Monte laptop.conf como phone.conf, com Address = 10.8.0.3/32.

Como roteio IPv6 pelo túnel?

Adicione um intervalo IPv6 privado dos dois lados, encaminhe-o e faça NAT como no IPv4. Escolha um intervalo local único aleatório, como fd42:42:42::/64.

  • Servidor: Address = 10.8.0.1/24, fd42:42:42::1/64, e no peer AllowedIPs = 10.8.0.2/32, fd42:42:42::2/128.
  • NAT: copie as três linhas PostUp e PostDown com ip6tables e o intervalo IPv6.
  • Cliente: Address = 10.8.0.2/32, fd42:42:42::2/128.
  • Encaminhamento: adicione net.ipv6.conf.all.forwarding=1 em /etc/sysctl.d/99-wireguard.conf.

Verifique uma coisa antes. Com o encaminhamento ativado, o kernel Linux ignora anúncios de roteador a menos que accept_ra seja 2. Se sua VPS aprende sua rota IPv6 dessa forma, defina net.ipv6.conf.eth0.accept_ra=2 no mesmo arquivo.

Por que o túnel conecta, mas nenhum site carrega?

O handshake funciona, mas o tráfego para no servidor, quase sempre por um de quatro motivos.

  • O encaminhamento está desligado: sysctl net.ipv4.ip_forward precisa mostrar 1.
  • Interface errada na regra de NAT: compare eth0 em wg0.conf com ip route show default.
  • Nenhum handshake: o IP ou a porta do endpoint está errado, ou um firewall bloqueia a UDP 51820.
  • Os nomes não resolvem: o cliente não tem uma linha DNS funcionando, ou falta resolvconf em um cliente Linux.

Depois de cada ajuste, rode systemctl restart wg-quick@wg0 e teste de novo.

Qual VPS devo usar para WireGuard?

Qualquer VPS KVM com um endereço IPv4 funciona; o plano depende de quanto tráfego passa pelo túnel. A página sobre qual é o melhor VPS offshore para WireGuard compara planos, cotas e localizações. Os preços de cada plano estão em quanto custa um VPS offshore na OffshoreKVM. Antes de confiar nele para privacidade, leia o que seu provedor de VPS pode ver no seu servidor.

WireGuard em um VPS: FAQ

Qual porta o WireGuard usa?

O WireGuard não tem porta fixa. ListenPort é opcional e, sem ele, o servidor escolhe uma porta aleatória. UDP 51820 é a porta nos exemplos oficiais, então a maioria dos guias a usa.

Preciso do PersistentKeepalive?

Normalmente não. O manual do wg diz que a maioria dos usuários não precisará. Adicione PersistentKeepalive = 25 ao [Peer] do cliente apenas se o servidor precisar alcançar um dispositivo que está atrás de NAT e fica ocioso.

Este guia funciona no Debian 13 ou Ubuntu 22.04?

Sim. Ambos trazem o WireGuard em seus repositórios padrão, então os mesmos comandos funcionam. Apenas versões do Debian anteriores ao Bullseye precisam de backports, conforme a página de instalação do WireGuard.

O host do meu VPS pode ver o que eu faço pelo túnel?

O túnel termina no VPS, então o tráfego sai dele como tráfego normal de internet; o HTTPS mantém o conteúdo da página criptografado. Sem logs: não guardamos logs de conexão, logs de tráfego nem endereços IP de visitantes ou clientes, no site, no painel ou no VPS. O guia sobre se você precisa de um VPS offshore ou de uma VPN avalia os prós e contras.

Quanto tempo até meu VPS ficar pronto?

Uma pessoa cria o seu VPS assim que o pagamento é confirmado, e ele fica pronto minutos depois, nunca mais de uma hora após essa confirmação; o seu painel mostra o status e, quando o VPS está rodando, o endereço IP. A configuração do WireGuard em si leva alguns minutos depois que você consegue fazer login.

Obtenha um VPS para seu servidor WireGuard

Debian 12 ou Ubuntu 24.04 em KVM, a partir de $3.08 por 30 dias. Sem KYC, somente cripto.

Fontes (10)
  1. Instalação — WireGuard (read 2026-10-29)
  2. Início rápido — WireGuard (read 2026-10-29)
  3. manual wg(8) — wireguard-tools (read 2026-10-29)
  4. manual wg-quick(8) — wireguard-tools (read 2026-10-29)
  5. [email protected] — wireguard-tools (read 2026-10-29)
  6. Pacote wireguard-tools (bookworm) — Debian (read 2026-10-29)
  7. IP Sysctl (ip_forward, forwarding, accept_ra) — The Linux Kernel documentation (read 2026-10-29)
  8. iptables-extensions(8): MASQUERADE, SNAT, conntrack — Debian manpages (read 2026-10-29)
  9. sysctl(8) — Debian manpages (read 2026-10-29)
  10. qrencode(1) — Debian manpages (read 2026-10-29)

A partir de $3.08/mês · sem KYC

Implantar um VPS