Passar para o conteúdo principal

Como criar sua própria VPN com WireGuard na VPS

Ter a sua própria VPN hospedada na sua VPS traz vantagens incríveis: você navega pela internet utilizando o IP do seu servidor (mascarando sua localização real), protege seus dados ao usar redes Wi-Fi públicas e pode acessar os serviços internos da sua máquina sem precisar expor portas para a internet.

O WireGuard é o protocolo de VPN mais moderno, leve e rápido do mercado. Neste guia, você vai aprender a configurar sua rede privada em menos de 5 minutos utilizando o Ubuntu ou Debian.

1. Instalando os pacotes necessários

Acesse a sua VPS via SSH (usando PuTTY ou o terminal do seu sistema) com o usuário root e instale o WireGuard e o gerador de QR Code:

sudo apt update && sudo apt install -y wireguard qrencode nano

2. Gerando as chaves do Servidor

O WireGuard funciona com um sistema de chaves públicas e privadas. Vamos gerar as chaves da sua VPS:

wg genkey | sudo tee /etc/wireguard/server.key | wg pubkey | sudo tee /etc/wireguard/server.pub sudo chmod 600 /etc/wireguard/server.key

3. Configurando o Servidor

Agora vamos criar o arquivo principal de configuração. Abra o editor de texto:

sudo nano /etc/wireguard/wg0.conf

Cole a configuração abaixo.

Atenção: Se a interface de rede principal da sua VPS não for eth0 (você pode verificar digitando ip route | grep default), altere o nome nas linhas PostUp e PostDown.

[Interface] 
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = CONTEUDO_server.key
PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

(Dica: Para ver o conteúdo da sua chave privada e colar ali, digite cat /etc/wireguard/server.key em outra janela do SSH).

Salve o arquivo (Ctrl+O, Enter, Ctrl+X).

Ativando o roteamento e o Firewall:

Para que a VPS consiga repassar a sua internet, ative o IP Forwarding e libere a porta no firewall interno do Linux:

echo "net.ipv4.ip_forward=1" | sudo tee /etc/sysctl.d/99-wg.conf && sudo sysctl --system
sudo ufw allow 51820/udp
sudo systemctl enable --now wg-quick@wg0

Aviso HypeHost: Não se esqueça da regra do duplo firewall! Acesse o painel app.hypehost.com.br, vá na aba Firewall da sua VPS e crie uma regra permitindo a porta 51820 com o protocolo UDP.

4. Adicionando um dispositivo (Celular ou Computador)

Para cada dispositivo que for conectar à VPN, você precisa gerar um par de chaves. Vamos criar para um celular:

wg genkey | tee cel.key | wg pubkey > cel.pub

Volte ao arquivo do servidor (sudo nano /etc/wireguard/wg0.conf) e adicione o bloco do seu cliente no final do arquivo:

[Peer]
PublicKey = CONTEUDO_cel.pub
AllowedIPs = 10.8.0.2/32

Reinicie o servidor do WireGuard para aplicar:

sudo systemctl restart wg-quick@wg0

Criando o arquivo de configuração do Cliente:

Agora, crie o arquivo que será lido pelo seu celular ou computador:

nano cel.conf

[Interface] 
PrivateKey = CONTEUDO_DE_cel.key
Address = 10.8.0.2/24
DNS = 1.1.1.1

[Peer]
PublicKey = CONTEUDO_server.pub
Endpoint = IP_DA_SUA_VPS:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25

Lendo a configuração no celular:

Para não precisar digitar tudo no celular, use o gerador de QR Code no terminal da VPS:

qrencode -t ansiutf8 < cel.conf

Um QR Code vai aparecer na sua tela preta do terminal! Abra o aplicativo do WireGuard no seu celular, toque no botão de adicionar túnel e escolha "Ler código QR". Se for usar no computador, basta baixar o arquivo cel.conf e importá-lo no aplicativo de desktop.

5. Como testar a conexão

Ative a VPN no seu aplicativo.

  • No dispositivo: Abra o navegador e acesse o site https://hypehost.com.br/qual-meu-ip - Ele deve mostrar o IP público da sua VPS, confirmando que você está navegando por ela.

  • Na VPS: Digite o comando sudo wg. Ele mostrará os detalhes do túnel e confirmará o "handshake" (conexão bem-sucedida) com o seu dispositivo, exibindo a quantidade de dados transferidos.

Respondeu à sua pergunta?