![]() |
Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Zu folgendem Problem würde ich gerne mal eure Meinung oder Lösungsansätze hören:
Es soll eine App unter Firemonkey entwickelt werden, mit der bestimmte Statistiken und Artikeldaten angezeigt werden sollen. Die dazugehörigen Daten liegen in einer Firebird-DB auf einem Windows-Server im Unternehmen des Kunden. Die App soll sowohl für Android als auch für iOS verfügbar sein. Ich suche jetzt eine elegante, einfache und sichere Möglichkeit, um von der App irgendwie auf die Daten beim Kunden zugreifen zu können. Dabei sollte der Kunde möglichst wenig an seiner Netzwerkkonfiguration ändern müssen. Somit fallen Lösungen die mit Portforwarding arbeiten schon mal weg. Beim Kunden muss man in der Regel von einem herkömmlichen DSL-Zugang mit Standardrouter ausgehen. Also keine feste IP, keine Standleitung, etc. Die Statistikdaten in eine Cloud zu spiegeln fällt auch weg, weil es a) Echtzeitdaten sein sollen und b) später auch in die DB zurückgeschrieben werden soll. Toll wäre die Möglichkeit, zwischen den Geräten ein VPN aufzubauen, über das die Zugriffe erfolgen. Aber leider scheint es keine funktionierenden Komponenten für Delphi bzw. Firemonkey zu geben. Ich habe zwar im Internet unter ![]() Vielleicht kennt jemand devp2p oder weiß eine andere Möglichkeit, wie man den Datenaustausch hinkriegen könnte. Jetzt bin ich mal gespannt auf eure Ideen und Denkanstöße. Vielen Dank dafür im Voraus! |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Du kannst zumindest unter iOS ein VPN explizit einrichten (ganz sicher auch unter Android). Wenn Du dann noch in Deiner Applikation die Server IP konfigurierbar machst, sollte der Käse gegessen sein.
Sherlock |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Ja, daran hab ich auch schon gedacht, aber ich denke, das ist zu kompliziert für die Kunden.
Zum Einen die Einrichtung unter Android/iOS (die man ja noch irgendwie beschreiben könnte), aber zum Anderen muss ja auch auf der Gegenseite was eingerichtet werden und ein 08/15-Standard-Telekom-Router unterstützt kein VPN. Außerdem müsste der Kunde eine feste IP haben oder sich mit DDNS auseinandersetzen. Man muss davon ausgehen, dass die Zielgruppe keine IT-Erfahrung hat... |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Befinden sich die Geräte während der Nutzung im Netz des jeweiligen Kunden?
|
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Zitat:
|
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Eien Lösung für dieses Problem ist sicherlich nicht leicht. Ohne "Cloud" wird es nicht gehen.
Es müssen dort ja keine Daten vorliegen, diese würde nur als Portal/Broker fungieren, mit der sich die Clients und das BackEnd verbinden würden. |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Ich finde es auch etwas verwunderlich, die Anforderungen sind für die Ressourcen (dynamische IP, kein IT-Wissen, nur eine dauerhaft eingeschaltete Kiste hinter einem Heim-Anschluss) ein bisschen hoch. So einfach wie "App aufs Handy laden und gut ist" wird das sicher nicht.
|
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Ja, dass es dafür keine einfache Lösung gibt, ist mir klar. Das ist ja auch der Grund für diesen Thread.
Es wundert mich nur, dass nicht noch mehr Leute diese Problemstellung haben... |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Die Anforderungen passen einfach nicht zur technischen Ausstattung.
Wenn es sich um viele Kunden handelt. Würde ich eine zentralen Brokerdienst als zusätzliches Angebot anbieten. |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
VPN ist an der Stelle die Minimallösung, wenn Cloud explizit ausgeschlossen wird.
Die Konfiguration eines VPN geht auch auf Client-Seite per Konfigurationsdatei (ich sehe nur die Apple-Seite, für Android gibt es mit Sicherheit ähnliches) ![]() Aber irgendeiner muss halt etwas Hirn in die Router/Firewall Konfiguration stecken...das ist andererseits der Normalzustand(!) Sherlock |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Ja, ich tendiere auch immer mehr zu einer VPN-Lösung.
Hast du dir die Lösung unter devp2p.com mal genauer angesehen? Wenn ich die zum Laufen kriegen würde, wäre das die Lösung. Vielleicht sollte ich da noch mehr Hirnschmalz reinstecken... Konkret geht es dabei um das Einbinden einer .so-Datei im Firemonkey. Davon hab ich keine wirkliche Ahnung. Aber das wäre an dieser Stelle OT und ich mache bei Bedarf besser einen neuen Thread auf. Aber vielleicht kommen ja auch noch andere Ideen oder Anregungen, daher lass ich die Frage mal offen |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Sorry, aber das sieht mir nicht seriös aus. Keine Infos zum Hersteller zu finden. Letzte Aktualisierung der Seite 2015. Letzte Aktualisierung der Software 2014. Support Ticket System Offline.
Das ganze weckt in mir kein Vertrauen. VPN ist doch aber wirklich kein großes Ding. Sherlock |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Zitat:
- Portfreigaben - VPN-Protokoll - DHCP - Firewall kümmern. Da brauch es schon tiefere Netzwerkkenntisse um keine Sicherheitslöcher aufzureißen. |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Neee, das devp2p ist vom Gedanken her Peer to Peer VPN. Die Verbindung erfolgt zwischen zwei devp2p Clients...ohne Einbeziehung der Firewall vermutlich über normalerweise offene Ports wie 80 oder 443.
Sherlock |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Hmm..
Egal ob PeerToPeer, VPN oder sonst eine Verbindung: Ohne zumindertest einen Repeater hast Du hier schlechte Karten, wenn beide Seiten durch Router/Firewall oder Dynamische IPs getrennt sind. Ein Beispiel hierfür ist TeamViewer, dieser lässt eine Verbindung auch von zwei gekapselten Rechnern zu, da hier eine Zentraler Server bei der Fa. TeamViewer als Repeater eingesetzt wird. Sprich beide Seiten verbinden sich mit diesem und dieser stellt dann die Verbindung dar. Nach diesem Prinzip könnte deine (Handy) App nen VPN zu deinem, übers Internet erreichbaren Server herstellen. Dort ist bereits eine weitere App mit Datenbank-Zugriff vom Kundenserver per VPN angemeldet (Automatische Neuanmeldung bei Start). Dann kann eine Datenanfrage von deiner (Handy) App an die App mit Datenbank über deinen Repeater erfolgen. Zur Konfiguration würde eigentlich seitens des Kunden eine z.B. KundenID in beide Apps eingetragen werden, damit ein Kunde auch nur mit seinem Server kommuniziert, alle weiteren Konfiguration (Repeater-Server, VPN-Einstellungen) würden durch ein Konfig-File von Dir vorgegeben werden. Nur so eine Idee.... ;) |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
so unbekannt & kompliziert ist das Problem nun auch nicht... das ja auch der breiten Masse als TeamViewer-Konzept bekannte Verfahren, bietet sich für solche "Client2Client" Verbindungen an.
Es braucht dazu nur einen im Inet verfügbaren Server, wo eine Software drauf läuft, welche logisch für n:m Connects ausgelegt ein sollte. Klar bietet das Angriffsfläche und Datenschutzprobleme, aber wenn die Clients nur selbst per z.B. AES End2End verscchlüsselte Daten austauschen, können die WorstCase sicher im ganzen INet mitgehört werden, aber dekodieren kann sie soeinfach niemand, wenn niemals der Key auf diesem Weg verschickt wird. Da reicht als dummes ServerGateway in Step1 auch was per Indy zusammengeklicktes. Wenn man TMS Componenten verfügbar hat, nehme konfiguriere man per XDATA einen HTTPS/SSL verschlüsselten SokectServer und installiere ein eigenes SSL Zertifikat, dann ist nach Connect auch die Datenstrecke per SSL noch Standard verschlüsselt... letztendlich dist diese SSL plus XY Verschlüsselung bei Teamviewer so zig tausende Male im Einsatz und da installiert man als Anwender nur eine ganz einfache APP, zu 99% muss sich niemand um irgendwelche Netzwerkfragen kümmern (wenn nich ein ehrgeiziger Admin da explizit Steine in den Weg gelegt hat). Die einfache technische Basis auf Anwender und Betreiberseit mit ner StandardDSL Konfihuartion ist also nicht so schlimm, solange es zentral im Inet für ja schon 10..15€/MOnat zu haben einen RootServer gibt, wo man seine eigene kleine und funktional möglichst dumme "Gateway-Software" drauf installiert. Mit etwas Aufwand für Authentifizierung und einer (von extern) zu Konfigurierende Liste der zulässigen N:M Verbindungen ist das Konzept um Aufwand als auch von Datenschutz unschlagbar, denn der Server speicher NULL Daten, er empfängt nur in den RAM und leitet die Daten realtime an die zur Verbindung hinterlegten Clients weiter. Man braucht sich also "nur" um die Sicherheit der Verbindungen zu kümmern. |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Ich würde das ganze mit einer Fritzbox und dem Dienst MyFritz aufbauen. Beide Sachen sind einfach zu konfigurieren. Damit habe ich eine sichere VPN-Verbindung für iOS und Android. MyFritz stellt Dir sogar auch gleich kostenlos einen DNS-Namen zur Verfügung. Wenn man sich jetzt mit VPN verbindet, kannst Du im Netzwerk so agieren, als wenn Du per LAN-Kabel angeschlossen bist.
|
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Zitat:
Sherlock |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Zitat:
|
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Zitat:
Aber ich denke wir sollten abwarten, wie sich der TE zum bisherigen Verlauf äußert. Sherlock |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Klar, mit VPN zum Beispiel über die FritzBox und einem MyFritz-Konto würde es natürlich funktionieren, aber ich kann nicht davon ausgehen, dass alle Kunden eine FritzBox haben.
Ausgangslage war ja, dass der Kunde nichts (oder nur wenig) an seiner bestehenden Netzwerkstruktur ändern muss. Wie der Zugriff technisch machbar wäre, ist mir klar, aber ich suche nach einer Klick-und-fertig-Lösung, die der laienhafte Kunde selbst aktivieren kann... Ich bin inzwischen nun doch wieder bei der P2P-VPN Lösung (devp2p.com) gelandet, die mir am sinnvollsten erscheint, wenn ich sie dann mal ans laufen bekommen würde. (Irgendwelche Spezialisten hier, die sich mit der Einbindung von .so-Dateien unter Firemonkey auskennen? Bitte melden! :-D) |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Übrigens danke an alle, die sich bis jetzt so rege an der Diskussion beteiligt haben.
Mir ist klar, dass es vielleicht nicht DIE perfekte Lösung für das Problem gibt, aber ich finde es immer wieder interessant, welche Ideen und Anregungen sich aus einer solchen Frage ergeben. Ich bin lange genug Entwickler um zu wissen, dass manchmal ungewöhnliche Wege zum Ziel führen und man gute Lösungen oft erst in der Diskussion mit anderen findet. |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Also ich hab jetzt nicht alle Antworten gelesen, aber ich greife von einer mobilen app für unser Bestellwesen auf den server und die DB dort zu.
Das ganze mache ich über RealThinClient und 2 oder 3 Funktionen. Ich lade über eine Funktion entfernte Stamm-Daten wie Kunden, Produkte etc runter (und aktualisiere auch dann wenn was geändert wurde) und ich lade Daten (welche durch die App generiert wurden) hoch in einer 2. Funktion. Die erste Funktion habe ich so gebaut, dass ich ein SQL und eine Id sende und die Daten über JSON zurückbekomme und dann die lokale DB aktualisiere (über einen Batchmove). Das ganze sind vllt 30 Zeilen aufm Server und 50 in der app. Beim Datenhochladen warte ich auf das Ok vonm Server, dass alles da ist und dann setze ich es lokal auf gesendet. Besteht keine Internet Verbindung, dann wartet die app, bis dann eine besteht und kann solange autonom arbeiten. Hätte ich eine direkte DB-Verbindung gewählt, müsste das mobile internet benutzt werden und die Verbindung ausreichend stabil sein. Ich halte das für problematisch, zumindest in meinen Breitengraden. Ich hoffe, das hilft |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
@MyRealName
Danke für den Tip, aber es geht hier vor allem darum, wie man die Verbindung zwischen App und dem Server (bzw. DB) hinter einer Firewall hinkriegt. Lässt sich das mit den RTC-Komponenten ohne Änderungen an der Netzwerkumgebung lösen? Das Abrufen der Daten ist ja dann kein Problem mehr. |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Zitat:
Also kleinere Änderungen müssten da mit Sicherheit am Netzwerk vorgenommen werden. Und einfach mal so einen Port an einen Server weiterleiten ... kann ins Auge gehen. Der Server der von außen zugreifbar sein soll, der sollte dann auch am besten in einer DMZ stehen. |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Zitat:
Zitat:
|
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Zitat:
Das ist ja auch der Grund, warum ich darüber nachdenke, wie man das möglichst kundenfreundlich und einfach realisieren kann, weil ich nicht bei jedem Kunden mir die Netzwerksituation ansehen kann und will. Ich bin nun mit dem Hersteller von DEVP2P in Kontakt. Grundsätzlich scheint das die einzige Möglichkeit zu sein, es hinzukriegen. Unter Windows sieht es auch sehr gut aus und man kann eine Verbindung zur DB aufbauen. Es scheitert nur im Moment an Android, wobei das auch daran liegen kann, dass ich mich in diesem Umfeld zu wenig auskenne. Der Hersteller liefert für Android eine so-Datei aus und ich finde nicht den Dreh, diese in Firemonkey so einzubinden, dass es klappt. Ein Test unter iOS steht auch noch aus. Aber wenn's schon mal unter Android laufen würde, wäre ich einen großen Schritt weiter. Daher werde ich mich jetzt mal auf die Suche nach jemanden machen, der sich mit so-Files, Andoid und Firemonkey auskennt. Aber das ist jetzt OT und daher schließe ich hiermit die Frage. Allen nochmal herzlichen Dank für die Tipps und Ratschläge. Macht doch immer wieder Spaß, sich mit solch kniffligen Aufgaben zu beschäftigen.:) |
AW: Von Android/iOS auf einen entfernten Windows-Rechner zugreifen
Bei so vielen Kunden, würde ich eine Portallösung auf Jedenfall in Betracht ziehen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz