Exit-Nodes
Ein Exit-Node ist ein Gerät deines Netzes, das den Internetverkehr der anderen trägt. Im Café geht dein Laptop dann über deinen VPS ins Netz statt über das WLAN des Cafés.
Worum es geht
Normalerweise geht ein Gerät dort ins Internet, wo es gerade ist. Mit einem Exit-Node schickt es seinen Internetverkehr zuerst durch den Tunnel zu einem anderen Mitglied, einem Gerät, das zu deinem Netz gehört (So funktioniert juist). Dieses Mitglied schickt ihn weiter. Webseiten sehen dann die Adresse des Exit-Nodes, und das WLAN des Cafés sieht nur verschlüsselten Verkehr.
Zwei Schritte machen ein Gerät zum Exit-Node. Ein Admin, also eine Person,
deren Schlüssel Änderungen am Netz bestätigt, gibt dem Gerät die Rolle exit.
Eine Rolle ist eine Berechtigung, die das Netz für ein Gerät festhält. Dann
stimmt der Operator des Geräts zu, mit juist exit serve auf dem Gerät. Der
Operator ist der lokale Benutzer, der ein
Gerät ohne sudo verwaltet.
Jedes Gerät entscheidet selbst, ob es einen Exit-Node nutzt. Auf einem Gerät
ändert sich nichts, bis du dort juist exit use ausführst.
Einen Exit-Node einrichten
Dem VPS die Rolle geben:
juist grant vps exitBraucht eine Änderung mehr als einen Admin, wartet sie auf die anderen (wie Änderungen bestätigt werden).
Zustimmen, den Internetverkehr des Netzes zu tragen:
juist exit serveBeim ersten Mal fragt es, ob es ein Einrichtungsskript mit sudo ausführen
darf. Das Skript schaltet IP-Forwarding ein und lässt den weitergeleiteten
Verkehr durch die Firewall. Danach steht da serving as an exit node.
Den Internetverkehr dieses Geräts über den VPS schicken:
juist exit use vpsEs gibt internet via vps aus. Wo systemd-resolved läuft, steht in
juist status in der Zeile Exit node jetzt vps, DNS too.
Zurück im eigenen Netz schickt juist exit off den Verkehr wieder direkt und
gibt internet direct aus.
Was hindurchgeht und was direkt bleibt
- Verkehr zu öffentlichen Adressen im Internet geht über den Exit-Node.
- DNS geht auch darüber, wo auf dem Gerät systemd-resolved läuft. Namen der eigenen Domain des LANs, etwa die deines Routers, werden weiter im LAN gefragt.
- Dein LAN und die Geräte des Netzes bleiben direkt.
- Antworten auf Verbindungen aus dem Internet, etwa auf ssh zu diesem Gerät, bleiben ebenfalls direkt. So ist das Gerät weiter unter seiner eigenen Adresse erreichbar.
juist exit use vps --isolateschickt auch diese Antworten über den Exit-Node. Der Befehl bricht ab, wenn das die ssh-Sitzung beenden würde, in der du ihn ausführst.
Wenn der Exit-Node nicht nutzbar ist
Kann der gewählte Exit-Node nicht genutzt werden, wird der Internetverkehr
abgewiesen und nicht direkt gesendet. Das passiert, wenn er offline ist, nicht
mehr bedient, seine Rolle verloren hat, oder wenn der Stand des Netzes auf
diesem Gerät veraltet ist. DNS-Anfragen gehen dann nirgendwohin statt ins LAN.
Ob du direkt ins Internet gehst, entscheidest du selbst, mit juist exit off.
Gut zu wissen
juist exitlistet die Exit-Nodes, ob jeder bedient, und den, der genutzt wird.juist exit use vps --forcewählt vps, auch wenn er noch nicht bedient oder die Wahl deine ssh-Sitzung beenden würde.juist exit serve --stophört auf zu bedienen und macht die Einrichtung rückgängig.juist revoke vps exitauf dem Gerät eines Admins entzieht die Rolle.- Ein Gerät, das einen Exit-Node nutzt, ist selbst keiner. Ein Gerät in mehreren Netzen schickt das Internet nur durch eines davon.
- Ein Exit-Node steht jedem Mitglied offen: Es gibt noch keine Zugriffsregeln (ACLs), die einschränken, wer ihn nutzen darf.
- Eine von Hand eingerichtete Firewall auf dem Exit-Node muss UDP und TCP 41646
auf
juist0hereinlassen; dort beantwortet er das DNS seiner Mitglieder (Relays, Ports und Firewalls). - Unter FreeBSD arbeiten Exit-Nodes mit pf, und DNS geht über resolvconf.
- Ein sauberer Stopp von juistd hebt das Abweisen auf. Während eines Neustarts des Dienstes geht der Verkehr also kurz direkt.
Wenn etwas nicht klappt
| Du siehst | Was zu tun ist |
|---|---|
juist status: Exit node zeigt vps, internet refused: … | vps wieder erreichbar machen, oder mit juist exit off direkt gehen |
juist exit use vps: vps does not serve as an exit node | auf vps juist exit serve ausführen, oder --force anhängen |
auf vps, juist status: this device does not serve: IP forwarding is off on this host | juist exit serve noch einmal ausführen; es richtet das mit sudo ein |
warning: DNS goes to …, outside the tunnel: systemd-resolved refused juistd | das Paket installieren; seine polkit-Regel erlaubt juistd das |
warning: strict reverse-path filtering on … drops the exit node's answers | die Zeile sudo sysctl -w … ausführen, die der Hinweis ausgibt |
Nach internet refused: nennt der Status den Grund, etwa
it cannot be reached, its operator has not agreed to serve oder
the network has not made it an exit node.