Kommunikation zwischen Browser und C Programm
-
Aus einer Diskussion heraus über sicherheit und Proxy- und Firewalleinstellungen ist mir folgende Idee gekommen:
Ein Programm welches eine (lokale HTML und Javascript) Seite in einem beliebigen Browser öffnet. In der Seite kann der User eine Webseite angeben (z.B. www.google.com) die HTML und Javasriptseite ruft ein C programm auf. Dieses C programm sendet den Request durch einen HTTP Tunnel an einen Server (der in einem anderen Netzwerk steht), der dann den Request an den Webserver schickt.
So wäre es möglich auch in öffentlichen Netzwerken sicher zu surfen aber trozdem noch das Intranet aufrufen zu können.Eine VPN Verbindung wäre zwar ebenfalls eine Lösung allerdings ist es dann ja nicht möglich mit einem anderen Browser trozdem noch über das lokale Netzwerk zu surfen und somit wären Intranet-Seiten nicht aufrufbar.
Hat da jemand Tipps oder Erfahrungen? Bis jetzt bereitet mir die Schnittstelle zwischen Browser und C-Programm die meiste mühe. Einen Verschlüsselten Tunnel zum Server und von da an weiter ins Internet zu kommen ist nicht das Problem. wäre froh wenn mir da jemand einen Denkanstoss geben könnte.
Falls es schon ähnliche Programme geben sollte hab ich wohl nicht gut genug gegoogelt. Würde mich aber auch freuen wenn ihr diese posten könntet
-
Vermillion schrieb:
Bis jetzt bereitet mir die Schnittstelle zwischen Browser und C-Programm die meiste mühe.
das c-programm lauscht (z.b. lokal) auf einem gewissen port und beim browser stellst du dann 127.0.0.1 und diesen port als 'proxy' ein. eventuell muss dein c-programm das SOCKS protocol verstehen...
-
Vermillion schrieb:
Bis jetzt bereitet mir die Schnittstelle zwischen Browser und C-Programm die meiste mühe.
Um eine Antwort/Hilfe zu erhalten, solltest du vermutlich etwas konkreter werden...
EDIT: Ok, doch nicht!
-
Vermillion schrieb:
Eine VPN Verbindung wäre zwar ebenfalls eine Lösung allerdings ist es dann ja nicht möglich mit einem anderen Browser trozdem noch über das lokale Netzwerk zu surfen und somit wären Intranet-Seiten nicht aufrufbar.
Man kann ein VPN so einrichten, dass das alles möglich ist.
Vermillion schrieb:
Hat da jemand Tipps oder Erfahrungen?
Ja. Die einfachste manuelle Möglichkeit ist IMHO, "ssh -D 127.0.0.1:8080 <externer-server>" auf dem client auszuführen und dann im Browser 127.0.0.1:8080 als SOCKS-Proxy einzutragen. Das kann man auch in einem eigenen Browser-Profil machen, dann kann man in einem Browser-Fenster direkt surfen und im anderen über den SSH-Tunnel.
-
Christoph schrieb:
Vermillion schrieb:
Hat da jemand Tipps oder Erfahrungen?
Ja. Die einfachste manuelle Möglichkeit ist IMHO, "ssh -D 127.0.0.1:8080 <externer-server>" auf dem client auszuführen und dann im Browser 127.0.0.1:8080 als SOCKS-Proxy einzutragen. Das kann man auch in einem eigenen Browser-Profil machen, dann kann man in einem Browser-Fenster direkt surfen und im anderen über den SSH-Tunnel.
So mache ich das auch immer. Ideal dazu ist zB auch FoxyProxy als FF-Erweiterung. Damit kann man dann einstellen welche Seiten man über den SOCKS-Proxy benutzen will.
-
Danke für die vielen Antworten
_matze schrieb:
Vermillion schrieb:
Bis jetzt bereitet mir die Schnittstelle zwischen Browser und C-Programm die meiste mühe.
Um eine Antwort/Hilfe zu erhalten, solltest du vermutlich etwas konkreter werden...
EDIT: Ok, doch nicht!
Etwas konkreter werden ist schwer da ich selbst noch keine konkrete Idee habe. War mehr einfach ein Gedanke.
Christoph schrieb:
Ja. Die einfachste manuelle Möglichkeit ist IMHO, "ssh -D 127.0.0.1:8080 <externer-server>" auf dem client auszuführen und dann im Browser 127.0.0.1:8080 als SOCKS-Proxy einzutragen. Das kann man auch in einem eigenen Browser-Profil machen, dann kann man in einem Browser-Fenster direkt surfen und im anderen über den SSH-Tunnel.
Das wäre genau das was ich gesucht habe
Und dazu brauch ich nur ein SSH Programm (z.B. putty) auf dem Client pc und einen SSH Server (z.B. openssh-server) auf dem anderen PC oder muss ich da noch speziell was beachten?
-
Vermillion schrieb:
Christoph schrieb:
Ja. Die einfachste manuelle Möglichkeit ist IMHO, "ssh -D 127.0.0.1:8080 <externer-server>" auf dem client auszuführen und dann im Browser 127.0.0.1:8080 als SOCKS-Proxy einzutragen. Das kann man auch in einem eigenen Browser-Profil machen, dann kann man in einem Browser-Fenster direkt surfen und im anderen über den SSH-Tunnel.
Das wäre genau das was ich gesucht habe
Und dazu brauch ich nur ein SSH Programm (z.B. putty) auf dem Client pc und einen SSH Server (z.B. openssh-server) auf dem anderen PC oder muss ich da noch speziell was beachten?Das ist alles, was du brauchst.