macOS: Verlorene WireGuard-Tunnel retten

Beim Update auf macOS Sonoma 14.6 hat WireGuard sämtliche VPN-Tunnelkonfigurationen gelöscht. Gibt es einen Weg, die Konfigurationen wiederherzustellen?​

In Pocket speichern vorlesen Druckansicht
Lesezeit: 4 Min.

Beim Update auf macOS Sonoma 14.6 hat WireGuard offenbar sämtliche VPN-Tunnelkonfigurationen stillschweigend gelöscht. Backups in Dateiform habe ich nicht. Gibt es einen Weg, die Konfigurationen wiederherzustellen, ohne alle Tunnel neu erzeugen zu müssen?

Das ist in der Tat vertrackt, denn die WireGuard-Implementierung auf dem Mac legt die Tunnelkonfiguration nicht wie auf anderen Unixen in /etc/wireguard ab, sondern im Schlüsselbund des Anwenders. Das ist grundsätzlich wünschenswert, weil die Konfigurationen im Schlüsselbund besonders gut gegen Manipulation gesichert sind. Was beim Update auf Sonoma 14.6 genau schiefgeht, ist unklar; die App schreibt ins Log "Unable to open config from keychain: -25300" und wirft dann nacheinander alle Tunnelkonfigurationen über Bord (Removing orphaned tunnel with non-verifying keychain entry).

Wenn Sie ein Backup Ihres User-Ordners haben, gibt es aber eine Lösung. Im Folgenden beschreiben wir die Rettungsaktion anhand von Time Machine. Das Prinzip sollte aber mit jedem Backup funktionieren, das den Ordner ~/Library/Keychains gesichert hat.

Öffnen Sie im Finder den lokalen Ordner ~/Library (ggf. über das Tastaturkürzel Cmd+G, dann geben Sie "~/Library" ein). Öffnen Sie dann den Programme-Ordner und starten Sie Time Machine. Navigieren Sie damit zum Tag vor der Zerstörung der Tunnelkonfigurationen und lassen Sie diese ursprüngliche Version des Keychains-Ordners auf dem Desktop wiederherstellen. Davon, den aktuellen Keychains-Ordner direkt zu überschreiben, raten wir ab, weil sich möglicherweise in der Zwischenzeit neu hinzugekommene Inhalte nicht mehr ohne Weiteres wiederherstellen ließen.

Geben Sie dem wiederhergestellten Ordner einen eindeutigen Namen wie "Keychains-mit-WireGuard-Tunneln". Öffnen Sie den lokalen Ordner ~/Library und benennen Sie den aktuellen Keychain-Ordner um, etwa in "Keychains-aktuell". Verschieben Sie den Ordner "Keychains-mit-WireGuard-Tunneln" vom Desktop nach ~/Library und benennen Sie ihn dort zu "Keychains" um.

Wenn Sie nun die Schlüsselbundverwaltung öffnen und in der linken Spalte auf die Rubrik "Anmeldung" klicken, finden Sie im Hauptfenster die unangetasteten WireGuard-Tunnel. Werden Sie nicht auf Anhieb fündig, geben Sie rechts oben in das Suchfeld "WireGuard" ein.

Die Keychain-Verwaltung von macOS speichert die Konfiguration von WireGuard-Tunneln im Passwortfeld. Nur die jeweils erste Zeile (hier: "[Interface]") ist sichtbar.

Wenn Sie dann eine Tunnelkonfiguration doppelklicken, öffnet die Schlüsselbundverwaltung ein Fensterchen mit dem Inhalt und den zugehörigen Zugriffseinstellungen. Die Konfigurationsdaten stecken überraschenderweise allesamt im Passwortfeld und bestehen aus mehreren Zeilen, von denen aber nur die erste sichtbar ist. Den kompletten Inhalt können Sie aber ohne Weiteres zum Beispiel in einen Texteditor kopieren und dann als Textdatei sichern. So haben Sie ein leicht zugängliches Backup, falls sich die Havarie wiederholen sollte. Die Textdateien können Sie wie üblich in WireGuard importieren.

Klicken Sie dafür zunächst auf den Button "Passwort einblenden" und geben Sie nach Aufforderung Ihr Passwort ein. Dann erscheint im Passwortfeld die erste Zeile der Tunnel-Config, nämlich "[Interface]". Zum Herauskopieren klicken Sie auf das Passwortfeld, wählen mit Cmd+A den gesamten Inhalt des Felds aus und kopieren ihn mit Cmd+C in die Zwischenablage. Von dort übertragen Sie die Konfiguration in einen Texteditor, zum Beispiel TextEdit, und speichern sie als Textdatei. Falls Sie mehrere Konfigurationen retten müssen, erzeugen Sie für jede eine eigene Textdatei, die Sie aussagekräftig benennen, zum Beispiel Fritzbox7690.wg-conf oder vServer.wg-conf.

Öffnen Sie dann WireGuard und importieren Sie jede einzelne Konfiguration. Wenn nach einem kurzen Test alles funktioniert, reaktivieren Sie den ursprünglichen Keychains-Inhalt, indem Sie "Keychains‟ wieder zu "Keychains-WireGuard-Tunnel" umbenennen und "Keychains-aktuell" wieder zu "Keychains". Zum Schluss starten Sie den Mac sicherheitshalber einmal neu, um zu gewährleisten, dass alle Prozesse tatsächlich auf den aktuellen Schlüsselbundordner zugreifen.

Neugierig geworden?

(dz)