Zum Inhalt springen
Daniel Gietmann
← Blog
Coding

Eine Hetzner Storage Box in den Finder hängen, ohne FUSE zu installieren

HetznerMount hängt Hetzner Storage Boxes über das FileProvider-Framework von macOS in den Finder, ohne FUSE. Wie du eine Box einrichtest und an welchen fünf Stellen du in Version 0.0.5 aufpassen solltest.

Titelbild: Eine Hetzner Storage Box in den Finder hängen, ohne FUSE zu installieren

Eine Hetzner Storage Box ist günstiger Speicher im Netz, aber auf dem Mac kommt man nicht ohne Weiteres an die Dateien. Entweder öffnet man jedes Mal ein SFTP-Programm, oder man installiert macFUSE samt Kernel-Erweiterung, um die Box als Laufwerk einzubinden.

HetznerMount ist meine kleine Menüleisten-App für genau diesen Fall. Sie hängt eine oder mehrere Storage Boxes in den Finder, und zwar über das FileProvider-Framework von macOS, das auch iCloud Drive und Dropbox nutzen. Die Box taucht dann in der Seitenleiste unter „Orte“ auf, ohne FUSE und ohne Netzlaufwerk. Das funktioniert gut, hat in der aktuellen Version 0.0.5 aber ein paar Grenzen, die du kennen solltest, bevor du wichtige Daten darüber verschiebst.

Installieren

Du brauchst macOS 14 (Sonoma) oder neuer. Die App lädst du als HetznerMount.dmg von der Release-Seite auf GitHub und ziehst sie in den Programme-Ordner.

Die App ist nicht von Apple notarisiert. Ein Doppelklick beim ersten Start wird deshalb von Gatekeeper blockiert. Öffne sie einmal per Rechtsklick und „Öffnen“, danach startet sie normal. Neue Versionen meldet die App selbst, im Menü gibt es dafür „Check for Updates…“.

Eine Box einrichten

Auf der Storage Box muss der SSH-Zugang eingeschaltet sein, das stellst du bei Hetzner in der Verwaltung der Box ein. In HetznerMount legst du die Box dann in den Einstellungen an:

  • Bei „Username“ trägst du deinen Storage-Box-Benutzer ein, etwa u123456. Den Host ergänzt die App daraus automatisch zu u123456.your-storagebox.de.
  • Der Port steht auf 23. Auf diesem Port bietet Hetzner den erweiterten SSH-Dienst an, über den auch SFTP läuft.
  • „Base Path“ ist das Verzeichnis, das im Finder als oberste Ebene erscheint. Voreingestellt ist /, und dabei solltest du in Version 0.0.5 bleiben. Nach dem Code ordnet die App Einträge nur bei / sauber der obersten Ebene im Finder zu. Mit einem anderen Pfad bleibt der Ort vermutlich leer oder zeigt Fehler.
  • Das Passwort landet im Schlüsselbund von macOS, nicht in einer Konfigurationsdatei.

Mit „Test Connection“ meldet sich die App an und liest einmal den Base Path aus. Erst wenn das klappt, lohnt sich das Einhängen. Falls etwas schiefgeht, übersetzt die App die SSH-Fehler in verständliche Meldungen, zum Beispiel ob der Benutzername falsch ist oder der Host nicht gefunden wurde.

Jede Box wird im Finder ein eigener Ort. Über das Menüleisten-Symbol hängst du sie einzeln ein und aus, öffnest sie im Finder oder lässt den Inhalt neu laden. Mit „Launch at Login“ startet die App automatisch nach der Anmeldung.

Wie die Dateien in den Finder kommen

Der Finder zeigt zunächst nur die Liste der Dateien. Den Inhalt einer Datei lädt die App erst, wenn du sie öffnest. Speicherst du eine Datei, lädt die App sie wieder auf die Box hoch. Heruntergeladene Dateien kannst du wie bei iCloud wieder entfernen lassen, dann bleibt nur der Eintrag im Finder stehen.

Unter der Haube läuft alles über SFTP mit Citadel, einer SSH-Bibliothek in reinem Swift. Bricht die Verbindung ab, baut die App sie beim nächsten Zugriff neu auf und versucht es bis zu dreimal.

Fünf Stellen, an denen du aufpassen solltest

Der Server wird nicht überprüft

Beim Verbinden prüft die App den Host-Key des Servers nicht, sie akzeptiert jeden. Normalerweise merkt sich ein SSH-Client beim ersten Mal den Schlüssel des Servers und warnt, wenn er sich später ändert. Diese Warnung fehlt hier. In einem fremden WLAN könnte sich also jemand als deine Storage Box ausgeben und das Passwort abgreifen. Bis diese Prüfung eingebaut ist, nutze die App am besten nur in Netzen, denen du vertraust.

Nur Passwort, noch kein SSH-Schlüssel

In den Einstellungen gibt es schon die Auswahl „SSH Key“. Die App zeigt dort aber selbst an, dass das erst in einer späteren Version kommt, und meldet sich immer mit dem Passwort an. Wenn du für deine Box nur Schlüssel nutzen willst, ist HetznerMount im Moment nicht das Richtige.

Große Dateien gehen komplett durch den Arbeitsspeicher

Beim Herunterladen liest die App eine Datei vollständig in den Arbeitsspeicher und schreibt sie erst danach auf die Festplatte. Beim Hochladen ist es genauso. Die Fortschrittsanzeige springt deshalb von null direkt auf fertig. Für Dokumente und Fotos ist das kein Problem. Ein Backup-Archiv mit mehreren Gigabyte schiebst du besser direkt per Terminal, das geht ebenfalls über Port 23:

scp -P 23 backup.tar.gz u123456@u123456.your-storagebox.de:backup.tar.gz

Gelöschte Dateien von anderswo bleiben stehen

Wenn die App einen Ordner neu einliest, meldet sie dem System neue und geänderte Einträge, aber keine gelöschten. Löscht ein Server-Skript oder ein anderer Rechner eine Datei auf der Box, kann sie im Finder weiter angezeigt werden. Öffnest du sie dann, schlägt das fehl, weil es die Datei nicht mehr gibt.

Bei gleichzeitigen Änderungen gewinnt die letzte

Speicherst du eine Datei, die in der Zwischenzeit auf der Box geändert wurde, überschreibt die App die Version auf der Box ohne Rückfrage. Eine Konfliktkopie wie bei manchen Sync-Diensten gibt es nicht. Wenn mehrere Leute oder Rechner an denselben Dateien arbeiten, ist das ein Grund, vorsichtig zu sein.

Wofür ich es nutze

Für den schnellen Zugriff auf Dateien, die ohnehin auf der Storage Box liegen, ist HetznerMount angenehm: Box im Finder anklicken, Datei öffnen, fertig. Für Backups, große Archive und Ordner, an denen mehrere Systeme schreiben, bleibe ich bei rsync, scp oder einem Backup-Werkzeug, das direkt per SSH arbeitet. Wenn dir etwas auffällt oder du eine der Grenzen oben loswerden willst, freue ich mich über ein Issue auf GitHub.