Método gratuito que funciona, con un iPhone con jailbreak al menos:
1) Instale openSSH en su iPhone desde cydia, o apt-get
, si prefiere el terminal.
2) Instalar python 2.7.x.
Al momento de escribir esto, la última versión es 2.7.6.
3) descargar libusbmuxd.
https://github.com/libimobiledevice/libusbmuxd
Puede hacer una git clone
o, si no tiene / quiere obtenerla git
, descargar
la versión desde la pestaña 'versiones'.
4) desempaquétalo si no tomaste la git clone
ruta. Si descargaste el tarball, hazlo
tar zxvf <tarball name>.tar.gz
desde una terminal. En Windows, use 7-zip o descargue la versión .zip de la herramienta.
5) cd
en libusbmuxd/python-client
.
6) El siguiente paso depende de la plataforma:
Ventanas
Si ejecuta Windows, tendrá que escribir manualmente la ruta a su python.exe
programa. Si elige la ubicación predeterminada, se instalará en C:\Python27
. Entonces, en Windows, vaya a su símbolo del sistema y escriba
C:\Python27\python.exe tcprelay.py -t 22:2222
.
Linux / Unix / Solaris / BSD, etc.
Si usa Linux (como yo), Cygwin en Windows, BSD / Unix, solaris, o básicamente cualquier plataforma además de Windows y DOS conocidas por el hombre, simplemente escribirá
python2.7 tcprelay.py -t 22:2222
.
7)
Todavía no lo ha hecho, ¡necesita un cliente SSH en ejecución! Esto también depende de la plataforma.
Windows - PuTTY
En Windows, Cygwin lo hace fácil, pero si aún no tiene Cygwin, PuTTY es una buena opción:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
Configúrelo como esta:
Asegúrese de establecer el nombre de usuario de inicio de sesión en 'móvil'.
Y, para un poco más de velocidad (menor sobrecarga del cifrado), cambie el cifrado a 'arcfour'. Por lo general, no recomendaría esto, pero dado que está presionando el cifrado a través de un cable USB y no de una red, la seguridad es un riesgo menor.
Si lo desea, puede guardar un perfil para esto, para evitar volver a configurarlo cada vez que tenga un problema. Esto se hace en la sección 'sesión' en la parte superior.
Linux / Unix / BSD / Solaris / OSX / HP-UX / lo que todavía me falta
Puede ejecutar ssh -D 8080 -p 2222 mobile@127.0.0.1
La contraseña predeterminada para las cuentas mobile
y root
en el iPhone debería ser alpine
. Una vez que haya iniciado sesión correctamente, debería ver una xterm
ventana similar. escriba passwd
ahora, para cambiar su contraseña a algo más seguro. Además, escriba su
y use alpine
como contraseña para iniciar sesión root
y cambiar la root
contraseña también. Luego, escriba exit
para volver a su inicio de sesión como mobile
.
8) ¡Ya casi has terminado, lo juro! ¡Es menos complejo de lo que parece hasta ahora, si realmente lo haces tú mismo!
Ahora, debe abrir su navegador web de elección; Yo uso Firefox, así que lo usaré como ejemplo. He usado Chrome, pero como no me gusta y actualmente no lo tengo instalado, actualmente no puedo usarlo como ejemplo. Pero lo configura como un proxy SOCKS, independientemente del navegador.
Estas capturas de pantalla se realizaron con un X11 reenviado, por lo que las fuentes son feas, pero no le importa.
Primero, vaya a la ventana de preferencias ( tools -> options
o edit -> preferences
, dependiendo del sistema operativo). Entonces, ve a Advanced -> Network -> Settings...
.
Use la siguiente configuración para el navegador.
Problemas y soluciones
Problema:
Sí, esto realmente no está usando el iPhone como módem.
Solución:
Superalo; funciona.
Problema:
Mi aplicación no permite configurar un proxy SOCKS.
Solución:
He tenido este problema con juegos como Minecraft. Aquí hay algunas correcciones.
Para Minecraft, agregué un argumento a ssh
. Regularmente juego en los servidores nerd.nu reddit de minecraft (reddit.com/r/mcpublic). Desde minecraft 1.6, los túneles SSH y los servidores proxy SOCKS establecidos como argumentos de línea de comando no han funcionado. Solías poder agregar parámetros de Java-DSocksProxyHost=127.0.0.1 -DSocksProxyPort=8080
y funcionaría. Ahora, sin embargo, la solución no es tan buena, pero funciona.
Cuando comienzas ssh
, en lugar de ssh -D 8080 -p 2222 mobile@127.0.0.1
hacerlo, hazlo
ssh -D 8080 -L 127.0.0.1:25565:p.nerd.nu:25565 -p 2222 mobile@127.0.0.1
.
Luego, cuando quieras conectarte al servidor, ¡agrega la URL 127.0.0.1:25565
a tu lista de servidores! ¡El servidor remoto aparecerá en 127.0.0.1/localhost gracias al milagro del túnel SSH!
Para otros programas / juegos, se aplica la misma regla. Si no puede establecer un proxy SOCKS y nada más funciona, simplemente agregue-L 127.0.0.1:<port>:<remote URL to access>:<remote port>
.
No hay nada que obliga a utilizar el mismo puerto en el 127.0.0.1
que normalmente, por lo que podría tener, por ejemplo, asignada p.nerd.nu:25565
a 127.0.0.1:1025
y el juego no le importaría, siempre que he especificado el puerto. No todos los programas son tan indulgentes, pero es útil recordarlo.
Además, recuerde: casi cualquier programa puede usar esto. Entonces, aunque no es tan bueno como tener un módem simple o algo así, definitivamente funciona. Tenga en cuenta que si pierde la conexión a wifi, probablemente comenzará a comerse el acceso a datos de su red celular. Si la red celular realiza una inspección profunda de paquetes, prepárese para un cargo por habilitar la conexión. Solo ten cuidado, por favor :) Si tienes "TetherMe" de Cydia, o algo así, podría enmascarar lo que estás haciendo. Además, a veces, si el iPhone se duerme, se apagará el wifi. Instalar insomnia
desde cydia / apt para evitar eso.
O, para evitar la inspección profunda de paquetes, también puede enviar SSH desde su iPhone a una PC en casa para el cifrado, y luego SSH a su iPhone desde su dispositivo al que está conectado.