Z powodzeniem zepsułem mój iPhone 6s działający na iOS 10.2.
Zainstalowałem OpenSSH za pośrednictwem Cydii i zmieniłem moje domyślne hasło za pomocą MobileTerminal.
Jedynym problemem jest to, że kiedy uruchamiam ssh root@my_iPhone_ip_addr
, po prostu się zawiesza i nigdy się nie łączy.
Wypróbowałem aplikację SSH do przełączania trampoliny, jednak nadal się ona zawiesza.
Czy istnieje sposób, w jaki mogę włączyć SSH w telefonie za pomocą polecenia terminalu lub w inny sposób?
Odpowiedzi:
OpenSSH nie jest kompatybilny z iOS 10.2 i psuje rzeczy w późniejszych wydaniach jailbreak. Należy odinstalować zarówno OpenSSH, jak i OpenSSL (zależność).
yalu102 pochodzi z dropbear.
źródło
Powinieneś użyć wbudowanego Dropbear. Począwszy od Yalu Beta 6, musisz najpierw SSH przez USB. Następnie po zmianie hasła możesz włączyć Dropbear na innych interfejsach.
Linux lub macOS:
Skanowanie
Przykładowy plik mapowania
Uruchom Gandalfa z plikiem mapowania
SSH do portu 2000
Zmień hasło
Teraz, gdy jesteś na swoim urządzeniu z iOS ( twoje hasło zostało zmienione, prawda? ) Możesz włączyć Dropbear na innych interfejsach w następujący sposób.
launchctl load
Utwórz plik LaunchDaemon:
Wklej to do terminala:
Wpisz Ctrl-D, aby zakończyć wprowadzanie. To tworzy teraz plik ssh10022.plist
Uruchom ponownie lub użyj launchctl
Problemy:
Dropbear nie lubi domyślnych uprawnień iOS na mobilny katalog domowy, więc uwierzytelnianie za pomocą klucza SSH nie działa. Po każdym ponownym uruchomieniu muszę się zalogować za pomocą hasła i naprawić uprawnienia:
Aby debugować Dropbear: Przekieruj dzienniki Dropbear do stderr (w poniższym przykładzie uruchomiono kolejną instancję na porcie 10023).
źródło
Nie można połączyć się z ssh przez Wi-Fi za pomocą jailbreak 10.2. Musisz ssh przez USB. Istnieje kilka opcji, ale najłatwiej jest z nich skorzystać
iproxy
.Zainstaluj iproxy
brew install libimobiledevice
Na terminalu uruchom teraz następujące polecenie.
iproxy 2222 22
Umożliwi to przekierowanie całego ruchu z portu 2222 do portu 22 przez USB
Teraz możesz połączyć się z iPhonem, uruchamiając ssh
ssh root@localhost -p 2222
Zauważ, że łączysz się
localhost
z adresem innym niż twój telefon. Jeśli wszystko poszło dobrze, powinien zostać wyświetlony monit ssh.Jeśli to nie działa, sprawdź, czy ssh działa na iPhonie, uruchamiając
telnet <iphone-ip-address-here> 22
Jeśli nie możesz się połączyć, zainstaluj
openssh
pakiet z Cydii.źródło
Dropbear
, w moim przypadku musiałem zainstalowaćOpenSSH
pakiet, dlatego zasugerowałem, że ponieważ inne instrukcje wydają się oparte na wersji beta jailbreak@Colin Ma świetną odpowiedź na łamanie więzienia w Yulu, ale zrobiłem coś trochę inaczej, co może być przydatne dla ludzi. Jego odpowiedź koncentruje się na stworzeniu nowego demona o nowej nazwie, aby skutecznie działały dwa demony z SSH. Jeden dla USB i jeden dla innych połączeń TCP. Chciałem jednego słuchacza, który słuchał na wszystkich interfejsach. Byłem także na Windowsie i potrzebowałem czegoś, co z tym działałoby, czego nie zrobił Galdolf. W rezultacie skorzystałem ze skryptu Python , który rozwidliłem, aby mieć pewność, że nigdy nie zniknie.
Aby tego użyć, uruchom:
Powyższe mapuje lokalny port 2222 na zdalny port 22. Po skonfigurowaniu możesz użyć swojego ulubionego narzędzia SSH, aby się połączyć. Użyłem Putty .
Domyślna nazwa użytkownika „root” i hasło „alpine”, ale nazwa użytkownika „mobile” i hasło „alpine” mogą być również użyte do połączenia.
UWAGA: Jeśli nie znasz hasła roota, użyj Filza, aby zmienić uprawnienia /etc/master.passwd na 666, a następnie przez SSH jako użytkownik mobilny lub korzystając z ulubionego edytora plików, edytuj ten plik, aby skopiować skrót od „mobilnego” do „rootowego”, aby hasła były takie same. (Hash dla „alpine” to „/ smx7MYTQIi2M”, jeśli jest potrzebny). Następnie powinieneś być w stanie zalogować się jako root lub użyć su.
Po zalogowaniu będziesz chciał znaleźć kopie droplist.plist, które są obecnie na twoim komputerze. Prawdopodobnie są na to bardziej wydajne sposoby, ale użyłem następującego polecenia:
Co dało:
Pierwszy wpis to aktywny demon, ale drugi jest ważniejszy. Jest to demon, który Yulu instaluje za każdym razem, gdy uruchamiasz jailbreak (co musisz zrobić przy każdym ponownym uruchomieniu). Jeśli edytujesz tylko /Library/LaunchDaemons/dropbear.plist, zostanie on zastąpiony przy każdym ponownym uruchomieniu.
W rezultacie będziemy edytować ten, który jest dostarczany z Yulu, ale jeśli złapiesz plik, zauważysz, że ma on binarny format PLIST. Aby to naprawić, potrzebujemy Erica Utilities , aby uzyskać plutil. Następnie możesz uruchomić:
Spowoduje to konwersję dropbear.plist do formatu XML. Po zakończeniu możesz edytować plik w dowolnym edytorze tekstu. Użyłem nano do faktycznej edycji.
na przykład
Podczas edycji pliku chcesz pozbyć się „localhost:” z ostatniego wpisu ciągu. Spowoduje to, że detektor będzie działał na wszystkich interfejsach zamiast tylko interfejsu pętli zwrotnej (który jest dostępny tylko przez USB). W rezultacie Twój plik staje się:
Gdy to zrobisz, będziesz chciał ponownie umieścić plik w formacie binarnym:
W tym momencie sugeruję ponowne uruchomienie urządzenia i sprawdzenie, czy plik dropbear.plist Yalu został poprawnie skopiowany po ponownym uruchomieniu jailbreak:
na przykład
Po ponownym uruchomieniu powinieneś mieć możliwość SSH wykorzystując adres IP twojego telefonu i standardowy port 22.
na przykład
źródło