Ich möchte einen Raspberry Pi in meinem Wochenendhaus einsetzen. Der Raspberry Pi dient dazu, die Temperaturen zu protokollieren und an einen Remote-Server mit einer festen IP-Adresse zu senden, die Daten zu speichern und auf einer einfachen Website anzuzeigen.
Es kann jedoch vorkommen, dass ich am Raspberry Pi etwas ändern möchte. Zum Beispiel Systemaktualisierungen oder eine Änderung am Programm, das die Daten an den Server sendet, oder was auch immer.
Mit dem vorgeschlagenen Setup könnte ich keine Verbindung zum Raspberry Pi von außerhalb des LANs herstellen.
HINWEIS: Ich möchte das Netzwerk nicht ändern, und der vorhandene Router kann weder Portweiterleitung noch DynDNS oder VPN.
Ich habe vor kurzem über UDP-Lochen gelesen. Die Grundidee ist, dass der Client ein UDP-Paket an eine bekannte Serveradresse sendet (dh mit einer öffentlichen IP oder aktivierten DynDNS). Client B, der eine Verbindung zu Client A herstellen möchte, fragt den Server nach der öffentlichen IP-Adresse und der Portnummer von Client A.
Es kann sich dann direkt über die öffentliche IP und den dynamischen Port mit Client A verbinden. Da Client A zuerst über den jetzt verwendeten Port mit dem Server verbunden ist, leitet NAT die Pakete an Client A weiter.
Ich hoffe, ich habe die Idee mehr oder weniger richtig zusammengefasst ...
Das hört sich alles gut an, aber das Problem ist, dass dies nicht garantiert ist, um mit einer TCP-Verbindung zu arbeiten, da der Router den Handshake der TCP-Verbindung „verstehen“ kann und wenn er nicht richtig aufgebaut ist, wird er nicht weitergeleitet die Pakete.
Wie kann ich also eine SSH-Sitzung von Client B zu Client A eröffnen, ohne dass Client A hinter einem Router mit DynDNS, einer festen öffentlichen IP-Adresse oder der Möglichkeit zur Portweiterleitung sitzt? Die Verwendung eines zentralen Servers mit einer öffentlichen, festen IP-Adresse oder einem Domänennamen wäre schwierig.
quelle
-w
aber, er sagte UDP über TCP (vielleicht dadurch, dass er beinhaltet jeden Versuch, udp mit ssh) weiterzuleiten, beinhaltet Probleme wie hohe Latenz und erneute Übertragungen von Dingen, die Sie nicht mehr wollen. Ich denke, es ist immer noch interessant, es zu versuchen. Ich sehe diese vpn via ssh und -w auch hier erwähnt wiki.archlinux.org/index.php/VPN_over_SSHAntworten:
pwnat
Quelle: http://samy.pl/pwnat.pdf
https://github.com/samyk/pwnat
quelle
Hier sind einige Lösungen:
Sie können Ihren Raspberry Pi so einrichten, dass er wieder eine Verbindung zu einem OpenVPN-Server herstellt, auf den Sie jederzeit zugreifen können.
Sie können einen Blick auf PageKite werfen. Überprüfen Sie https://pagekite.net/wiki/Howto/SshOverPageKite/
quelle
Es ist eine etwas schmutzige, aber einfache Lösung, aber was ist mit Netcat? Auf dem Raspberry Pi können Sie ein Skript erstellen, das den Befehl wiederholt:
Führen Sie auf Ihrem lokalen Host Folgendes aus:
Und:
Sie können in der ersten Instanz einen Befehl eingeben und in der zweiten die Antwort sehen.
quelle