Darmowa metoda, która działa z iPhone'em zepsutym jail co najmniej:
1) Zainstaluj openSSH na iPhonie z cydii lub apt-get
, jeśli wolisz terminal.
2) Zainstaluj Python 2.7.x.
W chwili pisania tego tekstu najnowsza wersja to 2.7.6.
3) pobierz libusbmuxd.
https://github.com/libimobiledevice/libusbmuxd
Możesz zrobić git clone
albo, jeśli nie masz / nie chcesz git
, pobrać
wersję z zakładki „wydania”.
4) rozpakuj, jeśli nie wybrałeś git clone
trasy. Jeśli pobrałeś archiwum, zrób to
tar zxvf <tarball name>.tar.gz
z terminala. W systemie Windows użyj 7-zip lub pobierz wersję .zip narzędzia.
5) cd
do libusbmuxd/python-client
.
6) Poniższy krok zależy od platformy:
Windows
Jeśli uruchomisz system Windows, będziesz musiał ręcznie wpisać ścieżkę do swojego python.exe
programu. Jeśli wybierzesz domyślną lokalizację, zostanie ona zainstalowana w C:\Python27
. Tak więc w systemie Windows przejdź do wiersza polecenia i wpisz
C:\Python27\python.exe tcprelay.py -t 22:2222
.
Linux / Unix / Solaris / BSD itp.
Jeśli używasz Linuksa (jak ja), Cygwin w Windows, BSD / Unix, solaris lub w zasadzie dowolnej platformy oprócz Windows i DOS znanej człowiekowi, po prostu napiszesz
python2.7 tcprelay.py -t 22:2222
.
7)
Jeszcze nie zrobione - Potrzebujesz klienta SSH! To także zależy od platformy.
Windows - PuTTY
W systemie Windows cygwin ułatwia to, ale jeśli jeszcze go nie masz, PuTTY jest dobrą opcją:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
Skonfiguruj jak to:
Pamiętaj, aby ustawić login użytkownika na „mobilny”.
I, dla odrobiny dodatkowej prędkości (niższy narzut związany z szyfrowaniem), zmień szyfrowanie na „arcfour”. Zwykle nie polecałbym tego, ale ponieważ przesuwasz szyfrowanie za pomocą kabla USB, a nie sieci, bezpieczeństwo stanowi mniejsze ryzyko.
Jeśli chcesz, możesz zapisać profil, aby uniknąć tworzenia kopii zapasowej za każdym razem, gdy masz problem. Odbywa się to w sekcji „sesja” na samej górze.
Linux / Unix / BSD / Solaris / OSX / HP-UX / cokolwiek jeszcze mi brakuje
Możesz uruchomić ssh -D 8080 -p 2222 mobile@127.0.0.1
Domyślne hasło dla kont mobile
i root
na iPhonie powinno być alpine
. Po pomyślnym zalogowaniu powinieneś zobaczyć xterm
podobne okno. wpisz passwd
teraz, aby zmienić hasło na coś bardziej bezpiecznego. Wpisz hasło su
i użyj go alpine
jako hasła, aby się zalogować root
i zmienić root
hasło. Następnie wpisz, exit
aby wrócić do loginu jako mobile
.
8) Już prawie skończyłeś, przysięgam! Jest to mniej skomplikowane niż się wydaje, jeśli faktycznie zrobisz to sam!
Teraz musisz otworzyć wybraną przeglądarkę internetową; Używam firefoxa, więc użyję go jako przykładu. Użyłem chrome, ale ponieważ nie podoba mi się to i nie mam go obecnie zainstalowanego, nie mogę obecnie użyć go na przykład. Ale ustawiasz go jako serwer proxy SOCKS, niezależnie od przeglądarki.
Te zrzuty ekranu zostały wykonane za pomocą przesłanego X11, więc czcionki są brzydkie, ale nie przejmuj się.
Najpierw przejdź do okna preferencji ( tools -> options
lub edit -> preferences
, w zależności od systemu operacyjnego). Następnie przejdź do Advanced -> Network -> Settings...
.
Użyj następującej konfiguracji przeglądarki.
Problemy i rozwiązania
Problem:
Tak, to tak naprawdę nie używa iPhone'a jako modemu.
Rozwiązanie:
Pogódź się z tym; to działa.
Problem:
Moja aplikacja nie pozwala na ustawienie proxy SOCKS.
Rozwiązanie:
Miałem ten problem z grami takimi jak Minecraft. Oto kilka poprawek.
W przypadku Minecrafta dodałem argument ssh
. Regularnie gram na serwerach mindraft mindraft nerd.nu (reddit.com/r/mcpublic). Od czasu Minecraft 1.6 tunelowanie SSH i proxy SOCKS ustawione jako argumenty wiersza poleceń nie działały. Kiedyś byłeś w stanie dodać parametry java -DSocksProxyHost=127.0.0.1 -DSocksProxyPort=8080
i to by działało. Teraz jednak rozwiązanie nie jest tak ładne, ale działa.
Kiedy zaczynasz ssh
, zamiast ssh -D 8080 -p 2222 mobile@127.0.0.1
rób
ssh -D 8080 -L 127.0.0.1:25565:p.nerd.nu:25565 -p 2222 mobile@127.0.0.1
.
Następnie, jeśli chcesz połączyć się z serwerem, dodaj adres URL 127.0.0.1:25565
do swojej listy serwerów! Serwer zdalny pojawi się na 127.0.0.1/localhost dzięki cudowi tunelowania SSH!
W przypadku innych programów / gier obowiązuje ta sama zasada. Jeśli nie możesz ustawić proxy SOCKS i nic więcej nie działa, po prostu dodaj -L 127.0.0.1:<port>:<remote URL to access>:<remote port>
.
Nie ma nic, zmuszając do korzystania z tego samego portu na 127.0.0.1
które normalnie, więc może mieć, na przykład, odwzorowane p.nerd.nu:25565
na 127.0.0.1:1025
mecz nie obchodzi tak długo, jak określony port. Nie wszystkie programy są tak łagodne, ale warto o tym pamiętać.
Pamiętaj też: prawie każdy program może z tego korzystać. Chociaż nie jest tak przyjemny jak zwykły modem czy coś, to na pewno działa. Pamiętaj, że jeśli stracisz połączenie z Wi-Fi, prawdopodobnie zaczniesz jeść dostęp do danych w sieci komórkowej. Jeśli sieć komórkowa przeprowadza głęboką kontrolę pakietów, przygotuj się na opłatę za umożliwienie tetheringu. Bądź ostrożny, proszę :) Jeśli masz „TetherMe” z Cydii lub coś w tym rodzaju, może to maskować to, co robisz. Ponadto czasami, gdy iPhone pójdzie spać, wyłączy Wi-Fi. Zainstaluj insomnia
z cydia / apt, aby obejść ten problem.
Lub, aby zapobiec głębokiej inspekcji pakietów, możesz również SSH z telefonu iPhone do komputera w domu w celu szyfrowania, a następnie SSH do telefonu iPhone z urządzenia, do którego jesteś podłączony.