Gibt es eine Möglichkeit, den gesamten Verkehr von Android über einen Proxy / Tunnel zu meinem Tomato-Router zu leiten?

19

Ich möchte mein Android-Handy mit öffentlichen Wi-Fi-Punkten verbinden können (einige mit unverschlüsselten Verbindungen), aber:

  1. Die Leute können sehen, was ich tue, indem sie unverschlüsselte Funkübertragungen abfangen
  2. Der AP-Besitzer oder andere angemeldete Personen können sehen, was ich tue
  3. Hacker können sich als Zugangspunkt ausgeben und Man-in-the-Middle-Angriffe ausführen

Es gibt Tools wie Wi-Fi Ruler und WeFi, um automatisch eine Verbindung zu Access Points herzustellen , aber ich vertraue keinen zufälligen APs. Ich möchte, dass der gesamte Datenverkehr über einen verschlüsselten Tunnel zu meinem Heimrouter und von dort aus ins Internet geleitet wird.

Ich habe solche Tunnel schon von anderen Computern mit SSH / SOCKS und PPTP gemacht . Gibt es eine Möglichkeit, dies mit Android zu tun?

Genauer:

Ich bin bereit, die Router-Firmware zu ändern, aber ich hatte Probleme mit der DD-WRT- Trennung, weshalb ich Tomato verwende. Einige mögliche Lösungen:

SSH mit dynamischem SOCKS-Proxy :

  • Android unterstützt dies angeblich über ConnectBot , aber ich weiß nicht, wie ich es dazu bringen soll, den gesamten Datenverkehr weiterzuleiten .
  • Tomate unterstützt dies von Haus aus.

Ich habe dies mit Tunnelier für mein Surfen im Internet bei der Arbeit verwendet. Es ist jedoch erforderlich, dass jede App eingerichtet wird, um den Proxy zu durchlaufen.

PPTP:

  • Android unterstützt dies nativ.
  • Tomato unterstützt dies nicht, es sei denn, Sie holen sich den Jyavenard-Mod und kompilieren ihn?

Ich habe vorher PPTP verwendet für das Surfen im Internet bei der Arbeit und in China verwendet, da es in Windows und DD-WRT native ist. Nach einer Weile begann ich Probleme damit zu haben, dann begann ich Probleme mit DD-WRT zu haben, also wechselte ich stattdessen zum SSH-Tunnel. Es hat angeblich auch Sicherheitslücken, aber ich verstehe nicht, wie groß das Problem ist.

IPSec L2TP:

OpenVPN:

Ich könnte auch einen VPN-Server auf meinem Desktop betreiben, obwohl dies weniger zuverlässig und vermutlich langsamer ist, als dies im Router selbst der Fall ist. Ich könnte die Router-Firmware ändern, aber ich bin vorsichtig, wenn grundlegendere Dinge kaputt gehen. Tomate ist für das regelmäßige Material problemlos gewesen.

Verwandt: Hat jemand einen SSH-Tunnel zu seinem (verwurzelten) G1 zum Browsen eingerichtet?

Endolith
quelle

Antworten:

3

Sie können Android so konfigurieren, dass ein Proxy-Server verwendet wird. Sie müssen dies jedoch entweder vom adb-client oder vom terminal in einem verwurzelten g1 aus tun.

  1. > adb shell
  2. # sqlite3 /data/data/com.google.android.providers.settings/databases/settings.db
  3. sqlite> INSERT INTO system VALUES (99, 'http_proxy', 'proxy: port');
  4. sqlite> .exit

Lesen Sie mehr über @ http://discuz-android.blogspot.com/2008/01/set-proxy-for-android-web-browser.html


quelle
Dies ist nur für den gängigen Android-Webbrowser, oder? Ich möchte, dass jede Kommunikation von jeder App getunnelt wird.
Endolith
2

Sie können Connectbot verwenden, um Ihre Verbindung über SSH zu tunneln.

Macarse
quelle
1
"Ja wirklich?" Ich weiß, wie ich mich mit Connectbot bei einem SSH-Server anmelde, aber wie konfiguriere ich ihn, um alles über diese Verbindung zu tunneln?
Endolith
1
Ich verwende es manchmal mit android-vnc-viewer, überprüfe die FAQ-Frage 8: code.google.com/p/android-vnc-viewer/wiki/faq "... Wir empfehlen Ihnen, Ihre VNC-Verbindung über SSH mit connectbot zu tunneln. Richten Sie Ihre Connectbot-Verbindung zu dem Server ein, auf dem sich Ihr VNC-Server befindet, und konfigurieren Sie einen Tunnel für die Weiterleitung von Port 5900. Dann können Sie eine Android-VNC-Viewer-Verbindung zu 5900 auf localhost einrichten ... "Ähnliches kann für bestimmte Tunnel getan werden Daten.
Macarse
Achso cool. Das bedeutet jedoch nicht, dass alles über den SSH-Tunnel gesendet wird. Dieselbe Frage habe ich hier gestellt: forceclose.com/questions/369/… Vielleicht möchten Sie Ihre Antwort hinzufügen?
Endolith
1
Ich habe gerade hinzugefügt: D
Macarse
1
in den Hosts-Listen von ConnectBot: - Drücken Sie lange auf eine user @ host-Leitung. - Port vorwärts bearbeiten. - Menü - Port weiterleiten. - Füllen sie das Formular aus.
Macarse