Berth-Benutzerhandbuch

SFTP, Terminal und serielle Konsole in einem Fenster — vom Hinzufügen eines Servers bis zu den Tastenkürzeln

🚀Erste Schritte

Bildschirmaufbau

Ein Fenster, vier Bereiche.

Ersten Server hinzufügen

  1. Klicken Sie mit der rechten Maustaste auf eine leere Stelle der Seitenleiste oder drücken Sie ⌘N.
  2. Geben Sie Name und Serveradresse ein. Bleiben Benutzer und Port leer, werden die Standardwerte verwendet.
  3. Doppelklick in der Liste verbindet. Ein einzelner Klick wählt nur aus.
💡 Wenn Sie sich im Terminal schon über einen ssh alias mit dem Server verbinden, müssen Sie nichts neu anlegen. Über Aus ~/.ssh/config importieren (⌘⇧I) im Sidebar-Menü holen Sie alles auf einmal. Auch die FileZilla-Site-Liste lässt sich importieren.

Sprache ändern

Wählen Sie im Menü unter Berth › Einstellungen (⌘,) eine von 20 Sprachen. Standardmäßig wird die Systemsprache verwendet, und die gewählte Sprache gilt nur für diese App. Die Änderung wirkt, sobald Sie die App neu starten.

🗂Server und Ordner

Mit Ordnern gruppieren und vererben

Gruppieren Sie Server mit einem Ordner (⌘⇧N), vererben sich die Einstellungen nach unten. Legen Sie am Ordner einmal Benutzername oder Vorsichtsstufe fest, übernehmen alle Server darunter diesen Wert. So müssen Sie denselben Wert nicht zwanzigmal für zwanzig Server eintragen.

Jedes Feld im Einstellungsfenster zeigt darunter, woher der Wert stammt (ob Sie ihn selbst festgelegt haben oder er von einem Ordner geerbt wurde), und eine Schaltfläche setzt ihn wieder auf den geerbten Wert zurück.

Stufe „Vorsicht" — Entwicklung · Staging · Produktion

Die Stufe schlägt die Farbe. Auf Produktion gesetzt, fragen riskante Aktionen zusätzlich nach. In der Sitzungsliste wird sie mit deiner gewählten Farbe gefüllt und mit einem roten Rand markiert, sodass sich mehrere Produktionsserver weiterhin an der Farbe unterscheiden lassen. Wo nur eines auf einmal erscheint (Bestätigungsdialoge und dergleichen), bleibt es als deutliche Warnung rot.

Klickregeln

🔑Verbindung und Authentifizierung

Beim ersten Verbinden — Ordnerberechtigung

Berth folgt den Regeln des App Store (Sandbox) und liest den Home-Ordner nicht frei aus. Beim ersten Öffnen eines Servers werden Sie einmal gebeten, den Ordner mit SSH-Konfiguration, Schlüsseln und known_hosts (meist ~/.ssh) auszuwählen. Einmal gewählt, wird er gemerkt und nicht erneut abgefragt. Liegen Ihre Schlüssel woanders, können Sie auch den Home-Ordner wählen.

Aus demselben Grund verwendet auch das lokale Dateipanel den von Ihnen gewählten Ordner als Wurzel — über Lokalen Ordner öffnen in der Panel-Kopfzeile lässt sich das ändern, und auch das wird gemerkt.

~/.ssh/config wird gelesen

Verbinden Sie sich über einen Alias, werden Host, Port, Benutzer, Schlüsseldatei, ProxyJump und StrictHostKeyChecking aus diesem Eintrag gelesen. Auch wenn der gespeicherte Port veraltet ist, gewinnt die Konfigurationsdatei.

⚠️ Zwei Dinge funktionieren nicht. ProxyCommand startet ein externes Programm und wird deshalb in der Sandbox blockiert — für einen Jump-Host verwenden Sie ProxyJump. ssh-agent ist ebenfalls nicht erreichbar, daher werden Schlüsseldateien direkt gelesen, und bei einem passwortgeschützten Schlüssel wird beim Verbinden nach dem Passwort gefragt.

Authentifizierungsmethode

⚠️ Wenn Sie sich im Terminal einfach mit ssh verbinden, ist Automatisch die richtige Wahl. Wird in der Annahme, es helfe, ein Schlüssel angegeben, blockiert das die Verbindung eher — weil dann nur dieser eine Schlüssel versucht wird.

Wenn der Server nachfragt

Ist ein Passwort gespeichert, wird es beim Verbinden einmal automatisch eingesetzt. Bei allen anderen Abfragen — Zweifaktor- Code, erneute Eingabe eines falschen Passworts, Passwort für einen passwortgeschützten Schlüssel — erscheint im Fenster „Vom Server ist eine Anfrage eingegangen" genau die Frage des Servers, und Sie antworten selbst. Damit das Konto nicht gesperrt wird, wird das gespeicherte Passwort nur einmal automatisch eingesetzt, und es wird höchstens dreimal nachgefragt.

Damit Sie das Passwort nicht mehr eingeben müssen

Klicken Sie mit der rechten Maustaste auf einen Server und wählen Öffentlichen Schlüssel bei diesem Server registrieren…, wird der öffentliche Schlüssel aus ~/.ssh auf den Server hochgeladen. Danach wird mit dem Schlüssel verbunden.

Gespeicherte Passwörter liegen ausschließlich im macOS-Schlüsselbund. In der Konfigurationsdatei steht nur der Vermerk „ist gespeichert" — der Wert selbst nicht.

Unbekannter Server, geänderter Host-Key

Bei einem Server, zu dem noch keine Verbindung bestand, werden Schlüsseltyp und Fingerabdruck angezeigt, und Sie werden gefragt, ob er gemerkt werden soll. Bestätigen Sie das, wird er im selben Format wie bei ssh in ~/.ssh/known_hosts eingetragen und beim nächsten Mal nicht mehr abgefragt.

Dasselbe erscheint auch, wenn sich die Identität des Servers vom letzten Mal unterscheidet. Das kann ein Man-in-the-Middle- Angriff sein oder eine Neuinstallation des Servers. Berth entscheidet nicht für Sie, sondern liefert die Grundlagen — Typ und Fingerabdruck des alten wie des neuen Schlüssels sowie den Befehl, um sie direkt an der Gerätekonsole abzugleichen. Klicken Sie nach der Prüfung auf „Alten Schlüssel löschen und neuen merken", wird der alte Eintrag gelöscht (gesichert in known_hosts.old) und der neue Schlüssel eingetragen.

💡 Bei Geräten, die dieses Fenster jedes Mal zeigen — etwa ein Entwicklungsboard, das oft neu geflasht wird —, können Sie in den Servereinstellungen Host-Key nicht merken aktivieren. Damit das Risiko auf dieses eine Gerät beschränkt bleibt, wird known_hosts dabei nicht angetastet. Bei der Stufe Produktion lässt es sich nicht aktivieren.

Dateipanel (SFTP)

Hoch- und Herunterladen

Links ist Ihr Mac, rechts der Server. Übertragen Sie per Ziehen oder mit ⌥⌘→ (Hochladen) · ⌥⌘← (Herunterladen). Der Fortschritt sammelt sich in der Übertragungsliste.

Dateipanel folgt dem Terminal

Wechseln Sie im Terminal mit cd den Ordner, folgt das entfernte Panel in denselben Ordner. Stört das, schalten Sie es mit ⌘⇧L aus.

Angeheftete Pfade · Ansicht

Unterschiede anzeigen

Mit ⌘⇧Y eingeschaltet, werden lokal und remote nebeneinander verglichen und Unterschiede sowie nur einseitig vorhandene Dateien angezeigt. Praktisch, wenn nur das Nötige übertragen werden soll.

🌏 macOS und Linux schreiben koreanische, japanische und vietnamesische Dateinamen in unterschiedlichen Bytes. Berth gleicht Namen nur beim Zuordnen ab, damit optisch identische Dateien nicht als „nur hier, nur dort" auseinanderfallen. Für die eigentliche Übertragung wird der Name verwendet, wie er auf dem Server steht.

Löschen

⌘⌫ verschiebt standardmäßig in den Papierkorb auf dem Server und fragt dabei immer nach. Ist der Papierkorb auf dem Server deaktiviert, wird vorab darauf hingewiesen, dass es sich nicht rückgängig machen lässt.

⌨️Terminal

Eine echte Shell, in der vim, tmux und less unverändert laufen. Mit der Maus durch Ziehen auswählen und mit ⌘C kopieren – der Befehl wird sauber eingefügt, ohne die Füllleerzeichen am Zeilenende.

Einfügen bestätigen

Beim Einfügen mehrerer Zeilen wird vorher gezeigt, was ausgeführt würde. Ein Einfügevorgang mit Zeilenumbrüchen wird sonst an Ort und Stelle zu einem Befehl. Wirkt etwas riskant, wird das mit Begründung angezeigt.

Ansicht vergrößern

Mit ⌘↩ wird der aktuelle Bereich vergrößert, erneutes Drücken kehrt zurück. ⌥⌘↩ vergrößert nur ein einzelnes Panel. Die Schriftgröße steuern Sie mit ⌘+ · ⌘- · ⌘0. Leere das Terminal mit ⌘L — Bildschirm und Scrollback werden gelöscht, nur die aktuelle Eingabezeile bleibt.

🔌Serielle Konsole (UART)

Gerät auswählen

Fügen Sie mit ⌃⌘N eine serielle Konsole hinzu und wählen in den Einstellungen das angeschlossene Gerät. Berth merkt sich das Gerät, nicht den Pfad — bei vorhandener Seriennummer anhand dieser, sonst anhand des Typs. Auch an einem anderen USB-Anschluss wird dasselbe Gerät gefunden.

💡 Diese Seriennummer gehört zu dem, was USB meldet. Bei einem USB-Seriell-Adapter wird also der Adapter gemerkt — wechseln Sie den Adapter, müssen Sie neu auswählen.

Baudrate und Leitungseinstellungen

Die Baudrate wählen Sie aus der Liste oder tragen sie selbst ein (auch unübliche Werte wie 1.500.000 sind möglich — der Adapter muss den Wert unterstützen). Standard ist 8N1 · keine Flusssteuerung, der Wert für die meisten Konsolen.

⚠️ Bei UART ohne Flusssteuerung kann es vorkommen, dass das Gerät bei fortlaufender, umfangreicher Übertragung aufhört zu senden. Das liegt nicht an dieser App, sondern an der Leitung selbst (am selben Kabel zeigen auch andere Programme dasselbe), die eigentliche Lösung ist, bei einem 4-Draht-Kabel die Flusssteuerung einzuschalten oder die Baudrate auf der Boardseite zu senken.

Notizblock

In der seriellen Sitzung sammeln sich rechts Ihre eingegebenen Befehle und die Antworten mit Zeitstempel. Eingaben an Stellen, an denen nach einem Passwort gefragt wird, werden verdeckt.

Tastenkürzel

App-Tastenkürzel enthalten immer . Kombinationen mit und gehören der Shell und TUI-Programmen (vim, tmux) — die App beansprucht sie nicht.

⌨️ Keine Maus nötig. Jede Aktion hier hat ein Kürzel – für alle, die die Hände lieber auf der Tastatur lassen.
TasteWirkung
⌘N · ⌃⌘N · ⌘⇧NServer hinzufügen · Serielle Konsole hinzufügen · Ordner erstellen
⌘I · ⌘⇧IDiesen Server einrichten · Aus ~/.ssh/config importieren
⌘KWohin? — nach Namen suchen und direkt wechseln
⌘1⌘9Sitzung wechseln
⌃⌘← Zwischen Panels wechseln
⌘↩ · ⌥⌘↩Vergrößern / Zurücksetzen · Nur dieses Panel vergrößern
⌘⇧S · ⌥⌘↑ ⌥⌘↓Seitenleiste · Trennlinie verschieben
⌥⌘→ · ⌥⌘←Hochladen · Herunterladen
⌘D · ⌘R · ⌥⌘NAnheften/Lösen · Neu einlesen · Neuer Ordner
⌘↓ · ⌘↑ · ⌥⌘TWechseln · Zurück · Baum↔Liste
⌘⌫ · ⌘⇧FRemote löschen · Auf dem Server suchen
⌘⇧V · ⌘⇧L · ⌘⇧YPfad ins Terminal · Terminal-Mitscrollen · Unterschiede anzeigen
⌘+ ⌘- ⌘0 · ⌘⇧WSchriftgröße · Diese Sitzung schließen
⌘L · ⌘] ⌘[Terminal leeren · Tabs des rechten Panels wechseln
⌘C · ⌘⇧P · ⌘⇧U · ⌘?Kopieren · Ins Protokoll · Manifest erneut senden · Handbuch

Häufig gestellte Fragen

Wo werden Passwörter gespeichert?

Gespeichert wird ausschließlich im macOS-Schlüsselbund. In der Konfigurationsdatei bleibt nur der Vermerk „ist gespeichert". Der Schlüsselbund wird nur einmal, im Moment des Verbindens, geöffnet.

Werden Nutzungsdaten erfasst?

Nein. In der App steckt keinerlei Tracking. Es wird nicht erfasst, was Sie öffnen oder womit Sie sich verbinden.

Die serielle Konsole bleibt zwischendurch stehen.

Das ist eine Eigenschaft der Leitung bei umfangreicher Übertragung über UART ohne Flusssteuerung. Bei einem 4-Draht-Kabel schalten Sie in den Einstellungen Flusssteuerung (RTS/CTS) ein; bei einem 3-Draht-Kabel senken Sie die Baudrate auf der Boardseite oder teilen die Ausgabe seitenweise auf.

Muss ich meine bestehende SSH-Konfiguration neu eingeben?

Nein. Beim Import aus ~/.ssh/config wird über denselben Alias verbunden, und Host, Port, Benutzer, Schlüssel sowie ProxyJump werden aus diesem Eintrag gelesen.

Meine Konfiguration verwendet ProxyCommand.

ProxyCommand startet ein externes Programm und lässt sich deshalb in der Sandbox des App Store nicht verwenden. Bei einer Konfiguration mit Jump-Host genügt es, auf ProxyJump umzustellen — dann funktioniert es weiterhin. ssh-agent ist aus demselben Grund nicht nutzbar: Schlüsseldateien werden direkt gelesen, und bei einem passwortgeschützten Schlüssel wird beim Verbinden nach dem Passwort gefragt.

Welche macOS-Version wird unterstützt?

macOS 14 (Sonoma) oder neuer, sowohl auf Apple Silicon als auch auf Intel.

Wenn Ihnen das geholfen hat

Berth ist kostenlos. Mit Unterstützen können Sie die Entwicklung fördern.