Guia · 1 min de leitura

VPN kill switch — bloqueia vazamentos se o túnel cair

Um kill switch para todos os tráfegos no momento em que seu VPN desconecta, para que seu IP real nunca vaze. Configurações para copiar e colar para Linux, macOS e Windows — além de um bloqueio de vazamento IPv6.

O que um kill switch faz

A kill switch bloqueia a internet do seu dispositivo no instante em que o túnel VPN cai, para que nada saia pela sua conexão real. Sem um, uma breve reconexão pode vazar seu verdadeiro IP para o que você estava fazendo. As regras abaixo permitem tráfego apenas através da interface s4m WireGuard (além do handshake para nosso servidor), e descartam todo o resto.

Substitua <WG_ENDPOINT_IP> pelo IP do seu servidor s4m e o nome da interface (wg0 / utun3 / s4m) pelo seu do arquivo de configuração que você baixou.

Linux (nftables)

Persistente, moderno e a opção mais limpa nas distribuições atuais.

bash
#!/usr/sbin/nft -f
# s4m kill-switch: drop all output unless it goes through the s4m tunnel.
flush ruleset
table inet s4m_ks {
  chain out {
    type filter hook output priority 0; policy drop;
    oifname "lo" accept
    oifname "wg0" accept                         # s4m WireGuard interface
    ip daddr <WG_ENDPOINT_IP> udp dport 51820 accept  # handshake to s4m
    ct state established,related accept
    meta nfproto ipv6 drop                        # kill IPv6 leaks (exit is IPv4)
  }
}
# apply:  sudo nft -f s4m-killswitch.nft     revert: sudo nft flush ruleset

macOS (pf)

Usa o filtro de pacotes embutido — sem software extra.

bash
# /etc/pf.s4m.conf   —  load:  sudo pfctl -f /etc/pf.s4m.conf -e
set block-policy drop
block out all
pass out on lo0 all
pass out on utun3 all                      # your s4m WireGuard interface
pass out proto udp to <WG_ENDPOINT_IP> port 51820   # handshake
block out inet6 all                        # kill IPv6 leaks
# disable:  sudo pfctl -d

Windows (PowerShell, execute como Admin)

Regras do Firewall do Windows Defender; limitadas ao adaptador s4m.

powershell
# Block all outbound, then allow only the s4m WireGuard adapter + handshake.
New-NetFirewallRule -DisplayName "s4m-ks-block" -Direction Outbound -Action Block -Enabled True
New-NetFirewallRule -DisplayName "s4m-ks-allow-wg" -Direction Outbound -Action Allow -InterfaceAlias "s4m" -Enabled True
New-NetFirewallRule -DisplayName "s4m-ks-handshake" -Direction Outbound -Action Allow -Protocol UDP -RemoteAddress <WG_ENDPOINT_IP> -RemotePort 51820 -Enabled True
# Stop IPv6 leaks:
Disable-NetAdapterBinding -Name "*" -ComponentID ms_tcpip6
# Remove later:  Get-NetFirewallRule -DisplayName "s4m-ks-*" | Remove-NetFirewallRule

Por que bloquear IPv6

Nossa saída é IPv4, então qualquer solicitação IPv6 contornaria o túnel e revelaria seu verdadeiro endereço IPv6 — um vazamento clássico. Cada configuração acima bloqueia o IPv6 completamente. Você pode confirmar que está limpo em nosso teste de IP e vazamento.

Share this page
FAQ

Perguntas, respondidas

Eu realmente preciso de um kill switch?

Se você depende da VPN para privacidade, sim — sem uma, uma queda momentânea expõe silenciosamente seu IP real. As regras aqui falham fechadas: sem túnel, sem tráfego.

Isso sobreviverá a uma reinicialização?

Os arquivos nftables e pf podem ser carregados na inicialização (systemd ou um daemon de lançamento); as regras do Windows persistem até que você as remova. Veja as linhas de aplicar/reverter de cada trecho.

Obtenha um túnel que vale a pena proteger

WireGuard, sem logs por design, cadastro anônimo.

As pessoas encontraram esta página pesquisando por

Frases de busca reais que esta página responde — os links abrem a página que as cobre em profundidade.