S∆SS.

S∆SS Studio Notes · Fernzugriff · Nº 02

Fernzugriff — 02 Drei Fäden

Vom Tablet zum Mac mini in der Zimmerecke wird Remote-Zugriff aus drei Fäden gewebt: einem privaten Netzwerk (Tailscale), einem Fenster für Befehle (Termius) und einem Netz, das bei Verbindungsabbruch die Arbeit festhält (tmux). Für einen schnellen Aufbau installiert man diese drei in dieser Reihenfolge. Die Werkzeuge dürfen wechseln, die Rollen nicht. Zum Schluss kommt noch ein Reserveweg für den Tag hinzu, an dem alle drei blockiert sind.

§ 00 · Der erste Faden – Ins gleiche Zimmer verbinden

Um eine entfernte Maschine zu erreichen, müssen sie und mein Tablet zunächst so verbunden sein, als stünden sie im selben Zimmer. Diese Rolle übernimmt ein privates Netzwerk. Mein Werkzeug heißt Tailscale. Es verbindet still nur meine eigenen Geräte an verschiedenen Orten, als befänden sie sich in einem Raum.

Ein Missverständnis vorweg: Das unterscheidet sich vom geläufigen VPN, das sämtlichen Verkehr über einen fremden Server umleitet und den Standort verbirgt. In diesem privaten Netzwerk nutzt nur der Verkehr zwischen meinen Geräten diese Leitung. Alltäglicher Verkehr von Safari, Messengern oder YouTube nimmt unverändert den gewohnten Weg. Alltagsapps werden dadurch weder langsam noch merkwürdig. Der Faden ist dünn und verbindet nur das Nötige.

Beachten muss man lediglich einige Finanzapps, die die VPN-Anzeige nicht mögen. Manche blockieren bereits den Start, sobald sie „VPN eingeschaltet“ erkennen, unabhängig davon, ob ihr Verkehr tatsächlich umgeleitet wird. Für Bankgeschäfte schaltet man das VPN kurz aus, das ist alles.

LEICHT ZU VERWECHSELN · ÜBLICHES VPN ≠ DIESES PRIVATE NETZWERK
UnterscheidungDas geläufige VPNDieses private Netzwerk (Tailscale)
AufgabeLeitet sämtlichen Verkehr über einen fremden Server und verbirgt den StandortVerbindet nur den Verkehr zwischen den eigenen Geräten über eine eigene Leitung
Alltagsapps (Safari, YouTube)Werden mit umgeleitet und können langsamer werdenUnverändert der gewohnte Weg – keine Verlangsamung
Zu beachten—Nur für einige Finanzapps, die die VPN-Anzeige ablehnen, das VPN kurz ausschalten

§ 01 · Der zweite Faden – Ein Fenster für Befehle

Stehen die beiden Maschinen im selben Zimmer, braucht es ein Fenster, durch das man hineinsprechen kann. Ein Programm, das auf dem Tablet die Befehlszeile der fernen Maschine öffnet: Das ist das Fenster. Ich benutze Termius. Die Verbindung durch dieses Fenster heißt SSH, ein verschlüsselter Durchgang, in den andere nicht hineinsehen können. Gibt man durch das Fenster einen Befehl ein, wird er auf der Maschine gegenüber ausgeführt.

Es gibt viele Fenster, und welches man benutzt, ist egal. Eine Bedingung muss es jedoch erfüllen: Der Durchgang muss sicher sein. Die Verbindung muss verschlüsselt sein, damit andere nicht hineinsehen können. Sie mit einem Schlüssel zu öffnen und zu schließen ist sicherer und bequemer, als jedes Mal ein Passwort einzugeben. Der Schlüssel wird auf der eigenen Maschine hinterlegt, das Schloss steht drüben.

Jedes Fenster hat Eigenheiten. Manche schneiden angezeigte Adressen merkwürdig ab, andere reichen koreanische Eingaben nicht richtig weiter. Diese Eigenheiten bringen Anfänger am häufigsten zu Fall. Davon handelt der spätere Teil zur Fehlerbehebung.

LEICHT ZU VERWECHSELN · TÜR — DURCHGANG — FENSTER
NameWas es istWo es ist
Entfernte Anmeldung (Tür)Der Erlaubnisschalter für Verbindungen von außen zu dieser MaschineSystemeinstellungen der fernen Maschine – in Kapitel 03 eingeschaltet
SSH (Durchgang)Die verschlüsselte Verbindung selbst, in die andere nicht hineinsehen könnenZwischen den beiden Maschinen – unsichtbar
Termius (Fenster)Die App, die einen SSH-Durchgang öffnet und die Eingabe von Befehlen ermöglichtDas Tablet in deiner Hand

§ 02 · Der dritte Faden – Ein Netz, das die Trennung überlebt

Ein Fenster allein genügt nicht. Fenster sind schwach. In der U-Bahn reißt das Signal ab, das Tablet schläft ein oder das Netzwerk wechselt: Das Fenster schließt sich. Was, wenn im selben Moment auch die darin laufende Arbeit stirbt? Man startet einen langen Build, steigt in die U-Bahn und muss nach einer Station wieder von vorn anfangen.

Dafür gibt es den dritten Faden. Zwischen Fenster und Arbeit wird ein Netz gespannt. Dieses Netz heißt tmux. Die Arbeit hängt am Netz, nicht am Fenster. Schließt sich das Fenster, bleibt das Netz in der fernen Maschine und hält die Arbeit am Laufen. Nach dem Wiederverbinden hängt man sich nur wieder an dieses Netz, und der bisherige Arbeitsplatz erscheint unverändert.

Das ist die Beruhigungsvorrichtung der Remote-Entwicklung. Dank dieses tmux-Netzes habe ich trotz vieler Verbindungsabbrüche nicht ein einziges Mal meine Arbeit verloren. Nur das Fenster wird getrennt; das Netz schläft in der Maschine nicht. Wie das stationäre System bleibt auch das Netz wach.

§ 03 · Der Notweg – Einer reicht nicht

Die drei Fäden Tailscale, Termius und tmux bilden tatsächlich nur eine Art von Weg: die Befehlszeile, die Anweisungen als Text austauscht. Ich halte daneben einen andersartigen Weg bereit: ein Fernzugriffsprogramm, das den gesamten Bildschirm der entfernten Maschine auf das Tablet holt.

Ehrlich gesagt ist dieser Bildschirmweg langsam, und die Bedienung mit den Fingern unbequem. Ist die Befehlszeile ein wendiges Fahrrad, dann ist dies ein schwerfälliger Lastwagen. Trotzdem installiere ich ihn. Aus einem Grund: Wenn ein einzelner defekter Kanal die Arbeit stoppt, ist das bereits ein Versagen der Infrastruktur.

Dass zahllose Entwickler Deployments in Entwicklung, intern und Produktion aufteilen, Datenbanken doppelt vorhalten und überlegen, wie viele Reserve-Images sie in der Cloud starten sollen, ist keine digitale Kraftmeiernummer aus Langeweile. Sie wollen verhindern, dass beim Tod eines Teils alles stehen bleibt. Hier gilt dasselbe. Gibt es nur einen Durchgang, stoppt beim Abbruch dieses einen Durchgangs die gesamte Arbeit.

Meine Überlegung setzt das fort. Der Tag mit blockierter Befehlszeile wird kommen; heute ist er bloß noch nicht eingetreten. Lebt an diesem Tag der Bildschirmweg noch, selbst als schwerfälliger Lastwagen, geht die Arbeit weiter. Deshalb halte ich einen Reserveweg vor. Wer Remote-Arbeit versteht, gräbt den zweiten Weg, solange der erste noch offen ist.

Beitrag lesen: sass.studio.