Dokumentation
Wie du juist einrichtest und jede Funktion nutzt, Schritt für Schritt.
Grundlagen
- So funktioniert juist
- Die Grundideen, auf denen alle anderen Seiten aufbauen, einfach erklärt, vom Netz und seinen Geräten bis zur Frische.
- Installation
- juist aus der Paketquelle oder einem Release auf Debian, Ubuntu, Fedora oder FreeBSD installieren, den Download prüfen oder das Paket aus dem Quellcode bauen.
- Das erste Netz
- Ein Netz auf einem Gerät anlegen, ein zweites einladen und prüfen, ob sich beide erreichen.
- Geräte einladen
- Ein Gerät per Code oder Link ins Netz holen, die vier Wörter vergleichen und ihm gleich beim Beitritt eine Rolle geben.
- Android
- Die Android-App von juist installieren, mit einem Telefon per QR-Code oder Code einem Netz beitreten, die Geräte beim Namen erreichen und auf dem Telefon sehen, wie jedes erreicht wird.
Anwendungsfälle
- Eigene Dienste durch den Tunnel
- Den eigenen Mailserver, die Nextcloud oder den Git-Server unter dem gewohnten Namen durch den Tunnel erreichen, während das Internet sie weiter erreicht wie bisher.
- Vom Laptop aus teilen
- Eine Datei, ein Verzeichnis oder den Webserver, an dem du gerade arbeitest, mit einem Befehl ins Internet stellen, unter dem eigenen Namen deines Laptops, wie mit ngrok oder cloudflared.
- Das Homelab im Internet
- Einen Dienst auf deinem NAS oder Heimserver unter einem Namen aus dem Internet erreichbar machen, hinter CGNAT oder DS-Lite und ohne Portfreigabe am Router.
- Werkzeuge nur für Mitglieder
- Ein Wiki, ein Dashboard oder ein anderes internes Werkzeug unter einem echten Namen mit echtem Zertifikat betreiben, das nur Mitglieder deines Netzes öffnen können.
- Das Heimnetz von unterwegs
- Drucker, Weboberfläche des Routers oder Kameras zu Hause von überall erreichen, obwohl auf ihnen kein juist läuft, über ein Mitglied im Heimnetz.
- Sicher im fremden WLAN
- Im Café, im Hotel oder im Zug den Internetverkehr und das DNS über den eigenen VPS oder den Anschluss zu Hause schicken, damit das WLAN nur verschlüsselten Verkehr sieht.
- Server ohne offenes SSH
- Port 22 zum Internet schließen und die eigenen Server per ssh durch den Tunnel erreichen, beim Namen, von den Geräten, die du zulässt.
- Aus abgeschotteten Netzen
- Dein Netz aus einem Hotel-, Firmen- oder Schulnetz erreichen, das nichts als HTTPS hinauslässt, über ein Relay auf Port 443 und, wo es einen gibt, über den Proxy der Firma.
- Ein Spieleserver für Freunde
- Einen Spieleserver zu Hause betreiben und Freunde unter einem eigenen Namen darauf spielen lassen, ohne Portfreigabe am Router, über einen Ingress oder direkt durch den Tunnel.
- Eine App im Container
- Eine App in Docker oder Podman zu einem eigenen Gerät deines Netzes machen, über einen juist-Container, der sich ihren Netz-Namespace teilt, mit eigenen Adressen und eigenem Platz in den Zugriffsregeln.
Im Alltag
- Status und Geräte
- Nachsehen, ob ein Gerät verbunden ist, was zu tun ist, welche Geräte im Netz sind und welche Änderungen es gab.
- Ohne sudo verwalten
- Einen lokalen Benutzer als Verwalter eines Geräts festlegen, damit juist-Befehle ohne sudo funktionieren.
- Namen
- Geräte über ihren Namen statt über ihre Adresse erreichen und öffentliche Namen durch den Tunnel zu einem Mitglied leiten.
- Geräte entfernen
- Ein Gerät auf allen Geräten aus dem Netz nehmen, und wissen, wie schnell die anderen es fallen lassen.
- juist aktualisieren
- Eine neue Version auf jedem Gerät installieren und das Netz auf ein neues Schema heben, sobald alle sie haben.
Admins und Netze
- Mehrere Admins
- Admins und Admin-Schlüssel hinzufügen, festlegen, wie viele eine Änderung bestätigen müssen, und Änderungen bestätigen, die auf dich warten.
- Mehrere Netze
- Ein Gerät in mehrere Netze gleichzeitig bringen und juist mitteilen, welches Netz ein Befehl betrifft.
- Umbenennen und umnummerieren
- Dem Netz oder einem Gerät einen anderen Namen geben, die IPv4-Adressen der Geräte verschieben oder das Netz beenden, auf allen Geräten gleichzeitig.
- Zugriffsregeln
- Festlegen, welches Gerät zu welchem auf welchen Ports Verbindungen aufbauen darf, welche Exit-Nodes und Subnetze es nutzen darf, und den Rest des Netzes voneinander trennen.
- Schlüssel
- Einem Gerät neue Schlüssel geben, ein Gerät von vorn beginnen lassen, mit einem verlorenen Gerät umgehen, Admin-Schlüssel sichern und wissen, was sich nicht rückgängig machen lässt.
Verkehr leiten
- Exit-Nodes
- Den Internetverkehr eines Geräts über ein anderes Mitglied des Netzes leiten, und ein Mitglied diesen Verkehr für die anderen übernehmen lassen.
- Subnet-Router
- Das LAN hinter einem Mitglied, etwa den Drucker zu Hause, von jedem Gerät des Netzes aus erreichen.
- Multicast
- Programme, die sich im LAN per Multicast finden, etwa Drucker, Medienserver und LAN-Spiele, finden so auch die Mitglieder deines Netzes.
- Relays und Ports
- Ein Relay für Geräte einrichten, die sich nicht direkt erreichen, die richtigen Ports öffnen und ohne öffentliche Helfer auskommen.
- Nur HTTPS
- Dein Netz aus einem Hotel-, Firmen- oder Schulnetz erreichen, das nichts als HTTPS hinauslässt, über deine Relays auf Port 443 und über einen Proxy, falls es einen gibt.
- Dienste veröffentlichen
- Einen Dienst auf einem deiner Geräte, etwa auf dem NAS zu Hause, unter einem Namen aus dem Internet erreichbar machen.
- Service-Mitglieder
- Einen Server veröffentlichen, dem du in deinem Netz nicht traust, über ein eigenes juistd, von dem kein Gerät Verbindungen annimmt.
- Namen nur für Mitglieder
- Ein veröffentlichter Name mit echtem Zertifikat, den nur Mitglieder des Netzes öffnen können.
- TCP-Dienste
- Einen Spieleserver oder einen anderen Dienst ohne TLS auf einem eigenen Port jedes Ingress veröffentlichen.
- Teilen
- Eine Datei, ein Verzeichnis oder einen lokalen Webserver sofort im Internet teilen, unter dem eigenen Namen des Geräts.
Aufbau
- Architektur
- Wie juist aufgebaut ist, Schicht für Schicht, inwiefern es Zero Trust umsetzt und was es von WireGuard und Tailscale übernimmt.
- Im Vergleich
- Worin sich juist von anderen Mesh-VPNs mit und ohne zentralen Server unterscheidet, und wann eines davon besser passt.
- Sicherheit
- Wem juist vertraut und wem nicht, wo die Schlüssel liegen und welche Schwächen es bewusst in Kauf nimmt.
- Qualitätssicherung
- Wie juist agentisch geschriebenen Code prüft, was die Tests belegen und wo ihre Aussagekraft endet.
Hilfe
- Fehlersuche
- Was juist health meldet, wenn etwas nicht stimmt, was das bedeutet und mit welchem Befehl du es behebst.
- Befehle
- Jeder juist-Befehl mit seinen Argumenten und Optionen, so wie seine eigene Hilfe sie nennt.