Hlášení z terénu s OpenVPN, problémy s DNS a nefunkčními trasami
Mnoho lidí si myslí, že Linux je stabilnější a ovladatelnější než Windows. Ale běda tomu, kdo se připojí k OpenVPN, natočí své trasy a po odpojení VPN zjistí: internet je pryč. Úplně. Žádné DNS, žádný ping, žádný curl. Vítejte ve světě správy sítě pod Linuxem.
Tímto článkem bych rád upozornil na problém, se kterým se potýkají zejména uživatelé VPN. Linux se týká: po použití OpenVPN připojení k internetu prostřednictvím sítě WLAN již nefunguje. Tento problém není triviální a může být velmi frustrující. Zde vám ukážu kroky, které jsem podnikl k opravě své sítě. Plně restaurováno mít - bez přeinstalovat systém.
Požadavky / nástroje, které jsem nainstaloval
Než začneme problém řešit, uvedu své technické nastavení:
- SystémZorin OS 17.3 (založený na Ubuntu 22.04 LTS)
- Verze OpenVPN: 2.5.11
- Správce sítě:
NetworkManager
- Správa DNS:
systémově řešené
- Konfigurace sítě VPN:
.ovpn
Soubor s certifikáty aauth-user-pass
- Editor:
nano
- Síťové nástroje:
nmcli
,ip
,resolvectl
,ping
,curl
- Manipulace s terminálem:
bash
V adresáři VPN jsem měl také následující soubory:
openvpn.ovpn
auth.txt
ca.crt
,client.crt
,client.key
Problém: Po připojení k síti VPN není k dispozici internet
Po úspěšném navázání spojení s OpenVPN jsem měl zpočátku pocit, že "vše funguje". Ale po krátké době jsem si to uvědomil:
- Webové stránky se již nenačítají
ping google.com
selhávácurl ifconfig.io
visí nebo nic nedodává- Rozlišení DNS již nefungovalo
resolv.conf
zobrazil zastaralé nebo nesprávné záznamydo0
nebyla po oddělení čistě odstraněna
Řešení: Obnova sítě krok za krokem
V následujícím textu uvedu jednotlivé kroky, které byly nutné k obnovení internetového připojení pod Linuxem po neúspěšném použití OpenVPN - bez přeinstalace nebo opuštění systému.
Řešení je rozděleno do pěti logických oblastí:
- Oprava trasování
- Oprava DNS
- Vyčištění sítě VPN
- Restartování síťového zásobníku
- Ověřování
1. oprava směrování: zbavte se staré výchozí trasy
Po zavření klienta OpenVPN se trasa přes rozhraní tunelu VPN (do0
) je často přijímán. V důsledku toho veškerý provoz pokračuje do prázdna, i když je síť WLAN znovu připojena.
Cíl: Odstraňte nesprávné trasy a znovu nastavte správnou výchozí trasu.
Kroky:
# Úplné ukončení tunelu VPN
sudo pkill openvpn
Deaktivace a odstranění rozhraní # TUN
sudo ip link set tun0 down
sudo ip link delete tun0
Poté zkontrolujeme trasy pomocí:
ip route
Pokud jsou trasy, jako např. 0.0.0.0/1
nebo 128.0.0.0/1
jsou přítomny, odstraňte je:
sudo ip route del 0.0.0.0/1
sudo ip route del 128.0.0.0/1
Poté obnovte výchozí trasu (v mém případě přes směrovač WLAN):
sudo ip route add default via 192.168.178.1 dev wlo1
2. oprava DNS: Znovu vyřešit názvy
Po odpojení sítě OpenVPN často zůstávají servery DNS ze sítě VPN. To znamená, že již nelze přeložit žádné domény (např. google.com
nefunguje, 1.1.1.1
již).
Obnovení DNS a správné obnovení:
# Obnovení výchozí konfigurace DNS
sudo resolvectl revert wlo1
Nastavení serveru # DNS (Cloudflare + Google)
sudo resolvectl dns wlo1 1.1.1.1 8.8.8.8
# Úplné nastavení domény DNS
sudo resolvectl doména wlo1 "~."
# Restartujte síťové služby
sudo systemctl restart systemd-resolved
sudo systemctl restart NetworkManager
Pak se obraťte na :
resolvectl status wlo1
Zda vše funguje, je uvedeno například:
resolvectl query google.com
3. vyčištění sítě VPN (nepovinné, ale doporučené)
Pokud stejně jako já zjistíte, že OpenVPN nebo CyberGhost CLI způsobily příliš velký chaos (CyberGhost používám jako VPN, ale v Linuxu existuje pouze install.sh bez GUI) nebo chcete přejít na stabilnější nastavení (např. WireGuard s GUI), můžete balíček čistě odstranit:
# Pouze v případě, že OpenVPN již opravdu nepotřebujete:
V případě, že je to nutné, proveďte sudo apt remove --purge openvpn: sudo apt remove --purge openvpn
sudo rm -rf /etc/openvpn
Nepovinné: Pokud byl CyberGhost nainstalován jako CLI a již jej nepoužíváte:
sudo rm -rf /opt/cyberghostvpn /etc/opt/cyberghostvpn ~/.cyberghostvpn
4. restartujte síťový zásobník
Restart příslušných služeb může pomoci například v případě, že se NetworkManager zablokoval nebo se již nepodařilo navázat spojení.
sudo systemctl restart systemd-resolved
sudo systemctl restart NetworkManager
Pokud adaptér WLAN stále visí, může pomoci i opětovné připojení:
nmcli device disconnect wlo1
nmcli device connect wlo1
5. ověření: Funguje připojení znovu?
Po obnovení byste měli provést následující kontroly:
- WLAN zobrazuje "připojeno"
ip addr show tun0
již nic nezobrazuje (byl odstraněn)ip route
zobrazuje pouze trasu přes místní síť WLANresolvectl status wlo1
zobrazí vaše servery DNS
Poté proveďte test:
ping -c2 1.1.1.1
ping -c2 google.com
curl -s ifconfig.io
Pokud vše opět funguje - gratulujeme! Váš linuxový systém je opět online a vy jste se dozvěděli mnoho nového o konfiguraci sítě.
Můj osobní závěr
Po hodinách ladění, nesčetných terminálových příkazů, oprav DNS, oprav směrování a sítě, která najednou odmítla fungovat, je moje zjištění zcela jasné:
V budoucnu dám od OpenVPN a integrace CyberGhostu do příkazového řádku Linuxu ruce pryč.
To, co na papíře vypadá jako flexibilní a řízené nastavení, se v praxi rychle ukáže jako křehká konstrukce - zejména pokud se VPN neukončí čistě a systémové služby, jako jsou resolvery DNS nebo směrovací tabulky, se ocitnou v chaosu.
Pro mě je to jasné: pokud chci používat VPN pod Linuxem, pak jedině prostřednictvím grafických nástrojů s čistou správou životního cyklu (např. NetworkManager + WireGuard) nebo pomocí prefabrikovaných roztoků Snap-/Flatpak, které lze zcela odstranit bez zanechání zbytků.
Ano, hodně jsem se toho naučil. Ale také jsem viděl, jak rychle se může funkční linuxová síť zhroutit - jen kvůli nesprávně nakonfigurovanému profilu OpenVPN. Kdybyste nevěděli, co děláte, měli byste sice VPN tunel, ale běžný síťový provoz (webové stránky, streamování atd.) byste přes něj nesměrovali, ale stále nešifrovaně bez VPN tunelu a každá webová stránka by viděla vaši IP adresu.
Všem, kteří se nezabývají směrováním, DNS a NetworkManagerem, radím: neobtěžujte se. Používejte jednoduché aplikace VPN nebo WireGuard s podporou grafického rozhraní - vaše nervy vám poděkují. (Samotná oprava mi zabrala asi 1 hodinu s OpenAI ChatGPT o4-mini-high, bez AI bych mohl přeinstalovat Linux).
Doufám, že tento článek pomůže ostatním, kteří se dostali do podobné pasti.
A pokud jste uživateli myši Logitech MX Master 3S, najdete článek o tom, jak používat Bluetooth. Myš Logitech bez klíče USB můžete použít.