Das erste Netz
Zwei Geräte, ein Netz, ein paar Minuten. Du legst das Netz auf einem Gerät an, lädst das andere ein, vergleichst vier Wörter und pingst es an.
Worum es geht
Angenommen, du hast zu Hause einen Laptop und ein NAS, beide mit
installiertem juist. Der Laptop wird das
erste Gerät eines Netzes namens home, danach lädst du das NAS ein.
Ein Netz ist die Gruppe von Geräten, die sich über juist erreichen, und jedes davon ist ein Mitglied. Wer das Netz anlegt, ist sein erster Admin: der Mensch, dessen Schlüssel Änderungen signiert, etwa das Aufnehmen eines Geräts. Siehe So funktioniert juist.
Das Netz anlegen und ein Gerät einladen
Leg das Netz an, als du selbst und ohne sudo: Dein Admin-Schlüssel gehört in
deinen eigenen Keystore, das Verzeichnis ~/.config/juist in deinem Home.
$ juist create home
not the operator; run sudo juist set --operator=alice? [Y/n] y
operator alice
created network "home"
This device laptop 198.18.36.1 fd84:7a1f:97ee:5630:7c56:12b6:971f:2222
IPv4 range 198.18.36.0/22
Quorum 1 of 1 vote
Admin alice
Break-glass /home/alice/.config/juist/break-glass-home.secrets (keep offline)
Operator alice
juist fragt einmal nach sudo, um dich zum Operator des Geräts zu machen:
dem lokalen Benutzer, der es von da an ohne sudo verwaltet. Ohne Namen gibt
juist create dem Netz zwei zufällige Wörter als Namen.
Das neue Gerät einladen:
$ juist invite
invite to "home", expires in 1h; on the new device:
juist join 42-drumbeat-tolerance-glucose # same LAN
juist join 'juist:Kx7…@192.168.1.20:41642'
Es gibt einen Code aus, für ein Gerät im selben LAN, und einen Link, für ein Gerät irgendwo sonst. Dann wartet es.
Mit dem Code beitreten, oder mit dem Link, wenn das NAS woanders steht:
$ sudo juist join 42-drumbeat-tolerance-glucose
looking for the inviting device on the LAN
connected to 192.168.1.20:41642
tell the inviting admin these words:
atlas-amulet-banjo-asteroid
Unter sudo wird der Benutzer, der sudo aufgerufen hat, Operator des NAS.
Auch die Einladung zeigt vier Wörter. Antworte nur dann mit y, wenn sie
dieselben sind wie auf dem NAS:
nas wants to join; compare with the words it shows:
atlas-amulet-banjo-asteroid
same? [y/N] y
admitting nas (nid:fcRW83T_…)
admitted nas at 198.18.36.2
nas joined
Auf dem NAS endet juist join mit den Adressen des Geräts:
joined "home" as nas
Addresses 198.18.36.2 fd84:7a1f:97ee:21a8:2ab0:e8e:caa0:b306
Devices 2
Operator alice
Prüfen, dass sich beide erreichen:
$ juist status
home · connected
This device laptop 198.18.36.1 fd84:7a1f:97ee:5630:7c56:12b6:971f:2222
Devices 1 other, heard from
Tunnels 1 of 1 live
Names home.juist
Freshness vouched just now, valid 48h
Ports udp/41643
Updated just now
NAME IPV4 IPV6 ROLES REACHED
laptop (this device) 198.18.36.1 fd84:7a1f:97ee:5630:7c56:12b6:971f:2222 voucher -
nas 198.18.36.2 fd84:7a1f:97ee:21a8:2ab0:e8e:caa0:b306 - direct
$ ping 198.18.36.2
juist devices gibt nur die Liste der Geräte aus. Wo systemd-resolved läuft,
geht auch ping nas.home.juist.
Hinter NAT oder mit öffentlicher Adresse
Der Link funktioniert auch, wenn beide Geräte an verschiedenen Orten hinter NAT stehen, etwa der Laptop zu Hause und das NAS bei einem Freund. Sie treffen sich dann über den öffentlichen BitTorrent-DHT, was etwa eine Minute dauert. Das scheitert nur, wenn beide NATs symmetrisch sind. Dann trittst du über einen Internetanschluss bei, der das einladende Gerät erreicht, oder gibst dem Netz vorher ein Relay. Die Einzelheiten stehen unter Geräte einladen.
Hinter NAT musst du in keiner Firewall etwas öffnen. Ein Gerät mit öffentlicher Adresse, etwa ein VPS, braucht 41643/udp offen.
Gut zu wissen
juist create homenennt das Netzhome; das Gerät heißt wie sein Rechner, außer du gibst--devicean.- Der IPv4-Bereich ist ein zufälliges
/22in198.18.0.0/15, etwa198.18.36.0/22. Mit--ipv4wählst du einen. - Der Code funktioniert nur im selben LAN, und ein falscher Versuch macht ihn ungültig. Der Link funktioniert dann weiter.
- Eine Einladung nimmt ein Gerät auf und gilt eine Stunde. Für das nächste
rufst du
juist invitenoch einmal auf. - Die Break-glass-Datei ist für eine Wiederherstellung gedacht, die es noch nicht gibt. Bewahre sie trotzdem offline auf.
- Der Laptop ist der erste Voucher des Netzes: ein Gerät, das stündlich bestätigt, dass der Stand des Netzes aktuell ist. Halte einen Voucher online. Siehe Frische.
Wenn etwas nicht klappt
| Was du siehst | Was zu tun ist |
|---|---|
juist: run as alice, without sudo: the admin key belongs in your keystore | juist create ohne sudo aufrufen. |
juistd not running in juist status | sudo systemctl enable --now juistd |
read-only; to manage this device … | einmal sudo juist set --operator=$USER |
warning: code voided: wrong guess from … | Mit dem Link beitreten, der weiter funktioniert. War das nicht dein Gerät, kennt jemand anderes die Einladung. |
juist: words not confirmed; nothing signed | Waren die Wörter verschieden, ist das fragende Gerät nicht das eingeladene. Starte eine neue Einladung. |
no answer from a device in juist status | Das Gerät ist offline, oder sein 41643/udp ist zu. |
no tunnel traffic from a device | 41643/udp auf einem Gerät mit öffentlicher Adresse öffnen, oder einem Gerät relay geben. |
Weitere Fälle stehen unter Fehlersuche.