2.SSH

385 阅读2分钟

2.SSH

SSH是一种网络协议,用于计算机之间的加密登录,它存在多种实现。对于iOS10 及之后的版本,越狱工具yalu内置了一个相对轻量记得SSH服务 dropbear, 用户可以直接使用。在iOS8和iOS9的越狱设备上,则需要安装 OpenSSH 来登录。

1.安装OpenSSH

Cydia中搜索并安装OpenSSH

查看越狱设备wifi地址,192.168.9.53。 打开终端,输入:

ssh root@192.168.9.53

稍等片刻,然后输入默认密码alpie, 完成登录。

2.配置dropbear

对于iOS10版本之后的越狱系统,不用安装 OpenSSHyalu内置了一个相对轻量级的的SSH服务 dropbear。 首先在 Cydia中搜索并安装 MTerminaladv-cmds, 然后运行 ps aux | grep dropbear命令。 可以看到,dropbear 进程已经在移动设备里运行。

2.1 USB连接

dropbear 默认支持USB连接。USB连接相较于wifi连接更加稳定和流畅。 首先通过 Homebrew 安装libmobiledevice,然后使用里面提供的 iproxy 把本地端口 2222 映射到设备的的 TCP端口 22,这样就可以通过本地端口2222进行连接了。

brew install libimobiledevice
iproxy 2222 22
ssh root@localhost -p 2222

如果觉得每次连接之前需要进行端口转换比较麻烦,可以把端口转换命令写入开机启动项中。创建~/Library/LaunchAgents/com.usbmux.iproxy.plist文件,将以下内容写入该文件。

<?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>Label</key>
        <string>com.usbmux.iproxy</string>
        <key>ProgramArguments</key>
        <array>
                <string>/usr/local/Cellar/libusbmuxd/2.0.2/bin/iproxy</string>
                <string>2222</string>
                <string>22</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
        <key>KeepAlive</key>
        <true/>
</dict>
</plist>

然后运行命令:

sudo launchctl load ~/Library/LaunchAgents/com.usbmux.iproxy.plist

可能出现如下报错:

Load failed: 122: Path had bad ownership/permissions

运行下面两条命令可以解决:

sudo chown root ~/Library/LaunchAgents/com.usbmux.iproxy.plist
sudo chgrp wheel ~/Library/LaunchAgents/com.usbmux.iproxy.plist

如果还觉得每次输入ssh root@localhost -p 2222命令很麻烦,可以通过给它指定一个名字进行SSH链接。打开 $HOME/.ssh/config 文件(如果没有就新建一个),写人以下内容。完成这些操作后,在终端输入ssh 6s命令即可登录。

Host 5s                  #自定义的设备名
Hostname localhost       #通过 USB 端口映射,写1ocalhost
User root                #以 root 用户登录
Port 2222                #指定端口号为映射的端口号 2222

2.2 wifi连接

如果要通过wifi连接, 需要在移动设备终端执行:

/usr/local/bin/dropbear -F -R -p 22 

然后再在MAC 上进行SSH登录。

ssh root@192.168.9.53

3.修改默认密码

系统中有两个角色 rootmobile。 用passwdpasswd mobile可以修改 root用户和mobile用户的密码。

iPhone:~ root# passwd
Changing password for root.
New password:
Retype new password:
iPhone:~ root# passwd mobile
Changing password for mobile.
New password:
Password must be at least 5 characters long.
New password:
Retype new password:

密码长度最少为5位。

4.公钥登录

如果嫌每次登录都要输入密码麻烦,可以使用SSH提供的公钥登录。 如果本地没有生成过公钥可以使用如下命令生成。

ssh-keygen -t rsa -P ''

运行结束,会在$HOME/.ssh目录下生成 id_rsa.pubid_rsa(公钥和私钥)。使用 ssh-copy-id 命令,将生成的公钥传到远程设备,再次登录是就不需要再输入密码了。

ssh-copy-id -i $HOME/.ssh/id_rsa.pub root@192.168.9.53