HowTo: WireGuard VPN-Profile per `nmcli` in KDE Plasma (Kubuntu) integrieren
1. Problemstellung & Hintergrund
Beim manuellen Einrichten von WireGuard-Verbindungen über die grafische Benutzeroberfläche von KDE Plasma (Systemeinstellungen $\rightarrow$ Netzwerk) treten häufig Fehler auf:
- UI-Validierungsfehler: Die Maske von KDE Plasma (Plasma-NM) parst komplexe WireGuard-Konfigurationen (wie multiple DNS-Server, AllowedIPs-Listen oder MTU-Werte) nicht immer fehlerfrei.
- Schlüsselverwaltung (KWallet vs. Root): Private Keys werden über die GUI oft im benutzerspezifischen KDE-Wallet hinterlegt statt systemweit im NetworkManager. Dadurch scheitert der Tunnel-Aufbau oder verlangt unerwartet Root- bzw. Wallet-Passwörter.
Die Lösung
Der NetworkManager bringt seit Version 1.16 ein natives WireGuard-Plugin mit. Über das Kommandozeilen-Tool nmcli kann eine existierende, funktionierende .conf-Datei (von wg-quick) verlustfrei direkt in die systemweite NetworkManager-Struktur importiert werden.
Vorteile:
- Kein Terminal/
sudomehr für den täglichen Verbindungsaufbau nötig. - Steuerung per 1-Klick im KDE-Netzwerk-Tray (Taskleiste) – analog zum WireGuard-Client unter Windows.
- Manuelle Kontrolle: Keine Routing-Konflikte im lokalen Office-Netzwerk, da
autoconnectgezielt deaktiviert werden kann.
2. Voraussetzungen
- Eine funktionierende WireGuard-Konfigurationsdatei (z. B.
wg0.conf). - Root- bzw.
sudo-Rechte. - Kubuntu (getestet ab 22.04 LTS / 24.04 LTS / 26.04 LTS mit Plasma-Desktop).
3. Schritt-für-Schritt Anleitung
Schritt 1: Bestehende wg-quick-Verbindungen stoppen
Sollte die Schnittstelle aktuell über wg-quick aktiv sein, muss sie zuerst getrennt werden, damit NetworkManager das Interface wg0 exklusiv verwalten kann:
sudo wg-quick down wg0
Schritt 2: Konfiguration in NetworkManager importieren
Mit dem Befehl nmcli connection import wird die Standard-WireGuard-Datei in ein NetworkManager-Verbindungsprofil übersetzt:
sudo nmcli connection import type wireguard file /etc/wireguard/wg0.conf
(Hinweis: Ersetzen Sie /etc/wireguard/wg0.conf durch den tatsächlichen Pfad Ihrer Datei).
Ausgabe bei Erfolg:
Connection 'wg0' (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) successfully added.
Schritt 3: Automatisches Verbinden deaktivieren (Wichtig für Office/Homeoffice-Wechsler)
Standardmäßig versucht NetworkManager, neu importierte Verbindungen automatisch hochzufahren. Um Routing-Probleme im lokalen Firmennetzwerk (Office) zu vermeiden, wird der Autoconnect abgeschaltet:
sudo nmcli connection modify wg0 connection.autoconnect no
Schritt 4: Nutzung & Testen
Die Konfiguration ist sofort aktiv und erfordert keinen Neustart:
- Klicken Sie unten rechts im KDE-Panel auf das Netzwerk-/WLAN-Icon.
- Unter der Sektion WireGuard bzw. VPN taucht nun der Eintrag
wg0auf. - Klicken Sie auf Verbinden, um den Tunnel aufzubauen, bzw. auf Trennen, um ihn zu beenden.
4. Wichtige CLI-Befehle zur Wartung (Spickzettel)
| Aktion | Befehl |
|---|---|
| Status aller Verbindungen anzeigen | nmcli connection show |
| Tunnel manuell per CLI starten | nmcli connection up wg0 |
| Tunnel manuell per CLI stoppen | nmcli connection down wg0 |
| Verbindungsprofil wieder löschen | sudo nmcli connection delete wg0 |
| Prüfen, ob WireGuard-Handshake steht | sudo wg show |
5. Technische Details (Unter der Haube)
- Speicherort des Profils: NetworkManager speichert die importierte Verbindung als Keyfile unter
/etc/NetworkManager/system-connections/wg0.nmconnection. - Dateirechte: Die generierte
.nmconnection-Datei erhält automatisch die restriktiven Dateirechte0600(Besitzer:root:root), um den enthaltenenprivate-keyvor unberechtigtem Auslesen durch andere Benutzer des Systems zu schützen.