Linux s OpenVPN? Pokud nevíte, co děláte, může se to rychle stát nebezpečným.

Když OpenVPN ochromí váš Linux - a jak ho znovu zachránit

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 a auth-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áznamy
  • do0 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í:

  1. Oprava trasování
  2. Oprava DNS
  3. Vyčištění sítě VPN
  4. Restartování síťového zásobníku
  5. 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íť WLAN
  • resolvectl 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.

Líbí se vám tento článek? Sdílejte ho!

Posted by Petr Kirpeit

Všechny články jsou mým osobním názorem a jsou psány v němčině. Aby se k nim mohli dostat i anglicky mluvící čtenáři, jsou automaticky přeloženy přes DeepL. Tam, kde je to možné, jsou doplněna fakta a zdroje. Pokud není k dispozici jasný důkaz, považuje se příslušný příspěvek v době zveřejnění za můj osobní názor. Tento názor se může časem změnit. Přátelé, partneři, firmy a další nemusí sdílet tento postoj.

Napsat komentář