"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Server Client Programmierung IoT Zugriff ohne FW-Rules/Portforwarding

djonny 25.02.2015 - 22:14 2885 9
Posts

djonny

Addicted
Avatar
Registered: Oct 2008
Location: Bgld/W
Posts: 598
Hi,

Ich bin zurzeit auf der Suche nach einer Lösung wie ich eine Client-Server Verbindung hinbekomme welche in 2 Wege über das Internet hinaus kommunizieren kann.

Bsp.:
Client (zB. Raspberry Pi) <-> Server (Linux Debian)

Client ist hinter einer Firewall und es ist kein Portforwarding möglich.
Server steht in einer DMZ mit public IP.

Jetzt bin ich am überlegen ob es nicht möglich ist, dass der Client eine Verbindung zum Server aufbaut und diese nicht schließt. Somit sollte doch der Server auch den Client Befehle senden können?

Hat jemand damit Erfahrung oder weiß jemand eine gute Seite bzw. Suchbegriffe?

Des Weiteren wäre es möglich soetwas über MQTT zu realisieren?

tia Jonny

davebastard

Vinyl-Sammler
Avatar
Registered: Jun 2002
Location: wean
Posts: 12161
ich weiß jetzt nicht wie dir das programmiertechnisch hilft aber z.B. ein ssh reverse tunnel kann das.
z.B random google link
http://chriskrz.selfhost.bz/index.p...tt-fur-schritt/

bsox

Schwarze Socke
Avatar
Registered: Jun 2009
Location: Dschibuti
Posts: 1066
+1 für ssh tunnel vom Rasp zum Linux Server.
Kombiniert mit einem kleinen Script, dass den Tunnel bei Bedarf wieder aufbaut, ist das eine einfach aufgebaute Lösung.

Eine Alternative ist ein VPN (z.B. OpenVPN) aufzubauen, wenn der Server über ein paar konfigurierbare Ports erreichbar ist.

nexus_VI

Overnumerousness!
Avatar
Registered: Aug 2006
Location: südstadt
Posts: 3746
SSH, und je nach Anwendung gleich die Verbindung offen halten: http://en.wikibooks.org/wiki/OpenSS...ok/Multiplexing

Denne

Here to stay
Avatar
Registered: Jan 2005
Location: Germany
Posts: 2801
Edit: del, wurde schon alles genannt... war zu spät :( Man sollte wohl net ewig Tabs offen lassen und diese nicht refreshen, bevor man antwortet :rolleyes:

Crash Override

BOfH
Registered: Jun 2005
Location: Germany
Posts: 2951
Ansonsten geht so etwas mit halboffenen Verbindungen wie Push Notifications bei ActiveSync.

djonny

Addicted
Avatar
Registered: Oct 2008
Location: Bgld/W
Posts: 598
Vielen Dank für die schnellen und hilfreichen Tipps.

Kennt ihr auch noch andere Möglichkeiten? Der Client wird vielleicht aus kostengründen ein Arm Prozessor werden welcher mittels c++ programmiert wird.

Für diesen Prozessor gibt es zb eine fertige mqtt Bibliothek, deshalb auch meine Frage ob dies eventuell auch mit dem möglich wäre.

Falls es hierbei nichts einfaches gibt werde ich wahrscheinlich eh auf ein raspberry zurückgreifen müssen.

Tia Jonny

Denne

Here to stay
Avatar
Registered: Jan 2005
Location: Germany
Posts: 2801
Sicher kann man sowas auch selbst coden. Eine Verbindung vom Client mit dem Server aufbauen und diese mit Keep-Alive-Messages aufrecht erhalten z.B.
Was ist denn der Zweck der Sache, wenn man fragen darf?

djonny

Addicted
Avatar
Registered: Oct 2008
Location: Bgld/W
Posts: 598
Also es geht darum dass ich gerne mit Web 3.0 und Internet of things herum experimentieren möchte, dazu würde ich gerne bei verschiedenen Leuten aus dem Bekanntenkreis Sensoren aufstellen.

Diese verbinden Sie mit dem heimnetzwerk alles andere soll dann über eine Art Management Website im public web gesteuert werden.

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12069
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz