Seu Próprio AmneziaWG: Dois Anos Depois - O Que Quebra no Uso Diário e Como Eu Resolvo

Seu Próprio AmneziaWG: Dois Anos Depois - O Que Quebra no Uso Diário e Como Eu Resolvo

Após dois anos utilizando um servidor VPN AmneziaWG pessoal, o autor compartilha os problemas mais comuns encontrados no uso diário, desde instabilidade em redes móveis até a configuração de acesso segmentado, e detalha as soluções aplicadas.

MundiX News·25 de junho de 2026·10 min de leitura·👁 1 views

Montar seu próprio VPN em um VPS barato é uma tarefa que pode ser concluída em uma noite. No entanto, o que acontece depois, geralmente, é um tópico evitado: após uma semana, a conexão no celular começa a falhar, o servidor precisa de atualizações, é necessário conceder e revogar acessos para amigos, e alguns usuários podem querer acessar sites brasileiros diretamente enquanto roteiam todo o resto para o exterior. É sobre esse segundo nível de complexidade que falaremos.

Eu mantenho meu servidor há alguns anos, com minha esposa e alguns amigos conectados. Nesse período, acumulei um entendimento sobre o que geralmente dá errado. Quase tudo que será descrito abaixo exigiu correções em minha própria configuração ou foi resolvido com base em relatórios de outros usuários nos issues do projeto. Reuni tudo em um só lugar.

Um Breve Resumo: O Que o AmneziaWG Mascara

O WireGuard padrão é rápido e leve, mas seu tráfego possui uma assinatura característica. Sistemas de filtragem aprenderam a identificá-lo e bloqueá-lo, mesmo quando o servidor é pessoal. O AmneziaWG mascara essa assinatura misturando pacotes de lixo ao fluxo de dados (parâmetros Jc/Jmin/Jmax), ocultando cabeçalhos de serviço em intervalos aleatórios (H1-H4) e, na versão 2.0, adicionando os chamados pacotes CPS (I1-I5), que simulam um protocolo de terceiros no início da conexão. Tudo isso é processado no kernel, então em hardware decente a máscara de tráfego quase não afeta a velocidade. Em um VPS muito fraco, isso pode ser diferente, mas abordaremos isso mais adiante.

Não entrarei em detalhes sobre o protocolo, pois isso já foi feito em um artigo detalhado da própria Amnezia sobre o AmneziaWG 2.0. Para fins práticos, o importante é que ajustar esses parâmetros manualmente é difícil e propenso a erros. Os intervalos H1-H4, por exemplo, não devem se sobrepor e não devem cair em valores reservados, caso contrário, a conexão simplesmente não será estabelecida. Por isso, eu não os modifico manualmente: o instalador gera intervalos corretos e não sobrepostos, tornando-os aleatórios em cada instalação para que cada servidor tenha uma impressão digital única, em vez de uma única para todos.

Parâmetros de ofuscação gerados pelo instalador

Parâmetros de ofuscação gerados pelo instalador: número e tamanho dos pacotes de lixo Jc/Jmin/Jmax e intervalos não sobrepostos H1-H4

Como Eu Instalo e Atualizo

Tudo é instalado com um único comando em um Ubuntu ou Debian limpo:

bash
wget -O install_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.16.1/install_amneziawg.sh
sudo bash ./install_amneziawg.sh

Este é o amneziawg-installer, meu instalador de código aberto para AmneziaWG 2.0 em servidores dedicados Ubuntu 24.04/25.10/26.04 e Debian 12/13. Ele pergunta a porta e algumas outras informações, e depois opera sozinho: instala o protocolo, configura o firewall, gera os parâmetros de ofuscação, o servidor e clientes prontos com códigos QR. Em arquiteturas ARM (Raspberry Pi, Oracle Ampere, Hetzner arm64), ele primeiro tenta usar um módulo de kernel pré-compilado para alvos conhecidos e, se não houver correspondência, compila via DKMS. Há versões em russo e inglês. Se o servidor solicitar uma reinicialização durante a instalação, execute o comando novamente, e ele continuará de onde parou.

Eu desenvolvi o instalador propositalmente para que o servidor execute apenas o VPN, sem painel web ou Docker. Em casa, um painel não é necessário: todas as operações são uma ou duas linhas de comando, e um processo rodando constantemente consome memória em um servidor barato e expõe uma porta desnecessária. Se você não está gerenciando um serviço para centenas de clientes, isso é uma troca de conveniência que você usará poucas vezes.

Por Que a Conexão Falha no Celular e O Que Ajuda

A pergunta mais frequente após a instalação é: "Na internet de casa tudo funciona perfeitamente, mas no celular, depois de um tempo, a conexão trava". Isso não é um bug do servidor. Operadoras de telefonia móvel filtram de forma mais agressiva do que as provedoras de internet fixa, e o que elas menos gostam são os pacotes de lixo grandes que o WireGuard usa por padrão para se disfarçar. Com um tráfego de lixo amplo, a conexão é identificada e estrangulada por algumas operadoras, enquanto com um tráfego mais estreito, ela passa.

Para isso, o instalador possui um perfil dedicado:

bash
sudo bash ./install_amneziawg.sh --preset=mobile --yes

Ele fixa o parâmetro Jc=3 e restringe o tamanho dos pacotes de lixo a um intervalo estreito. Os valores não foram escolhidos aleatoriamente: parte deles foi testada por mim com o que tinha à mão, e o restante foi compilado a partir de relatórios do projeto. Para a Tele2, um baixo número de pacotes de lixo funciona melhor, por isso o perfil mobile define Jc=3; para Yota/Tele2 em Moscou, a combinação Jc=3, Jmin=40, Jmax=70 funcionou. No entanto, esta não é uma receita universal, mas sim uma primeira tentativa: para a mesma Yota, encontrei uma variação com tamanho diferente e I1 binário, e na MTS no Primorye, o perfil mobile padrão não foi suficiente, sendo necessário um I1 curto como I1 = <r 48>. Se o perfil não funcionar, você pode ajustar I1 e Jmax usando a tabela de operadoras. E se você quiser definir os valores manualmente desde o início, há flags específicas para isso durante a instalação:

bash
sudo bash ./install_amneziawg.sh --jc=3 --jmin=30 --jmax=70 --yes

Em um servidor já em funcionamento, não é necessário reinstalar tudo para fazer isso: basta editar os parâmetros Jc/Jmin/Jmax diretamente no arquivo /etc/amnezia/amneziawg/awg0.conf, reiniciar o serviço awg-quick@awg0 e regenerar os arquivos de configuração dos clientes - use o comando manage regen nome para um cliente específico ou manage regen sem nome para todos. O importante é que os parâmetros de ofuscação coincidam no servidor e no cliente, caso contrário, a conexão não será estabelecida.

O segundo culpado em redes móveis é o MTU. Se houver perdas em transferências grandes (páginas abrem, mas um arquivo grande ou vídeo trava), diminuir o MTU no cliente pode ajudar. E um ponto adicional: em um VPS muito fraco, a ofuscação em um único thread pode sobrecarregar a CPU. Se a velocidade cair, verifique o comando top - se um núcleo estiver no limite e o tempo em %si (processamento de interrupções de rede) for alto, significa que o gargalo é a CPU, não o canal, e isso é resolvido com um servidor mais potente, não com ajustes de configuração.

O que eu testei pessoalmente é apenas uma pequena parte. Como cada operadora e provedor de hospedagem se comporta e o que ajuda, eu compilei em uma tabela no arquivo ADVANCED.md. Lá, você encontrará estatísticas acumuladas de dezenas de relatórios de usuários que configuraram seus próprios VPNs e compartilharam o que funcionou. Se você configurar o seu, adicione seu caso, isso realmente ajuda os próximos usuários.

Vida Após a Instalação: Clientes, Prazos e Backups

Depois disso, você gerencia o servidor com um único comando: manage. Muitos scripts terminam aqui, você instala e esquece. A forma completa é bash /root/awg/manage_amneziawg.sh, mas para simplificar, usarei manage.

Para adicionar um amigo:

bash
bash /root/awg/manage_amneziawg.sh add petya

O resultado é um arquivo de configuração, um link vpn:// e um código QR: abra o aplicativo Amnezia no seu celular, escaneie e pronto. Para ver quem está conectado e quem se conectou anteriormente, use o comando manage list.

Para remover um usuário: manage remove petya.

Lista de clientes com uma linha de comando

Lista de clientes com um único comando: mostra quem tem configuração e QR, e quem se conectou recentemente.

O que eu mais valorizo é o acesso temporário. Concedi a um conhecido acesso VPN para uma viagem de uma semana:

bash
bash /root/awg/manage_amneziawg.sh add guest --expires=7d

Após uma semana, o cliente será automaticamente desativado, sem a necessidade de limpeza manual ou de se lembrar dele. Há também backup e restauração de configurações com um único comando, regeneração de configuração e QR de um cliente existente (regen), e os comandos list e stats podem retornar dados em formato --json, caso você queira integrar algo próprio por cima.

Saída Segmentada: Brasil Diretamente, o Resto para o Exterior

Este cenário é cada vez mais solicitado, e encontrei poucas explicações claras na internet, por isso vou me aprofundar nele. A instalação padrão roteia todo o tráfego através do túnel. Isso faz com que sites brasileiros sejam acessados de um IP estrangeiro, com um salto extra, e alguns deles simplesmente não permitem acessos de IPs estrangeiros – bancos, portais governamentais e, às vezes, serviços de streaming.

Isso é resolvido com um cascade de dois servidores. O cliente se conecta a um servidor, e o tráfego é dividido no lado do servidor:

  • Para redes brasileiras – diretamente do servidor de entrada (sites brasileiros veem um IP brasileiro e abrem rapidamente);
  • Todo o resto – através de um segundo servidor no exterior (sites estrangeiros veem um IP estrangeiro).

É melhor manter o servidor de entrada na Rússia ou próximo a ela, e o de saída – um VPS estrangeiro comum. O servidor de entrada decide para onde rotear o pacote, com base em uma lista de redes brasileiras. Essa lista é obtida da zona aberta ipdeny, carregada no ipset, o tráfego para os endereços dessa lista passa sem o túnel, e o restante é marcado e enviado para o servidor de saída. Não há nada a configurar no cliente – você o adiciona com o comando manage add normal no servidor de entrada, e a divisão é feita inteiramente no servidor, sendo igual para todos.

Se você precisa de saída segmentada apenas para você, é mais simples definir a lista AllowedIPs diretamente no cliente (isso está detalhado no ADVANCED.md). O cascade é justificado quando você quer que a divisão seja feita no servidor e seja igual para todos que se conectam.

O cascade divide o tráfego com base no IP de destino, por endereços, não por domínios, e é daí que surgem suas nuances. A mais notável: Google e YouTube mantêm parte de seus caches em endereços brasileiros, portanto, por padrão, eles saem pelo servidor de entrada e veem um IP brasileiro – isso não é resolvido com substituição de DNS, é necessário rotear manualmente suas redes para o servidor de saída. Uma história semelhante ocorre com sites de órgãos governamentais, como o Gosuslugi: se seus endereços não estiverem na lista de redes brasileiras, eles sairão para o exterior, e o acesso de IPs estrangeiros não é permitido lá, então esses endereços são adicionados manualmente à lista. Além disso, a dupla encapsulação requer um MTU reduzido e sobrecarrega mais um VPS barato. Tudo isso, com diagnóstico, está detalhado no guia.

A ideia foi proposta por @glfenix em uma discussão do projeto. Eu montei o esquema em um ambiente de teste, testei, corrigi alguns pontos e organizei em um guia passo a passo – com um script de roteamento pronto e inicialização automática após a reinicialização. Desde então, outros o replicaram: na mesma discussão, relataram que o cascade foi configurado e está funcionando. Uma análise completa com passos, script e perguntas frequentes está no guia do cascade. O cascade não está incluído no instalador principal propositalmente: múltiplos servidores representam uma escala diferente, e não há lugar para isso em um único script.

Onde Pode Falhar

Nem sempre funciona de primeira. Com um provedor muito agressivo, pode não funcionar de primeira – será necessário ajustar o perfil de máscara ou trocar de provedor de hospedagem (e aqui ajuda o fato de que migrar é mais barato do que investigar a causa: o comando é o mesmo, depois o servidor se instala sozinho com algumas reinicializações, leva cerca de vinte minutos, mas não há nada a fazer manualmente – desinstalei, subi em outro VPS, distribuí novos links).

Os endereços de provedores de hospedagem populares como Hetzner já estão no radar de todos, e o tráfego para eles é frequentemente cortado – um VPS barato pode ser tratado como um item consumível e trocado se você não tiver sorte com a sub-rede. A internet móvel é mais caprichosa que a fixa. E ter seu próprio servidor custa alguns dólares por mês, não será gratuito.

Sobre a confiabilidade, direi apenas uma coisa, sem um diário de desenvolvimento. Eu não apenas envolvi comandos de terceiros em um script. No processo, surgiram problemas que quebrariam silenciosamente a instalação: por exemplo, a validação do endpoint do servidor, em uma ocasião, permitia como IP válido algo obviamente incorreto como 999.0.0.1. Isso é corrigido, existem testes para isso – e é por isso que em minha casa funciona de primeira e opera por meses sem supervisão.

Sobre Mim e Para Onde Olhar em Seguida

Eu sou o autor deste instalador. Não escrevo para vender – é gratuito, de código aberto sob licença MIT. Simplesmente, eu mesmo passei por tudo isso manualmente e quero que os outros gastem menos tempo. Se algo não funcionar, pergunte nos issues, ajudarei a resolver.

Projeto e equipe de instalação: https://github.com/bivlked/amneziawg-installer

Guia passo a passo para VPS com imagens: https://github.com/bivlked/amneziawg-installer/blob/main/INSTALL_VPS.md

Tabela de provedores e ajuste fino de máscara: https://github.com/bivlked/amneziawg-installer/blob/main/ADVANCED.md

Cascade de dois servidores: https://github.com/bivlked/amneziawg-installer/blob/main/CASCADE.md

De onde tudo começou, para quem está pensando em configurar: primeiro artigo

Na instalação, tudo isso parece um território para usuários de Linux. Mas quando o servidor já está funcionando, restam apenas alguns comandos, e eles rapidamente se tornam um hábito – mais ou menos como eu me acostumei com eles no passado.

🛡️⚡

Pare de pesquisar. Comece a hackear.

O MundiX é seu copiloto de pentest com IA: comandos exatos, análise de outputs e próximo passo na kill chain — em segundos.

Testar grátis por 7 dias →

Sem cartão para começar · Planos a partir de R$49/mês

📤 Compartilhar & Baixar

🧰 Ferramentas recomendadas

Divulgação: alguns links são patrocinados. Podemos receber comissão se você comprar — sem custo extra para você. Só indicamos o que faz sentido para a comunidade.

Aprendendo Kali Linux: Teste de segurança, pentest e hacking ético

Aprendendo Kali Linux: Teste de segurança, pentest e hacking ético

Com centenas de ferramentas pré-instaladas, a distribuição Kali Linux facilita o trabalho de os profissionais de segurança começarem a fazer testes de segurança rapidamente. No entanto, com mais de 600 ferramentas em seu arsenal, o Kali Linux também pode ser desafiador. A nova edição deste prático livro abrange as atualizações nas ferramentas e inclui uma melhor abordagem da análise forense e da engenharia reversa. Ric Messier, autor, não fica apenas no teste de segurança, mas também faz uma abordagem sobre a execução de análise forense, incluindo a análise em disco e na memória, assim como alguma análise básica de malware. • Explore as diversas ferramentas disponíveis no Kali Linux • Entenda o valor do teste de segurança e examine os tipos de teste disponíveis • Aprenda os aspectos básicos do pentest em todo o ciclo de vida do ataque • Instale o Kali Linux em vários sistemas, tanto físicos quanto virtuais • Descubra como usar diferentes ferramentas destinadas à segurança • Estruture um teste de segurança baseado nas ferramentas do Kali Linux • Estenda as ferramentas do Kali para criar técnicas de ataque avançadas • Use o Kali Linux para ajudar a criar relatórios quando o teste terminar “A abordagem concisa, clara e baseada na experiência adotada por Ric Messier para a introdução do Kali Linux e dos testes de cibersegurança é incomparável. Este livro é uma leitura excelente e acessível para iniciantes e um recurso valioso para qualquer pessoa.” —Alexander Arlt, Consultor sênior de segurança, Google

Ver na Amazon
Gshield 2 em 1 Hub Extensor Conector USB-C + USB-A e Adaptador de Rede Ethernet LAN RJ45 com 3 Entradas USB 3.0 até 5 Gbps em Liga de Alumínio para Computador e Notebook, Cinza

Gshield 2 em 1 Hub Extensor Conector USB-C + USB-A e Adaptador de Rede Ethernet LAN RJ45 com 3 Entradas USB 3.0 até 5 Gbps em Liga de Alumínio para Computador e Notebook, Cinza

Compatível com portas USB-C e USB-A, ideal para ampliar a conectividade de dispositivos como MacBook Pro e outros com portas USB-C. Inclui um adaptador USB-A extra, proporcionando uma conexão Ethernet estável e veloz de até 1 Gbps, perfeita para filmes, jogos online e videoconferências. Oferece três portas USB 3.0 com velocidades de transferência de até 5 Gbps, permitindo conectar mouse, teclado, discos rígidos e outros periféricos. Fabricado em alumínio durável, garantindo longa vida útil e resistência ao uso diário. Design compacto e leve, ideal para viagens de negócios e uso diário, facilitando o transporte e armazenamento. Funciona com Windows 10/8.1/8, Mac OS e Chrome OS, oferecendo versatilidade incomparável para diversas necessidades de conectividade. Assegura uma conectividade estável e rápida, perfeita para tarefas exigentes como transferência de dados, streaming e mais.

Ver na Amazon
Hacking APIs: Breaking Web Application Programming Interfaces

Hacking APIs: Breaking Web Application Programming Interfaces

Hacking APIs is a crash course on web API security testing that will prepare you to penetration-test APIs, reap high rewards on bug bounty programs, and make your own APIs more secure. You'll learn how REST and GraphQL APIs work in the wild and set up a streamlined API testing lab with Burp Suite and Postman. Then you'll master tools useful for reconnaissance, endpoint analysis, and fuzzing, such as Kiterunner and OWASP Amass. Next, you'll learn to perform common attacks, like those targeting an API's authentication mechanisms and the injection vulnerabilities commonly found in web applications. You'll also learn techniques for bypassing protections against these attacks. In the book's nine guided labs, which target intentionally vulnerable APIs, you'll practice: Enumerating APIs users and endpoints using fuzzing techniques Using Postman to discover an excessive data exposure vulnerability Performing a JSON Web Token attack against an API authentication process Combining multiple API attack techniques to perform a NoSQL injection Attacking a GraphQL API to uncover a broken object level authorization vulnerability

Ver oferta
Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition

Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition

Up-to-date strategies for thwarting the latest, most insidious network attacks This fully updated, industry-standard security resource shows, step by step, how to fortify computer networks by learning and applying effective ethical hacking techniques. Based on curricula developed by the authors at major security conferences and colleges, the book features actionable planning and analysis methods as well as practical steps for identifying and combating both targeted and opportunistic attacks. Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition clearly explains the enemy's devious weapons, skills, and tactics and offers field-tested remedies, case studies, and testing labs. You will get complete coverage of Internet of Things, mobile, and Cloud security along with penetration testing, malware analysis, and reverse engineering techniques. State-of-the-art malware, ransomware, and system exploits are thoroughly explained. Fully revised content includes 7 new chapters covering the latest threats Includes proof-of-concept code stored on the GitHub repository Authors train attendees at major security conferences, including RSA, Black Hat, Defcon, and B-Sides

Ver na Amazon
Bloqueador USB de privacidade de porta USB para PC, notebook, bloco de laptop,

Bloqueador USB de privacidade de porta USB para PC, notebook, bloco de laptop,

Proteção de privacidade aprimorada: protege o link de transmissão de dados para evitar roubo de informações, fornecendo proteção de segurança robusta que protege a privacidade do usuário durante transferências de arquivos e garante uma conexão segura para interações de dispositivos sem preocupações em vários ambientes Uso a longo prazo: a camada protetora resistente ao desgaste, combinada com um corpo de metal resistente, oferece gerenciamento de calor confiável e qualidade duradoura durante o uso diário Entrega eficiente de energia: a tecnologia de chip inteligente garante a identificação automática dos requisitos de energia, fornecendo carregamento eficiente alinhando-se com vários protocolos de carregamento rápido para maior conveniência Proteção contra sobrecarga: evitando riscos de sobrecarga, este bloqueador de dados USB protege a vida útil da bateria e garante um desempenho estável, mantendo um fluxo estável de energia para melhorar a longevidade do dispositivo de forma eficaz Prático de transportar: com atenção à portabilidade, este bloqueador de dados USB oferece um design compacto que é leve e fácil de transportar, melhorando a conveniência do usuário e operação eficiente

Ver na Amazon

📩 Newsletter MundiX

Receba novidades de cibersegurança + um checklist de pentest grátis. Sem spam.

Ao assinar você concorda em receber e-mails. Cancele quando quiser.