¿Hay alguna forma de enrutar todo el tráfico de Android a través de un proxy/túnel a mi enrutador Tomato?

Me gustaría poder conectar mi teléfono Android a puntos Wi-Fi públicos (algunos con conexiones sin cifrar), pero:

  1. La gente puede ver lo que estoy haciendo al interceptar transmisiones de radio sin cifrar
  2. El propietario del AP u otras personas que iniciaron sesión pueden ver lo que estoy haciendo
  3. Los piratas informáticos pueden pretender ser el punto de acceso y llevar a cabo ataques de intermediario.

Hay herramientas como Wi-Fi Ruler y WeFi para conectarse automáticamente a los puntos de acceso, pero no confío en los puntos de acceso aleatorios. Me gustaría que todo mi tráfico pasara por un túnel encriptado hasta el enrutador de mi casa y de ahí a Internet.

He hecho este tipo de túneles desde otras computadoras con SSH/SOCKS y PPTP antes. ¿Hay alguna manera de hacer esto con Android?

Más específicamente:

Estoy dispuesto a cambiar el firmware del enrutador, pero tenía problemas con la desconexión de DD-WRT , razón por la cual estoy usando Tomato. Algunas posibles soluciones:

SSH con proxy SOCKS dinámico :

  • Android supuestamente admite esto a través de ConnectBot , pero no sé cómo hacer que enrute todo el tráfico.
  • Tomate admite esto de forma nativa.

He estado usando esto con Tunnelier para mi navegación web en el trabajo. Sin embargo, requiere configurar cada aplicación para pasar por el proxy.

PPTP:

  • Android admite esto de forma nativa.
  • Tomato no admite esto, a menos que obtenga el mod jyavenard y lo compile.

Anteriormente usé PPTP para la navegación web en el trabajo y en China porque es nativo en Windows y DD-WRT. Después de un tiempo, comencé a tener problemas con él, luego comencé a tener problemas con DD-WRT, así que cambié al túnel SSH. También supuestamente tiene fallas de seguridad, pero no entiendo qué tan grande es el problema.

IPSec L2TP:

VPN abierta:

Supongo que también podría ejecutar un servidor VPN en mi escritorio, aunque eso es menos confiable y presumiblemente más lento que ejecutarlo en el enrutador. Podría cambiar el firmware del enrutador, pero desconfío de que se rompan cosas más fundamentales. Tomato ha estado libre de problemas para las cosas regulares.

Relacionado: ¿Alguien configuró un túnel SSH a su G1 (rooteado) para navegar?

Respuestas (2)

Puede configurar Android para usar un servidor proxy. Pero debes hacerlo desde el cliente adb, o desde la terminal en un g1 rooteado.

  1. > caparazón adb
  2. # sqlite3 /data/data/com.google.android.providers.settings/databases/settings.db
  3. sqlite> INSERTAR EN LOS VALORES del sistema (99, 'http_proxy', 'proxy: puerto');
  4. sqlite>.salir

lea sobre @ http://discuz-android.blogspot.com/2008/01/set-proxy-for-android-web-browser.html

Esto es solo para el navegador web estándar de Android, ¿verdad? Quiero que todas las comunicaciones de cualquier aplicación se canalicen.

Puede usar connectbot para tunelizar su conexión a través de SSH.

¿En serio? Sé cómo usar Connectbot para iniciar sesión en un servidor SSH, pero ¿cómo lo configuro para canalizar todo a través de esa conexión?
Lo uso a veces con android-vnc-viewer, consulte la pregunta n.º 8 de las preguntas frecuentes: code.google.com/p/android-vnc-viewer/wiki/faq "... Le recomendamos que haga un túnel de su conexión VNC a través de SSH con connectbot. Configure su conexión de connectbot con el servidor que aloja su servidor VNC y configure un túnel para reenviar el puerto 5900. Luego, puede configurar una conexión android-vnc-viewer a 5900 en localhost..." Algo similar se puede hacer para un túnel específico datos.
Ah, guay. Sin embargo, eso no cubre enviar todo a través del túnel SSH. Hice la misma pregunta aquí: forceclose.com/questions/369/… ¿Tal vez quieras agregar tu respuesta?
acabo de agregar :D
Esa pregunta frecuente dice "configurar un túnel para reenviar el puerto 5900", pero no dice cómo hacerlo.
en las listas de hosts de ConnectBot: - Mantenga presionada una línea de usuario@host. - Editar reenvíos de puerto. - menú - Agregar reenvío de puerto. - Completa el formulario.
También está market.android.com/details?id=org.sshtunnel , pero no estoy seguro de si canaliza todo.
@endolith esto debería ser parte de esta respuesta ...