Kindle Paperwhite: Jailbreak & SSH 接続

Takami Torao Kindle Paperwhite 2012 Kindle Paperwhite 2015 #Kindle
  • このエントリーをはてなブックマークに追加

概要

Amazon Kindle の Jailbreak はその本体がリリースされた当初からコミュニティによって活発に行われてきた。初期の手法はメーリングリストを通じて個々のユーザの作業によって貢献されてきた。しかしその積み重ねによって現在では情報が散在し、情報も口語の英語で書かれていて理解しにくい状況となっている。さらに、機種によって Jailbreak の方法が異なるケースもあり、自身の機種に適切な情報を見つけることが一層困難となっている。

このページは Kindle Paperwhite をターゲットに Jailbreak (脱獄) し、ssh 経由で接続してコマンドライン操作ができるようにするまでの手順を記載している。実際にこのページの手順で作業を試した Kindle Paperwhite モデルは以下の通り。

F
Kindle モデル 世代 型番 ファームウェアバージョン 画面 結果
Kindle Paperwhite 3 (2015) Wi-Fi 7th PW3 5.13.6 (3731990038) モノクロ 16 階調 E Ink / 6 型 / 1072✕1448 (300ppi)
Kindle Paperwhite 2 (2013) Wi-Fi 6th PW25.12.2.2 (3791510038) モノクロ 16 階調 E Ink / 6 型 / 1072✕1448 (300ppi)
Kindle Paperwhite (2012) Wi-Fi 5th PW 5.6.1.1 (2689890035) モノクロ 16 階調 E Ink / 6 型 / 768✕1024 (212ppi)
Kindle Basic 2 (2016) Wi-Fi 8th KT3 5.12.2 (3569650025) モノクロ 16 階調 E Ink / 6 型 / 600x800 (167ppi)

試した中では Kindoe Paperwhite 3 と 2 がおすすめ。初代 Kindle Paperwhite は経年劣化で滑り止め加工が加水分解してベタベタになっていたり、ステータスバーがゴミ

Kindle シリーズの Jailbreak は型番やファームウェアによって手順が異なるため注意が必要である。このページに記載した手順で Jailbreak 可能なモデルは概ね 2012 - 2021 年の Kindle Paperwhite と想定しているが、それ以外のモデル (例えば古い Kindle Touch や Kindle Oasis、最新の Kindle Paperwhite など) にも適用できるかも知れない。

Table of Contents

  1. 概要
  2. 1. 準備
    1. 1.1 型番の特定
    2. 1.2 工場出荷時リセット
  3. 2. Jailbreak の実施 (PW2 以降)
    1. 2.1 ソフトウェアのダウンロード
    2. 2.2 デモモード起動
    3. 2.3 Jailbreak の実行
    4. 2.4 ホットフィクスの適用
  4. 3. Jailbreak の実施 (PW 以前)
    1. 3.1 Kindle 5.6.1.1 から 5.3.3 へのダウングレード
    2. 3.2 Jailbreak の実行
  5. 4. ランチャーとインストーラーの設定
    1. 4.1 KUAL と MRPI のインストール
  6. 5. Wi-Fi 経由の ssh 接続設定
    1. 5.1 USBNetwork のインストール
    2. 5.2 公開鍵の追加
    3. 5.3 sshd の起動と接続
  7. トラブルシューティング
  8. 参照

1. 準備

まず Kindle Paperwhite 本体 (以下 Kindle と表記) の型番を確認し、リセットして工場出荷時の状態にする。

以下、Kindle 本体が USB ケーブルで PC と接続されているかで挙動が変わるケースもあることから、指示があるまで USB ケーブルを接続しないことを推奨する。このため作業前に Kindle 本体を十分に充電しておくことをおすすめする。

1.1 型番の特定

  • Kindle のシリアル番号を参照し (Fig 1)、Kindle Serial Number [2] や Which Kindle do I have? A quick guide to identifying all of Amazon's e-readers [4] で型番を調べる。シリアル番号の参照方法は型番によって異なるが Settings からたどることができる。

    1. → Settings → → Device Info、または
    2. → Settings → Device Options → Device Info

    例えば Fig 1 で使用した端末のシリアル番号は G090KB0361650BFB であるため型番は PW3 となる。またファームウェアバージョンを記録しておく。

    Device Info
    Fig 1. Kindle 端末の Device Info 表示。

1.2 工場出荷時リセット

  • Kindle の工場出荷時リセットを実行する。

    1. → Settings → Device Options → Reset → YES (Fig 2)、または
    2. → Settings → → Reset → YES
  • 起動後の言語選択では必ず English (United Kingdom) または en_GB を指定する (Fig 3)。

  • 自動アップデートなどを避けるため Wi-Fi 設定はスキップする。CONNECT TO WI-FI → × (閉じる) → SET UP KINDLE LATER → YES でスキップできる。

Reset
Fig 2. 工場出荷時リセットの確認画面。
Language Selection
Fig 3. 言語選択では English (United Kingdom) を選択。

なお Jailbreak 作業中に Kindle 本体を工場出荷時の状態に戻したい場合はトラブルシューティングの方法を使うこともできる。

2. Jailbreak の実施 (PW2 以降)

この章では工場出荷リセット直後の型番 PW2, PW3, PW4, PW5, KV, KT2, KT3, KT4, KOA1, KOA2, KOA3、ファームウェア 5.12.2.2 ~ 5.14.2 の Kindle で有効な方法を説明する。より古い Kindle ではこの章をスキップして次章 PW1 以前の手順を参照。

この手順は WatchThis - Software Jailbreak for any Kindle <= 5.14.2 [3] に基づいており、実際の操作や画面をより詳しく具体的に説明したものであるため、元のページも併せて参照することを推奨する。

2.1 ソフトウェアのダウンロード

  • WatchThis - Software Jailbreak from any Kindle <=5.14.2 [3] から watchthis-jailbreak-r03.zip をダウンロードして展開する。

  • ZIP ファイル内の自身の Kindle に該当する watchthis-release/MODEL/MODEL-VERSIONdemo.jsonMODEL-VERSION.zip が含まれていることを確認する。Fig 4 はそれぞれ PW35.13.6 の例である。

    Expand ZIP file
    Fig 4. ZIP ファイルに demo.json と PW3-5.13.6.zip が含まれていることを確認。

2.2 デモモード起動

  • 検索ボックスに ;enter_demo と入力し Enter を押す (Fig 5; 検索ではない点に注意)。ホーム画面が表示され見た目上の変化はないが、これで次回の再起動のときにデモモードに入る。

  • 電源ボタン長押し → RESTART で Kindle をリスタートする。

    Enter Demo
    Fig 5. 検索ボックスに ;enter_demo と入力して Enter 後にリスタート。
  • 起動後の Wi-Fi 設定は前回同様スキップする。

  • Register This Demo というプロンプト画面で Store Name を適当に入力して CONTINUE を押す (Fig 6)。

  • Fetching available demo types は Skip (Fig 7)、Select demo type は画面中央の Standard (Fig 8)、Demo Mode: Add Content は Done (Fig 9) を選択する。

    なお Demo Mode: Add Content 画面は後の手順にも出てくるがここではまだファイルを転送しないこと。

    Register This Demo
    Fig 6. Register This Demo では Store Name を適当に入力して CONTINUE。
    Fetching available demo types
    Fig 7. Fetching available demo types は Skip。
    Select demo type
    Fig 8. Select demo type では画面中央の Standard を選択。
    Demo Mode: Add Content
    Fig 9. Demo Mode: Add Content では Done を選択。
  • 画面が切り替わると自動でスクリーンセーバーがパラパラと切り替わるデモ画面 (未構成) が表示される。

  • 画面をタップすると CONFIGURE DEVICE と表示されるので、Fig 10 のように 1.画面右下を縦に二本指でタップして、2.画面下を左方向にスワイプするとホーム画面が表示される (ややコツがいるので何度も試してみる必要がある)。

  • 表示されたホーム画面で検索ボックスに ;demo と入力し Enter を押すと Demo Menu が表示される (Fig 11, Fig 12)。

  • 表示されたメニューから Sideload Content を選択。Fig 13 の画面が表示されデータ転送が可能になる (デモモード中はデフォルトでは USB ケーブルを接続してもデータ転送モードにならない)。

    Configure Device
    Fig 10. デモモードのスクリーンセーバーを解除するためのシークレットジェスチャー。
    Input ;demo
    Fig 11. 検索ボックスに ;demo と入力して Enter。
    Demo Menu
    Fig 12. デモモードのメニュー画面。
    Demo Mode: Add Content
    Fig 13. Demo Mode: Add Content 画面で USB ケーブルで PC と接続する。

2.3 Jailbreak の実行

  • PC と Kindle を USB ケーブルで接続する。USB Device Mode となり外部ストレージとして認識される。

  • Kindle ストレージのルートディレクトリ直下に .demo/ というディレクトリを作成する。

  • ZIP ファイル内の watchthis-release/MODEL/MODEL-VERSION に保存されている demo.jsonMODEL-VERSION.zip ファイルを Kindle の .demo/ ディレクトリにコピーする。

  • .demo/goodreads という空のディレクトリを作成する。最終的に Fig 14 のような配置になる。

    Copy Files
    Fig 14. demo.json と PW3-5.13.6.zip を /.demo にコピー。
  • USB ケーブルを外すと Fig 13 画面に戻るので Done を押し、Fig 12 の Demo Menu を Exit する。

  • Kindle ホーム画面で以下のいずれかの手順を踏むと本体がリスタートして Jailbreak が始める (Fig 19)。

    1. Settings から Help & User Guides → Getting Started を選択。

    2. PW3: 検索ボックスで ;dsts と入力して Enter を押して (Fig 16) 表示された設定メニューから Help & User Guides → Getting Started を選択。

    3. PW2: Store のショッピングカートを選択。

    Input ;dsts
    Fig 16. ;dsts と入力して Enter を押し Settings 画面に入る。
    Settings
    Fig 17. デモモードの Settings 画面。
    Getting Started
    Fig 18. デモモードの Getting Started 画面。
    Jailbreak中の画面
    Fig 19. Jailbreak 中の画面。

2.4 ホットフィクスの適用

  • 起動したら検索ボックスに ;uzb と入力して Enter を押す (Fig 20; 画面上は何も起きないが USB Device Mode が有効になる)。

  • USB ケーブルで PC と接続し、ZIP ファイル内の watchthis-release/Update_hotfix_watchthis_custom.bin を Kindle 端末のルート直下にコピーする (Fig 21)。

  • USB ケーブルを取り外す。

  • 検索ボックスに ;dsts と入力し Enter を押して再び Settings メニューに入る (Fig 16, Fig 17)。

  • Devide Options → Update Your Kindle → OK を選択する (Fig 22)。カスタム Hotfix がインストールされ再起動が始まる。これによりデモモードから抜け、アプリケーションレジストリが再構築され、不要な Jailbreak 用のファイルが削除される。

    Input ;uzb
    Fig 20. 検索ボックスに ;uzb と入力。
    Copy Hotfix
    Fig 21. Hotfix ファイルを Kindle 本体にコピー。
    Update Your Kindle
    Fig 22. Update Your Kindle 画面。

Jailbreak 作業の完了を確認したら次のセクションをスキップして 4 章に続く。

3. Jailbreak の実施 (PW 以前)

この章では工場出荷リセット直後の型番 KT, PW, PW2、ファームウェア 5.0 ~ 5.4.4.2 の Kindle で有効な方法を説明する。前章の手順に成功している場合、この章は読み飛ばして良い。

3.1 Kindle 5.6.1.1 から 5.3.3 へのダウングレード

初代 Kindle Paperwhite (型番 PW, 2012 モデル) のファームウェア 5.6.1.1 のように、この章で説明する方法の対象から外れている場合はファームウェアのダウングレードを実施することで回避ができる。

  • Amazon サイトからファームウェア 5.3.3 をダウンロードする (未確認だが 5.4.4.2 の方が良いかも知れない)

  • USB ケーブルで Kindle を PC に接続する。USB ケーブルはダウングレード作業が終わるまで接続したままにしておく。

  • ダウンロードしたファームウェア update_kindle_5.3.3.bin を Kindle 本体のルートディレクトリ直下にコピーする。

  • コピーが完了したら、少なくとも 2 分待つ。

  • Kindle 本体の電源ボタンを長押しして再起動すると Software Update 画面が表示されファームウェアのインストールが始まる。

  • インストールが終わると Kindle 本体が再起動するので、起動後に USB ケーブルを切断する。Defice Info でファームウェアを確認できたら完了。

    Downgrade PW1
    Fig 23. ダウングレード後の 5.3.3 となった初代 Kindle Paperwhite。

この節の説明は How to Downgrade PW 1 ca from 5.6.1.1 to 5.3.3 and maybe PW2 [5] および Jailbreak Kindle Paperwhite 1 with 5.6.1.1 [6] を参考にしているので併せて参照することをおすすめする。

3.2 Jailbreak の実行

ファームウェアを 5.3.3 にダウングレードしたことで Kindle Touch/PW1/PW2 5.0.x - 5.4.4.2 JailBreak. Plus FW 5.x USBNetwork. [7] で紹介されている方法が使えるようになる。

  • Snapshots of NiLuJe's hacks [8] から K5 JailBreak (5.0.x - 5.4.4.2)kindle-jailbreak-1.16.N-r19426.tar.xz をダウンロードして解凍する。

  • アーカイブに含まれる kindle-5.4-jailbreak.zip という ZIP ファイルを展開して、そこに含まれているすべてのファイルをそのまま Kindle 本体のルートディレクトリ直下にコピーする。

  • Kindle の USB ケーブルを外し → Settings → → Update Your Kindle を選択する (Fig 24)。画面下に **** JAILBREAK **** と表示されていれば (Fig 25) Jailbreak は成功している。

    Update Confirmation
    Fig 24. アップデートの確認画面。
    PW1 Jail-broken
    Fig 25. Jailbreak が完了。

なお、ファームウェアのダウングレードを行った場合は、Jailbreak が終わった後に update_kindle_5.6.1.1.bin などを使用して前節と同じ手順で元のファームウェア (この場合は 5.6.1.1) に戻しても良い (未確認)。

Jailbreak の作業が完了したら 4 章に続く。

4. ランチャーとインストーラーの設定

Jailbreak が完了したら KUAL (Kindle Unified Application Launcher)MRPI (MobileRead Package Installer) をインストールする。KUAL は Jailbreak 後の Kindle 向けのアプリケーションランチャーユーティリティである。

ここでもファームウェアによって必要なファイルや手順が異なるため注意が必要である。この節での説明は Installing KUAL/MRPI に基づいている。

4.1 KUAL と MRPI のインストール

  • PC と Kindle を USB ケーブルで接続し、PC からストレージとして認識させる。

  • Snapshots of NiLuJe's hacks [8] から KUAL と MRPI アーカイブファイルをダウンロードして展開する。

    • ファームウェア 5.9 以降:
      KUAL (coplate): KUAL-f190a38-20240104.tar.xz

      ⇨ アーカイブ内の Update_KUALBooklet_f190a38_install.bin を Kindle ストレージの mrpackages/ ディレクトリにコピーする。

    • ファームウェア 5.8.x 以前:
      KUAL : KUAL-v2.7.32-g74c69f9-20240104.tar.xz

      ⇨ アーカイブ内の KUAL-KDK-2.0.azw2 (K2, DX, K3, K4 の場合は KUAL-KDK-1.0.azw2) を Kindle ストレージの documents/ ディレクトリにコピーする。

    • MR Package Installer: kual-mrinstaller-1.7.N-r19303.tar.xz

      ⇨ アーカイブ内の extensions/mrpackages/ の 2 つのディレクトリを Kindle ストレージのルート直下にコピーする。

  • USB ケーブルを取り外す。

  • ファームウェア 5.9 以降: Kindle の検索ボックスに ;log mrpi と入力して Enter を押すと MRPI が起動する (Fig 26)。画面上に Hush, little baby... (おやすみ赤ちゃん) と表示され Kindle が再起動する (Fig 27)。起動するとホーム画面に KUAL という新しいブックが追加されている (Fig 28)。

    Input ;log mrpi
    Fig 26. ;log mrpi と入力して Enter。
    Restarting
    Fig 27. Hush, little baby... という文字が現われ再起動する。
    KULA on Home
    Fig 28. PW3: ホーム画面に KUAL が表示される。
  • ファームウェア 5.8.x 以前: USB ケーブルを外すと Kindle ホームに Kindle Launcher という新しいブックが追加されている (Fig 29)。

    Update Confirmation
    Fig 29. PW: 新しいブックが追加されている。

5. Wi-Fi 経由の ssh 接続設定

KUAL と MRPI をインストールしたら、次に Wi-Fi ネットワーク経由で Kindle に ssh ログインできるように構成する。この手順は ssh の設定に関する一般的な説明は省略している。

5.1 USBNetwork のインストール

  • PC と Kindle を USB ケーブルで接続する。

  • Snapshots of NiLuJe's hacks [8] から以下のアーカイブファイルをダウンロードして展開する。

    • USBNetwork Hack: kindle-usbnet-0.22.N-r19297.tar.xz

      PW2 以降の場合はアーカイブ内の Update_usbnet_0.22.N_install_pw2_and_up.bin を、PW 以前の場合は Update_usbnet_0.22.N_install_touch_pw.bin を Kindle ストレージの mrpackages/ ディレクトリにコピーする。

  • USB ケーブルを取り外す。

  • KUAL → Helper → Install MR Packages (Fig 30) を選択すると、先ほどコピーした bin ファイルが認識されて USBNetwork Hack のインストールと再起動が始まる (Fig 31)。

    Install MR Pakckage
    Fig 30. Install MR Packages を選択。
    Install USBNet
    Fig 31. usbnet のインストール。
  • 再起動後に KUAL → USBNetwork メニューが追加されていることを確認する。

5.2 公開鍵の追加

デフォルトの root パスワードはシリアル番号に基づいて生成されたランダムな文字が設定されていて明らかではないので、公開鍵認証でログインできるように構成する。authorized_keys に追加する公開鍵を準備しておく。

  • PC と Kindle を再度 USB ケーブルで接続する。ストレージとして認識しないときは USBNetwork が有効になっているので検索ボックスに ;un と入力して Enter キーを押し有効/無効を切り替える。

  • Kindle 側のストレージの usbnet/etc/authorized_keys ファイルに ssh 接続で使用する公開鍵を追加する。具体的には ~/.ssh/id_ed25519.pub などの公開鍵ファイルの内容を行としてそのまま追加すれば良い。

  • USB ケーブルを取り外す。

5.3 sshd の起動と接続

  • KUAL → USBNetwork メニューから Enable SSH at boot, Enable verbose mode, Allow SSH over Wifi, SSHD: Use OpenSSH の 4 つを有効化する (Fig 32, Fig 33)。

    USBNetwork Menu
    Fig 32. USBNetwork メニュー。
    USBNetwork Menu
    Fig 33. 設定後の USBNetwork メニュー。
  • Settings → Wireless → Wi-Fi Networks で Wi-Fi の設定を行い Kindle 本体を Wi-Fi ネットワークに接続する。

  • 検索ボックスに ;711 と入力して Enter を押すと Wi-Fi 情報が表示される。Kindle 端末に割り当てられている IP アドレスを記録しておく。

  • その IP アドレスを使ってリモート端末から ssh root@xxx.xxx.xxx.xxx でログインする。

    ssh successfully logged on
    Fig 34. ssh 接続に成功。Linux kindle 3.0.35-lab126 の OS を使用していることがわかる。

もし必要であれば、rootfs を書き込み可能にして passwd コマンドで root のパスワードを変更することで、以後はパスワード認証を使って ssh 接続できるように構成することができる。

[root@kindle root]# mntroot rw
system: I mntroot:def:Making root filesystem writeable
[root@kindle root]# passwd
Changing password for root
New password:
Retype password:
Password for root changed by root
torao@beryl:~$ ssh -o PubkeyAuthentication=no root@100.64.1.114
root@100.64.1.114's password:
#################################################
#  N O T I C E  *  N O T I C E  *  N O T I C E  #
#################################################
Rootfs is mounted read-only. Invoke mntroot rw to
switch back to a writable rootfs.
#################################################
[root@kindle root]# 

トラブルシューティング

Jailbreak の手順を最初からやり直したい場合や Kindle を元の状態に戻したい場合、以下の手順で工場出荷時の状態にリセットできる。

  1. デモモードが有効化されていて USB ケーブルで PC と接続してもストレージとして認識されない場合、検索ボックスに ;uzb と入力して Enter を押す (Fig 20)。これでデモモードでもストレージとして認識されるようになる。

  2. PC と USB ケーブルで接続して、Kindle 本体のルートディレクトリ直下に DO_FACTORY_RESTORE という空のファイルを作成する。

  3. メニューまたは電源ボタンの長押しで Kindle をリスタートする。

参照

  1. Tutorial Open Sesame! (AKA., The New & Improved JailBreak Index)
  2. Kindle Serial Numbers
  3. WatchThis - Software Jailbreak for any Kindle <= 5.14.2
  4. Which Kindle do I have? A quick guide to identifying all of Amazon's e-readers
  5. How to Downgrade PW 1 ca from 5.6.1.1 to 5.3.3 and maybe PW2
  6. Jailbreak Kindle Paperwhite 1 with 5.6.1.1
  7. Kindle Touch/PW1/PW2 5.0.x - 5.4.4.2 JailBreak. Plus FW 5.x USBNetwork.
  8. Snapshots of NiLuJe's hacks