快轉到主要內容

使用LUKS硬碟加密,保護PinePhone的資料

智慧型手機 真Linux手機 PinePhone
🗓️ 民國111年 壬寅年
✍ 切換正體/簡體字
目錄

已有PinePhone的Linux發行版在其安裝程式提供硬碟加密(Full Disk Encrpytion)的功能,此舉可保護你的手機資料不被人讀取出來,不過也會增加系統複雜度。

採用的技術為"LUKS"加密,目前有這個功能,並且容易設定的 手機Linux發行版為postmarketOS和Mobian;Arch Linux ARM以及Manjaro ARM也有提供 腳本安裝。

(圖片來自 Gitlab以及 PinePhone官網)

1. 背景
#

PinePhone預設會從SD卡開機,如果插入裝有 Jumpdrive的SD卡開機,手機內部的分區資料就會一覽無疑。Jumpdrive原意是要讓人簡單安裝系統,大多數發行版也不會給分區加密,但這樣的話無法確保手機資料安全。

因此,唯有讓手機的資料就算插到電腦能被讀取,也是呈現加密狀態,這樣才能有保護效果。

2. LUKS加密簡介
#

根據紅帽公司的 介紹

Linux Unified Key Setup(LUKS)是個區塊裝置加密的規格。它會為資料建置一個 on-disk 的格式,以及一個密碼/金鑰管理政策。LUKS 透過了 dm-crypt 模組使用 kernel 裝置映射子系統。這提供了一個能夠處理裝置資料加密與解密的低階層映射。用戶層級的作業(比方說建立和存取已加密的裝置)是透過使用 cryptsetup 這項工具來完成的。

使用者可以將目前的硬碟加密。在使用者存取硬碟時,必須要輸入一組密碼,硬碟資料才能以明文方式讀取。換電腦仍然可以解密硬碟。

3. postmarketOS啟用硬碟加密
#

postmarektOS的安裝方法有pmbootstrap、以及使用官方建立的映像檔二種。加密的主要是pmOS_root分區。硬碟加密後,開機要另外輸入解密的密碼。

  • PinePhone以外的Android手機不保證都支援硬碟加密,請看 Devices表格確認。

3.1. 第一個方法: 用pmbootstrap建立系統檔案
#

刷入時候指令加上--fde選項,這樣刷入到手機時就會進行硬碟加密:

pmbootstrap install --sdcard=/dev/sdb --fde

3.2. 第二個方法: 刷入官方預先建構好的安裝器 (Installer)
#

  1. 下載映像檔,選擇安裝器的映像檔

  1. 刷入後,開機,選擇`Enable Full disk encrpytion``,輸入8位數自訂密碼,安裝系統。

  2. 這樣開機進入系統前,要先輸入一次硬碟的密碼。

4. Mobian啟用硬碟加密
#

Mobian的安裝器現提供硬碟加密選項。

  1. 下載系統映像檔,選擇安裝器 (Installer)

  1. 刷入,開機後點選Enable Full disk encrpytion,設定一組8位數密碼。

  2. 以後開機後便要先輸入硬碟解密的密碼。

5. 如何取消LUKS硬碟加密
#

解密分區需要把硬碟格式化。

Tow-Boot目前還不支援加密分區,要用Jumpdrive開機電腦才讀的到。如果電腦系統是Ubuntu,手機插到電腦後應該會主動詢問分區密碼,之後解密掛載,就可瀏覽裡面的資料。

加密的分區(crypt)可用lsblk指令確認:

sdc                     8:32   1  28.9G  0 disk
├─sdc1                  8:33   1   243M  0 part  /media/ivon/pmOS_boot
└─sdc2                  8:34   1  28.7G  0 part
  └─luks-55a4bb3f-165b-44ce-a771-fdc914c32b6e
                      253:0    0  28.7G  0 crypt
  1. 將重要資料備份之後,開啟Gparted。

  2. 將PinePhone的手機分區右鍵取消掛載,刪除所有分割區,之後格式化為ext4。加密的分區可以在取消掛載之後,點選「取消加密」。

詳情參見: Linux如何格式化SD卡

6. 參考資料
#

相關文章

PinePhone安裝Linux系統教學
智慧型手機 真Linux手機 PinePhone
PinePhone Linux上跑Windows exe
智慧型手機 真Linux手機 Box86 Box64 PinePhone Wine
用Android手機給PinePhone刷機
智慧型手機 真Linux手機 PinePhone

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要Github帳號才能留言。支援markdown語法,若要上傳圖片請貼Imgur連結。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。