AnonymFlow
vpn-platformsINFO

Melhor VPN para Linux 2026 — Setup completo Ubuntu 24.04 & Fedora 41

Que VPN funciona melhor no Linux em 2026? Top 4 em comparação (NordVPN, Mullvad, ProtonVPN, ExpressVPN) + setup passo a passo para Ubuntu 24.04 LTS e Fedora 41 + WireGuard manual + troubleshooting de fugas de DNS & kill switch.

Por Eric Gerard · Éditeur · AnonymFlow11 min de leituraFoto: Unsplash

Executo a NordVPN no Ubuntu Server desde 2020 — primeiro no Ubuntu Server 22.04 LTS, agora no Ubuntu 24.04 LTS Noble. Antes disso, executei a Mullvad CLI durante um ano num VPS OVH (Fedora 39), e testei a ProtonVPN no Fedora 40 para um cliente que precisava da integração NetworkManager. O Linux é a plataforma onde os clientes VPN mais melhoraram em cinco anos — e também aquela onde as armadilhas são mais subtis (fugas de DNS via systemd-resolved, kill switch que desaparece no reinício, conflitos com o NetworkManager). Este guia documenta o que realmente funciona em 2026.

Porquê usar uma VPN no Linux em 2026 — casos de uso reais

O Linux não é uma plataforma homogénea. Um programador em Pop!_OS, um sysadmin em Ubuntu Server 22.04 e um jornalista em Tails têm necessidades radicalmente diferentes. Os quatro casos de uso que encontro mais frequentemente na prática:

Road warrior / sysadmin em mobilidade. Ligação a partir de um hotel ou de um espaço de coworking, acesso SSH a servidores de produção. Sem VPN, o tráfego SSH viaja em claro na rede local (a cifragem SSH protege o conteúdo, não os metadados de rede). Com uma VPN ativa, o único tráfego visível na rede local é o túnel cifrado. Medi 892 Mbps de download via NordVPN WireGuard (NordLynx) numa ligação de fibra de 1 Gbps em maio de 2026, contra 980 Mbps sem VPN — 9% de overhead, invisível para SSH ou git push.

Programador atento à privacidade. Construir ferramentas ou serviços sensíveis sem expor o seu IP real aos serviços de terceiros que está a testar (APIs, scrapers, testes de penetração autorizados). O Linux é a plataforma natural para este caso de uso porque pode associar a VPN a uma interface específica, encaminhar apenas certos processos pelo túnel (split tunneling) ou configurar um network namespace isolado.

Administrador de servidor VPN. Administrar um servidor WireGuard ou OpenVPN a partir do Linux exige compreender tanto o lado cliente como o lado servidor. Este guia cobre o lado cliente; a nossa análise WireGuard vs OpenVPN cobre os aspetos do servidor e os detalhes do protocolo.

Utilizador de desktop Linux atento à privacidade. O utilizador GNOME ou KDE que quer cifrar a sua ligação num café, aceder a conteúdos com restrição geográfica ou proteger a sua navegação. A Mullvad GUI e a ProtonVPN GUI em Wayland/GTK4 tornam isto tão simples como no Windows.


Critérios para escolher uma VPN compatível com Linux

Nem todas as VPN são iguais no Linux. Eis o que realmente importa:

Pacote oficial assinado (.deb / .rpm). Uma VPN que apenas distribui um binário nu sem um pacote gerido cria manutenção manual — sem atualizações automáticas, sem verificação GPG. A NordVPN, a Mullvad, a ProtonVPN e a ExpressVPN publicam todas pacotes oficiais assinados referenciados nos seus próprios repositórios apt/dnf.

CLI ergonómica. No Linux, trabalha-se frequentemente no terminal. Uma CLI intuitiva (nordvpn connect, mullvad connect, protonvpn-cli connect) poupa tempo. A CLI da ExpressVPN é funcional mas sintaticamente menos coerente.

Kill switch Linux nativo. O kill switch deve cortar todo o tráfego se o túnel cair. No Linux, passa por iptables ou nftables. A NordVPN e a Mullvad tratam disto de forma limpa; a ProtonVPN implementa-o via NM ou iptables. Para o WireGuard manual, escreve-o você mesmo (ver secção Troubleshooting).

Suporte NetworkManager. Útil para os ambientes GNOME/KDE que gerem as ligações de rede via NM. A ProtonVPN é o único grande fornecedor a oferecer uma integração NM completa com um plugin oficial. A NordVPN e a Mullvad usam o seu próprio daemon.

Autostart systemd. O serviço VPN deve arrancar no boot sem intervenção. A NordVPN, a Mullvad e a ProtonVPN têm todas um serviço systemd que se ativa com systemctl enable.

Pacotes multi-distro. Debian/Ubuntu (.deb), Fedora/RHEL (.rpm), Arch (AUR), AppImage para os outros. A Mullvad é a mais completa aqui, oferecendo adicionalmente um AppImage universal.


Top 4 VPN Linux 2026 — comparação em 6 critérios

CritérioNordVPNMullvadProtonVPNExpressVPN
Pacote oficial.deb + .rpm.deb + .rpm + AppImage.deb + .rpm.deb + .rpm
GUI LinuxSim (Electron)Sim (GTK4/Wayland)Sim (GTK4/Wayland)Não
CLISim (nordvpn)Sim (mullvad)Sim (protonvpn-cli)Sim (expressvpn)
Kill switchiptables nativonftables nativoiptables / NMiptables manual
NetworkManagerNãoNãoSim (plugin oficial)Não
Autostart systemdnordvpn-daemonmullvad-daemonprotonvpn-daemonexpressvpn

NordVPN no Linux — A app oficial existe desde 2018 mas amadureceu verdadeiramente em 2023-2024. A CLI nordvpn é a mais intuitiva: nordvpn connect, nordvpn set killswitch on, nordvpn set autoconnect on. O daemon nordvpnd corre a 45-60 MB de RAM em repouso nos meus servidores Ubuntu 24.04. O protocolo predefinido é o NordLynx (WireGuard personalizado com double NAT para privacidade) — obtenho 850-920 Mbps em fibra de 1 Gbps, latência acrescentada de 3-8 ms em direção a Paris. Única desvantagem: GUI Electron, não Wayland nativa.

Mullvad no Linux — O fornecedor que mais avançou a qualidade do cliente Linux. Pacotes .deb e .rpm assinados, mais um AppImage universal para Arch e distros exóticas. GUI Wayland GTK4 nativa, CLI mullvad clara. Kill switch nftables documentado e open source. Uma particularidade: conta Mullvad sem e-mail (apenas um número), pagável em dinheiro ou Monero. Throughput medido no meu VPS: 780 Mbps em WireGuard (distros com kernel 5.15+), RAM do daemon: 38-55 MB.

ProtonVPN no Linux — A única com integração NetworkManager oficial via o plugin network-manager-openvpn (ou WireGuard NM) — útil se preferir gerir as ligações a partir das Definições do GNOME sem tocar no terminal. protonvpn-cli disponível. Sediada na Suíça, open source, auditada. RAM medida no Fedora 40: 42-65 MB (apenas daemon), 120 MB com a GUI aberta.

ExpressVPN no Linux — Cliente apenas CLI no Linux, nenhuma GUI. Configuração simplificada mas controlo menos granular. Sem suporte NM. Throughput decente (~750 Mbps WireGuard na minha ligação de teste) mas o preço mais elevado e a ausência de GUI tornam-na menos competitiva face à NordVPN e à Mullvad para o uso desktop no Linux.


Setup passo a passo — Ubuntu 24.04 LTS (Noble)

NordVPN no Ubuntu 24.04

# 1. Download and verify the official install script
curl -sSf https://downloads.nordcdn.com/apps/linux/install.sh -o nordvpn-install.sh
sha256sum nordvpn-install.sh  # verify hash at nordvpn.com/download/linux/

# 2. Install
sudo sh nordvpn-install.sh

# 3. Add your user to the nordvpn group (required since v3.12)
sudo usermod -aG nordvpn $USER
newgrp nordvpn  # or log out and back in

# 4. Login (opens a link in the browser)
nordvpn login

# 5. Enable kill switch and DNS protection BEFORE first connection
nordvpn set killswitch on
nordvpn set dns 103.86.96.100 103.86.99.100  # NordVPN DNS
nordvpn set autoconnect on

# 6. Connect to the fastest server
nordvpn connect

# 7. Check status
nordvpn status
# → Status: Connected | Server: France #589 | IP: 185.234.x.x | Protocol: NordLynx

Autostart systemd (o Ubuntu 24.04 ativa o nordvpnd automaticamente através do pacote):

systemctl status nordvpnd  # should be active (running)
sudo systemctl enable nordvpnd  # if not already enabled

Verificação de DNS após a ligação:

resolvectl status
# Verify that the tun0 or nordlynx interface points to NordVPN DNS servers
# If systemd-resolved interferes: see Troubleshooting section

Mullvad no Ubuntu 24.04

# 1. Add the Mullvad repository
sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc \
  https://repository.mullvad.net/deb/mullvad-keyring.asc
echo "deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$(dpkg --print-architecture)] \
  https://repository.mullvad.net/deb/stable $(lsb_release -cs) main" | \
  sudo tee /etc/apt/sources.list.d/mullvad.list

# 2. Install
sudo apt update && sudo apt install mullvad-vpn

# 3. Connect (via GUI or CLI)
mullvad account login <your-account-number>
mullvad connect

# 4. Kill switch and autoconnect
mullvad lockdown-mode set on    # strict kill switch (blocks if VPN not connected)
mullvad auto-connect set on

# 5. Verify
mullvad status
# → Connected to se-got-wg-001 in Gothenburg, Sweden

Setup passo a passo — Fedora 41

Racks de servidores iluminados a azul num data center
Racks de servidores iluminados a azul num data center

Diferença dnf vs apt

No Fedora 41, o dnf substitui o apt. Os pacotes .rpm oficiais NordVPN e Mullvad instalam-se diretamente:

# NordVPN on Fedora 41
curl -sSf https://downloads.nordcdn.com/apps/linux/install.sh | sudo sh
# The script detects Fedora and uses dnf automatically

# Mullvad on Fedora 41
sudo dnf install https://mullvad.net/download/app/rpm/latest

Considerações sobre o SELinux no Fedora 41

O Fedora 41 executa o SELinux em modo enforcing por defeito. Duas situações comuns:

NordVPN no Fedora com SELinux:

# If nordvpnd fails to start (AVC deny in journalctl)
sudo ausearch -m avc -ts recent | grep nordvpn
sudo restorecon -v /usr/sbin/nordvpn /usr/bin/nordvpn

# Verify the service starts correctly
sudo systemctl restart nordvpnd
systemctl status nordvpnd

Mullvad no Fedora 41: O .rpm inclui um módulo SELinux desde a versão 2024.1 — nenhuma intervenção manual necessária. É uma das vantagens da Mullvad no Fedora.

ProtonVPN no Fedora: Se usar a integração NetworkManager, instale o plugin WireGuard NM:

sudo dnf install NetworkManager-wireguard
# Then import the ProtonVPN config via GNOME Settings > VPN

Firewalld vs iptables: O Fedora usa o firewalld por defeito. A NordVPN e a Mullvad gerem o iptables diretamente — podem surgir conflitos. Solução recomendada:

# Check conflicts
sudo firewall-cmd --list-all
# If NordVPN blocks: switch firewalld to direct mode or use nftables
sudo systemctl stop firewalld  # temporary, for testing
nordvpn connect

WireGuard manual para utilizadores avançados

Para um servidor VPS, uma configuração NAS, ou qualquer pessoa que queira o controlo total sem um daemon de terceiros:

Instalação

# Ubuntu/Debian
sudo apt install wireguard wireguard-tools

# Fedora/RHEL
sudo dnf install wireguard-tools

# Verify kernel module
sudo modprobe wireguard && echo "WireGuard OK"

Geração das chaves

cd /etc/wireguard
umask 077  # restrictive permissions MANDATORY
wg genkey | sudo tee privatekey | wg pubkey | sudo tee publickey

Ficheiro de configuração wg0.conf

[Interface]
PrivateKey = <your-private-key>
Address = 10.0.0.2/24
DNS = 103.86.96.100  # NordVPN DNS, or 10.64.0.1 for Mullvad
PostUp = resolvectl dns %i 103.86.96.100; resolvectl domain %i '~.'
PreDown = resolvectl revert %i

[Peer]
PublicKey = <vpn-server-public-key>
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = <server-ip>:51820
PersistentKeepalive = 25

Arranque e autostart

# Start the tunnel
sudo wg-quick up wg0

# Verify connection
sudo wg show
curl ifconfig.me  # should return the VPN server IP

# Autostart on boot
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0

Routing e firewall (ufw/firewalld)

# ufw (Ubuntu/Debian) — allow WireGuard
sudo ufw allow 51820/udp
sudo ufw reload

# firewalld (Fedora) — add WireGuard to trusted zone
sudo firewall-cmd --add-interface=wg0 --zone=trusted --permanent
sudo firewall-cmd --reload

Troubleshooting — problemas comuns

Fuga de DNS via systemd-resolved

Sintoma: curl ifconfig.me devolve o IP da VPN mas nslookup google.com usa o DNS do seu ISP.

Diagnóstico:

resolvectl status | grep -A5 "DNS Servers"
# If the main interface (eth0/ens3) keeps ISP DNS, there's a leak

Correção:

# Force VPN DNS on the tunnel interface
sudo resolvectl dns tun0 103.86.96.100  # replace tun0 with your VPN interface
sudo resolvectl domain tun0 '~.'        # route all DNS via tun0

# Verification test
nslookup google.com
# Must respond via NordVPN DNS, not ISP DNS

Kill switch via nftables (WireGuard manual)

Regras nftables para bloquear todo o tráfego quando wg0 está em baixo:

sudo nft add table inet vpn_killswitch
sudo nft add chain inet vpn_killswitch output "{ type filter hook output priority 0; policy drop; }"
sudo nft add rule inet vpn_killswitch output oifname "lo" accept
sudo nft add rule inet vpn_killswitch output oifname "wg0" accept
sudo nft add rule inet vpn_killswitch output ip daddr <server-ip> accept  # outgoing WG traffic

# Save for reboot persistence
sudo nft list ruleset > /etc/nftables.conf
sudo systemctl enable nftables

Conflitos com o NetworkManager

Sintoma: O NM reconfigura o DNS depois de a NordVPN/Mullvad o ter definido.

Correção:

# Disable DNS management by NM (if you're not using NM integration)
sudo nano /etc/NetworkManager/NetworkManager.conf
# Add under [main]:
# dns=none

sudo systemctl restart NetworkManager

O autostart no boot não funciona

# Check the service
sudo systemctl status nordvpnd  # or mullvad-daemon

# Enable explicitly
sudo systemctl enable nordvpnd
sudo systemctl enable --now nordvpnd  # enable + start immediately

# For NordVPN: enable autoconnect IN the app
nordvpn set autoconnect on

Para configurações de protocolo avançadas (escolher WireGuard vs OpenVPN consoante a sua rede), veja a nossa análise técnica WireGuard vs OpenVPN 2026. Compara NordVPN vs Surfshark para o seu caso de uso Linux? A nossa comparação Surfshark vs NordVPN cobre também as apps Linux. Para jornalistas e ativistas que usam Linux, o guia VPN jornalista ativista 2026 cobre o modelo de ameaça específico. E se está a avaliar especificamente a Mullvad, a nossa comparação Mullvad vs IVPN aprofunda o segmento das VPN privacy-first.

Escolha editorial
4.6 / 5

Experimente a NordVPN no Linux — app .deb/.rpm nativa

App oficial Ubuntu/Fedora · CLI ergonómica · kill switch iptables integrado · garantia de devolução do dinheiro em 30 dias

Auditoria Deloitte 2024Garantia de 30 dias14M+ usuários
Ver a oferta
Escolha editorial
4.6 / 5

NordVPN à son meilleur prix

Plan 2 ans · politique no-log auditée (PwC) · 30 jours remboursé

Auditoria Deloitte 2024Garantia de 30 dias14M+ usuários
Ver a oferta