SICHERHEITS-RUNBOOK / 01

Privater MidTerm-Zugriff über Tailscale.

Ein direktes Handbuch für den Zugriff aus dem Tailnet – ohne Port 2000 im Internet zu veröffentlichen und ohne Netzwerkzugang mit Anwendungssicherheit zu verwechseln.

Von · Veröffentlicht am 14. Juli 2026

GRENZE / 02

Drei Kontrollen. Behalte alle drei.

Tailscale schützt den Pfad. Der Host kontrolliert die Exposition. MidTerm authentifiziert den Bediener.

Client

Browser-Gerät

Ein angemeldetes Tailnet-Gerät öffnet die private 100.x-Adresse des Hosts.

Netzwerk

WireGuard-Pfad

Tailscale nutzt nach Möglichkeit eine direkte Verbindung, andernfalls einen Ende-zu-Ende verschlüsselten Peer Relay oder DERP-Relay.

Host

MidTerm-HTTPS

MidTerm, PTYs, Agents, Dateien und Zugangsdaten bleiben auf dem Host.

BindMidTerm lauscht standardmäßig auf 0.0.0.0:2000: auf allen Host-Schnittstellen, nicht nur auf Tailscale. Damit kann auch ein LAN-Pfad erreichbar bleiben.
FirewallDie Host-Firewall bleibt deine Verantwortung. Begrenze eingehendes TCP 2000 auf die Tailscale-Schnittstelle oder vorgesehene private Quellen, wenn der Dienst nur im Tailnet erreichbar sein soll.
AnmeldungLasse HTTPS und den Passwortschutz von MidTerm aktiv. Tailnet-Mitgliedschaft ist eine zusätzliche Grenze, kein Ersatz für die Anmeldung an der Anwendung.
InternetkanteRichte keine Router-Portweiterleitung für TCP 2000 ein. Tailscale liefert den privaten Pfad, ohne den Dienst im öffentlichen Internet zu veröffentlichen.

RUNBOOK / 03

Direkt über die private IP

  1. Installiere MidTerm nativ auf dem Host. Installiere danach Tailscale auf dem Host und jedem Browser-Gerät.
  2. Melde die Geräte im selben Tailnet an. Führe auf dem Host tailscale status und tailscale ip -4 aus; notiere seine 100.x-Adresse.
  3. Prüfe die Host-Firewall. Wenn nur Tailnet-Zugriff gewünscht ist, entferne oder ersetze eine breite Regel für TCP 2000, die auch LAN-Verkehr akzeptiert.
  4. Lasse die MidTerm-Anmeldung aktiv und verwende ein langes, einzigartiges Passwort. Eine Tailnet-Identität ist noch keine MidTerm-Anmeldung.
  5. Verbinde Tailscale, bevor MidTerm sein Zertifikat erzeugt. Öffne anschließend https://100.x.y.z:2000 auf dem Client.
  6. Prüfe den Zertifikat-Fingerabdruck über einen unabhängigen Kanal und vertraue dem erzeugten Zertifikat auf jedem Client, statt die Browser-Warnung wiederholt zu umgehen.

Transportdetail: Tailscale versucht eine direkte WireGuard-Verbindung. Wenn NAT oder Firewall das verhindern, kann der Verkehr zuerst einen Peer Relay und anschließend als Fallback DERP nutzen. Alle drei Verbindungstypen bleiben Ende-zu-Ende verschlüsselt; kein Relay beendet MidTerm-HTTPS oder entschlüsselt die Nutzdaten. Siehe Tailscale-Verbindungstypen und Verschlüsselung.

Wenn der Pfad abgesichert ist, zeigt die CLI- und API-Referenz zur Agentensteuerung, wie Agents exakte Sessions adressieren, Evidenz prüfen und expliziten Arbeitszustand publizieren.

RICHTLINIE / 04

Eine Identität. Ein Port.

Ein neues Tailnet startet üblicherweise mit einer Allow-all-ACL. Tailscale-Richtlinien sind additiv: Ein enger Grant hebt eine vorhandene Wildcard-Freigabe nicht auf. Entferne oder ersetze die Standardfreigabe, bevor du dich auf einen minimalen Grant verlässt.

{
  "grants": [
    {
      "src": ["you@example.com"],
      "dst": ["100.101.102.103"],
      "ip": ["tcp:2000"]
    }
  ]
}

Ersetze Beispielidentität und Host-IP. Füge den Grant in die Tailnet-Richtlinie ein und prüfe, dass keine breitere ACL oder kein breiterer Grant dasselbe Ziel weiterhin freigibt. Maßgeblich sind die offizielle Grant-Syntax, die Policy-Selektoren und die Beispiele zur Standard-ACL.

PRÜFEN / 05

Beweise die Grenze.

Teste den vorgesehenen Pfad – und die Pfade, die scheitern sollen.

TailnetFühre auf dem vorgesehenen Client tailscale ping 100.101.102.103 aus. Prüfe Host und erwarteten Pfad in tailscale status.
BrowserÖffne die private HTTPS-Adresse, prüfe den Zertifikat-Fingerabdruck, melde dich an und teste Terminal, Upload, History und Wiederverbindung.
NegativtestFür eine von der Richtlinie ausgeschlossene Identität muss TCP 2000 scheitern. Bei reinem Tailnet-Zugriff muss auch die LAN-Adresse des Hosts auf Port 2000 scheitern.
ZertifikatMidTerm übernimmt bei der Erzeugung aktive Schnittstellen-IPs in die Zertifikat-SANs. Erzeuge es bei aktivem Tailscale neu, wenn die 100.x-Adresse fehlt.
DNS-NameEin Tailscale-MagicDNS-Name ist nicht automatisch eine MidTerm-Zertifikat-SAN. Nutze eine abgedeckte Adresse oder ein Zertifikat für den gewählten Namen.

GRENZEN / 06

Was diese Einrichtung nicht löst.

Privater Transport begrenzt die Exposition; er administriert den Host nicht.

Host-ZustandDer Rechner muss eingeschaltet, aktualisiert und mit laufendem MidTerm erreichbar bleiben. Lokale Benutzer und Software behalten ihre Betriebssystemrechte.
Andere WegeDie Tailscale-Richtlinie kann keinen Verkehr blockieren, der über Ethernet, WLAN, ein anderes VPN oder eine öffentliche Schnittstelle eintrifft. Begrenze Bind und Firewall bewusst.
ServeTailscale Serve kann ein Loopback-Backend nur im Tailnet bereitstellen. Das ist noch keine verifizierte MidTerm-Topologie: Teste WebSockets, Uploads, History und Wiederverbindung vor dem operativen Einsatz.
FunnelTailscale Funnel veröffentlicht im Internet. Ersetze Serve oder direkten Tailnet-Zugriff in diesem Runbook nicht durch Funnel.

FAQ / 07

Klare Antworten

Ersetzt Tailscale die MidTerm-Anmeldung?

Nein. Tailscale kontrolliert den Netzwerkpfad; MidTerm kontrolliert weiterhin den Zugriff auf die Anwendung. Lasse HTTPS und den Passwortschutz von MidTerm aktiv und beschränke die Tailnet-Richtlinie auf die vorgesehenen Identitäten und den Host.

Soll ich Port 2000 am Router weiterleiten?

Nein. Veröffentliche MidTerm nicht per Router-Portweiterleitung im Internet. Greife über die private Tailscale-Adresse des Hosts zu; direkte sowie über Peer Relay oder DERP vermittelte Tailscale-Pfade bleiben Ende-zu-Ende verschlüsselt.

Warum warnt der Browser trotzdem vor dem Zertifikat?

MidTerm verwendet ein lokal erzeugtes Zertifikat, dessen SANs die bei der Erzeugung vorhandenen Schnittstellen abbilden. Verbinde zuerst Tailscale, erzeuge das Zertifikat bei Bedarf neu, prüfe den Fingerabdruck über einen unabhängigen Kanal und vertraue dem Zertifikat auf jedem Client. Ein MagicDNS-Name kann im Zertifikat fehlen.

Kann ich MidTerm hinter Tailscale Serve betreiben?

Möglicherweise, aber behandle das für MidTerm als experimentell. Tailscale Serve ist nur im Tailnet erreichbar; MidTerms WebSocket-, Upload- und History-Flows wurden in dieser Topologie jedoch noch nicht Ende zu Ende verifiziert. Direktes MidTerm-HTTPS über die Tailscale-Adresse ist der dokumentierte Ausgangspunkt.