# Como configuro o WireGuard em um VPS?

> Como configuro o WireGuard em um VPS? 9 passos para Debian 12 e Ubuntu 24.04: instalação, chaves, wg0.conf, NAT. VPS a partir de US$ 3,08, sem KYC, com cripto.

- URL: https://offshorekvm.com/pt/how-to-set-up-wireguard-on-a-vps/
- Última atualização: 2026-10-29
- Editor: OffshoreKVM (https://offshorekvm.com)

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.

**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?

| Atributo | Valor |
| --- | --- |
| Servidor | Um 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 |
| Acesso | Acesso 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 |
| Sistema | Debian 12 ou Ubuntu 24.04 LTS; ambos estão entre as imagens da OffshoreKVM |
| Pacotes | `wireguard` e `iptables`, do repositório da própria distribuição |
| Porta | UDP 51820, a porta usada nos exemplos da documentação do WireGuard |
| Endereços de túnel | 10.8.0.0/24: servidor 10.8.0.1, primeiro dispositivo 10.8.0.2 |
| Apps para clientes | WireGuard para Windows, macOS, Android, iOS e Linux, listado em wireguard.com |
| Preço | KVM 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)*

```bash
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)*

```bash
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](https://offshorekvm.com/pt/best-offshore-vps-for-wireguard/ "Plans, locations and traffic for a WireGuard VPS") compara planos, cotas e localizações. Os preços de cada plano estão em [quanto custa um VPS offshore na OffshoreKVM](https://offshorekvm.com/pt/pricing/ "OffshoreKVM plans and prices"). Antes de confiar nele para privacidade, leia [o que seu provedor de VPS pode ver no seu servidor](https://offshorekvm.com/pt/what-can-my-vps-provider-see/ "What a VPS host can and cannot see").

## 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](https://offshorekvm.com/pt/offshore-vps-vs-vpn/ "Offshore VPS or commercial VPN compared") 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. [Implantar KVM 1 com Debian 12](https://offshorekvm.com/app/checkout/?plan=kvm-1&location=nl-ams&image=debian-12&lang=pt) · [Comparar planos](https://offshorekvm.com/pt/pricing/ "Quanto custa um VPS offshore no OffshoreKVM?")

## Fontes

1. [Instalação](https://www.wireguard.com/install/) — WireGuard (read 2026-10-29)
2. [Início rápido](https://www.wireguard.com/quickstart/) — WireGuard (read 2026-10-29)
3. [manual wg(8)](https://git.zx2c4.com/wireguard-tools/about/src/man/wg.8) — wireguard-tools (read 2026-10-29)
4. [manual wg-quick(8)](https://git.zx2c4.com/wireguard-tools/about/src/man/wg-quick.8) — wireguard-tools (read 2026-10-29)
5. [wg-quick@.service](https://git.zx2c4.com/wireguard-tools/tree/src/systemd/wg-quick@.service) — wireguard-tools (read 2026-10-29)
6. [Pacote wireguard-tools (bookworm)](https://packages.debian.org/bookworm/wireguard-tools) — Debian (read 2026-10-29)
7. [IP Sysctl (ip_forward, forwarding, accept_ra)](https://docs.kernel.org/networking/ip-sysctl.html) — The Linux Kernel documentation (read 2026-10-29)
8. [iptables-extensions(8): MASQUERADE, SNAT, conntrack](https://manpages.debian.org/bookworm/iptables/iptables-extensions.8.en.html) — Debian manpages (read 2026-10-29)
9. [sysctl(8)](https://manpages.debian.org/bookworm/procps/sysctl.8.en.html) — Debian manpages (read 2026-10-29)
10. [qrencode(1)](https://manpages.debian.org/bookworm/qrencode/qrencode.1.en.html) — Debian manpages (read 2026-10-29)

---

OffshoreKVM: A OffshoreKVM vende VPS KVM Linux offshore na Holanda, Islândia, Suíça e Romênia, pagos com cripto e sem KYC: sem documento de identidade, sem selfie, sem documentos. É operada pela DomaineGoat LLC, empresa registrada no Panamá que ignora notificações de DMCA, responde apenas à lei panamenha e não mantém logs. Todo plano custa pelo menos 25% menos que o plano comparável mais barato de 24 provedores de VPS cripto sem KYC verificados em 29 de outubro de 2026.
