У @Colin есть отличный ответ для джейлбрейка Yulu, но я сделал немного иначе, что может быть полезно для людей. Его ответ сфокусирован на создании нового демона с новым именем, чтобы у вас было два демона с SSH. Один для USB и один для других соединений TCP. Я хотел одного слушателя, который слушал на всех интерфейсах. Я также был на Windows и нуждался в чем-то, что работало бы с тем, чего не делал Гальдольф. В результате я пошел со скриптом Python , который я разветвлял, чтобы он никогда не исчезал на мне.
Чтобы использовать это, запустите:
python usbmuxd\pythonclient\tcprelay.py -t 22:2222
Приведенное выше сопоставляет локальный порт 2222 с удаленным портом 22. После настройки вы можете использовать вашу любимую утилиту SSH для подключения. Я использовал Putty .
- Хост: 127.0.0.1
- Порт: 2222
Имя пользователя по умолчанию «root» и пароль «alpine», но для подключения также можно использовать имя «mobile» и пароль «alpine».
ПРИМЕЧАНИЕ. Если вы не знаете пароль пользователя root, используйте Filza, чтобы изменить права доступа /etc/master.passwd на 666, затем через SSH в качестве мобильного пользователя или с помощью любимого редактора файлов отредактируйте этот файл, чтобы скопировать хеш с «мобильного» на «root», чтобы сделать пароли одинаковыми. (Хеш для "alpine" равен "/ smx7MYTQIi2M", если это необходимо). После этого вы сможете войти в систему как root или использовать su.
После входа в систему вы захотите найти копии droplist.plist, которые в настоящее время находятся на вашем компьютере. Возможно, есть более эффективные способы сделать это, но я использовал следующую команду:
find . | grep dropbear.plist
Который дал:
./Library/LaunchDaemons/dropbear.plist
./private/var/containers/Bundle/Application/023FF836-8A0A-4593-A578-6801F2A3F34D/yalu102.app/dropbear.plist
Первая запись - активный демон, но вторая важнее. Это демон, который Юлу устанавливает на место каждый раз, когда вы запускаете джейлбрейк (что вы должны делать при каждой перезагрузке). Если вы редактируете только /Library/LaunchDaemons/dropbear.plist, он будет заменяться при каждой перезагрузке.
В результате мы собираемся отредактировать тот, который идет в комплекте с Yulu, но если вы поймаете файл, вы заметите его в двоичном формате PLIST. Чтобы это исправить, нам нужны Erica Utilities , чтобы получить plutil. Затем вы можете запустить:
plutil -xml dropbear.plist
Это преобразует dropbear.plist в формат XML. После этого вы можете редактировать файл в любом текстовом редакторе. Я использовал нано, чтобы сделать фактическое редактирование.
например
nano dropbear.plist
Когда вы редактируете файл, вы хотите избавиться от «localhost:» из последней строковой записи. Это заставит слушателя работать на всех интерфейсах, а не только на петлевом интерфейсе (который доступен только через USB). В результате ваш файл становится:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<true/>
<key>Label</key>
<string>ShaiHulud</string>
<key>Program</key>
<string>/usr/local/bin/dropbear</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/dropbear</string>
<string>-F</string>
<string>-R</string>
<string>-p</string>
<string>22</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Как только вы это сделаете, вы захотите вернуть файл в двоичном формате:
plutil -binary dropbear.plist
На этом этапе я предлагаю вам перезагрузить устройство и проверить, правильно ли скопирован файл Yalu dropbear.plist при повторном джейлбрейке:
например
reboot
После перезагрузки вы сможете использовать SSH, используя IP-адрес вашего телефона и стандартный порт 22.
например
- Хост: (IP из настроек -> WiFi -> (ИМЯ WIFI)
- Порт: 22