OpenSSHとWindows Power Shellを使って脱獄したiOS端末に接続する
- Jailbreak
- 2018/08/16
OpenSSHがインストールしてあるiDeviceに接続する方法を説明します
SSHとは
SSHとは、Secure Shellの略で、リモートで他のコンピューターと通信するためのプロトコルです。SSLと同じく通信が全て暗号化されるため安全に接続できます。同じネットワークに接続してあればどの端末からでも他のすべての端末に接続できるため、iOSでは有効になっていません。しかし、脱獄しCydiaからOpenSSHというTweakをインストールした場合、またはElectra1131で脱獄した場合はSSH接続を利用することが出来ます。SSH接続ができる状態であれば端末を操作しなくてもファイル操作、コマンドの実行がリモートで実行できます。
準備:PowerShellにOpenSSHをインストールする
従来のコマンドプロンプトやWindows PowerShellではSSHは使えませんが、Microsoftがこれら2ターミナルに対応したOpenSSHをリリースしていますのでそれを利用します。以下のリンクから環境に合ったものをダウンロードしてください。
DLしたフォルダを解凍してCドライブのトップに近いディレクトリに置きます。ここではC:/Program Files/OpenSSH-Win64とします。
次にインストールスクリプトを実行するためにPowerShellの実行ポリシーを緩和します。管理者権限でPowerShellを起動してcdコマンドで先程のディレクトリに移動し『Set-ExecutionPolicy Unrestricted』を実行します。
続いてインストールのためのコマンドを実行します。
以上でOpenSSHのインストールは完了です。
iDeviceに接続してみよう
SSHが使えるようになったのでiOSデバイスに接続してみましょう。PCと端末を同じWi-Fiネットワークに接続して接続先のIPアドレスを確認しておきます。
続いてPowerShellを立ち上げ以下のコマンドを実行します
これの意味は『sshを利用してIPアドレス192.168.2.116の端末のrootアカウントに接続』です。iOSの場合mobileとrootのユーザーが選択できますが基本的にはrootでログインすることを推奨します。このコマンドを実行すると
と聞かれるのでrootのパスワード入力します。デフォルトでは『alpine』です。パスワードは入力しても画面上に表示されませんが、仕様です。
正常にログインできた場合、root#の後ろにカーソルが来ていると思います。これでSSH接続&rootへのログインは完了です。ここからUNIX系コマンドを一通り実行できます。試しにシステム情報を返すunameコマンドを実行してみましょう。unameだとカーネル名しか返してこないので-aのオプションを付けて実行します。
長ったらしくなりましたが、カーネル名やカーネルバージョン、A7チップを表すS5L8960という単語、iPhone6,1 N51APといったモデルナンバーが取得できました。
さて、接続とテストが出来たので端末から切断しましょう。exitと入力して実行すればログアウトしてくれます。