O que é o kill switch de uma VPN?
O kill switch de uma VPN é um recurso que bloqueia o tráfego de rede caso o túnel da VPN se desconecte de forma inesperada. Este artigo explica o que o kill switch realmente faz, como é implementado no nível do sistema operacional e como verificar se o recurso está funcionando corretamente.
Definição
O kill switch é um controle no nível da rede que impede o tráfego de sair do dispositivo por uma interface desprotegida enquanto a VPN está nominalmente ativa. Se o túnel da VPN se desconectar — seja por mudanças na rede, falha do servidor ou qualquer outro motivo — o kill switch garante que o tráfego não volte silenciosamente para a interface de rede padrão.
O recurso às vezes também é chamado de “bloqueio de rede,” “proteção sempre ativa” ou “kill switch de internet.” O comportamento é o mesmo, independentemente do nome.
Por que o kill switch existe
Os túneis de VPN nem sempre são perfeitamente estáveis. Mudanças na rede — alternar do Wi-Fi para os dados móveis, mover-se entre pontos de acesso, passar por túneis — podem interromper brevemente a conexão. Manutenção do servidor, problemas intermitentes de peering ou erros raros de protocolo também podem causar desconexões.
Sem um kill switch, o sistema operacional encaminha o tráfego por qualquer interface que continue disponível. Do ponto de vista do usuário, o dispositivo parece continuar funcionando normalmente — as páginas carregam, os aplicativos se conectam — mas o tráfego agora passa pela rede local e pelo provedor de internet, e não pela VPN.
Para quem depende da VPN para ter privacidade ou para acessar serviços específicos de uma região, esse retorno silencioso anula o propósito de usar uma VPN. O kill switch garante que a conexão seja suspensa em vez de redirecionada silenciosamente.
Como ele é implementado
As implementações de kill switch variam conforme a plataforma. Existem duas abordagens gerais.
Implementação no nível do sistema
Em plataformas com suporte nativo a VPN, o kill switch é imposto pelo sistema operacional. No iOS, o framework Network Extension oferece uma opção “includeAllNetworks” que, combinada com regras de roteamento apropriadas, impede o tráfego de sair do dispositivo por qualquer interface que não seja o túnel. Isso é imposto no nível do kernel e se aplica a todos os aplicativos, inclusive os que rodam em segundo plano.
No Linux, os kill switches normalmente são implementados com regras de firewall — iptables ou nftables — que bloqueiam todo o tráfego, exceto os pacotes destinados ao endereço do servidor VPN. As regras são adicionadas quando o túnel é estabelecido e removidas quando ele é desconectado intencionalmente.
Implementação no nível do aplicativo
Alguns aplicativos de VPN implementam o kill switch dentro do próprio aplicativo, monitorando o túnel e ajustando as regras de roteamento ou firewall em resposta à desconexão. As implementações no nível do aplicativo são mais flexíveis, mas dependem de o aplicativo continuar ativo para impor a política.
A imposição no nível do sistema costuma ser mais confiável porque continua funcionando mesmo que o aplicativo de VPN trave ou seja encerrado.
Tipos de kill switch
Os kill switches podem ser configurados em vários modos, que diferem em quão agressivos são ao bloquear o tráfego.
- Kill switch permanente. O tráfego é bloqueado sempre que a VPN não está conectada de forma ativa, inclusive quando o aplicativo não foi aberto. Isso oferece a garantia mais forte, mas exige uma ação explícita para ser desativado.
- Kill switch de sessão. O tráfego é bloqueado apenas durante uma sessão ativa da VPN. Se o usuário se desconectar manualmente, o kill switch é desativado e o tráfego normal é retomado.
- Kill switch específico por aplicativo. Disponível em algumas plataformas de desktop, esse modo bloqueia aplicativos específicos quando a VPN cai, permitindo que os demais continuem normalmente. A configuração é útil para ferramentas que lidam com dados sensíveis, mas essa granularidade aumenta a complexidade.
Quando o kill switch é acionado
O kill switch foi projetado para lidar com situações que o sistema operacional normalmente não trataria como falhas. Os acionamentos mais comuns incluem:
- O servidor VPN fica inacessível devido a quedas de rede ou manutenção do lado do servidor.
- A interface de rede do dispositivo muda — por exemplo, ao passar do Wi-Fi para os dados móveis — e o túnel não se restabelece rapidamente.
- Um erro no nível do protocolo faz com que o túnel seja encerrado.
- A rede local descarta pacotes enviados ou recebidos do servidor VPN, inclusive em certos cenários de portal cativo (captive portal).
Em cada uma dessas situações, o kill switch suspende o tráfego até que o túnel seja restabelecido ou que o usuário desative explicitamente o kill switch.
Limitações
O kill switch é um recurso de defesa, não uma solução completa. Vale destacar duas limitações.
A transição nem sempre é instantânea. Entre o momento em que o túnel falha e o momento em que o kill switch entra plenamente em ação, pode existir uma pequena janela durante a qual o tráfego poderia, em teoria, vazar. Em sistemas bem projetados, essa janela é curta o bastante para ser praticamente desprezível — normalmente alguns milissegundos — mas nem sempre é zero. As implementações no nível do sistema fecham essa janela de forma mais confiável do que as do nível do aplicativo.
Vazamentos de DNS são uma preocupação à parte. O kill switch impede o tráfego IP de sair por interfaces desprotegidas, mas as consultas de DNS às vezes podem contornar o túnel pelas configurações padrão do sistema. Uma configuração completa usa tanto um kill switch quanto o roteamento de DNS pelo túnel. A Snap VPN configura ambos por padrão.
Verificação
É possível verificar um kill switch simulando uma falha do túnel e confirmando que o tráfego é bloqueado.
- Conecte-se à VPN e confirme que um serviço de verificação de IP mostra o endereço do servidor.
- Sem desconectar pelo aplicativo, desative a interface de rede que a VPN está usando — por exemplo, desligando o Wi-Fi enquanto o túnel está ativo.
- Tente carregar uma página da web. Com um kill switch funcionando, a página não deve carregar até que o túnel seja restabelecido ou que o kill switch seja desativado intencionalmente.
No iOS, o kill switch é imposto no nível do sistema quando o perfil da VPN é configurado com as opções apropriadas. A Snap VPN ativa o kill switch por padrão e não o expõe como um ajuste opcional — o recurso faz parte da configuração padrão, e não de um ajuste que possa ser desativado sem querer.
Para saber mais sobre a configuração de VPN e o que se pode esperar de uma VPN, veja nossa introdução às VPNs e o guia de configuração no iPhone.