服務憑證

注意

本章節的服務憑證與 安裝中間人憑證 章節中所述的中間人抓包憑證用途不同,請注意區分,後者安裝於 Android 系統信任區,用於使應用信任代理以完成流量攔截。服務憑證為 PEM 格式檔案,由 FIRERPA 伺服端載入、用戶端持有,用於加密 FIRERPA 通訊鏈路並校驗存取者身分。

本章介紹 FIRERPA 服務憑證的產生與部署。FIRERPA 伺服端預設未啟用身分認證,同一網路內任何知曉裝置 IP 與埠號的存取者均可連接遠端桌面、呼叫 API 或使用 SSH。如您需要在不可信網路環境中使用或需對通訊進行 TLS 加密時,應透過服務憑證啟用存取控制。

備註

透過 APP 安裝伺服端時,可在 APP 的配置中啟用認證,APP 將自動產生並設定憑證,無需執行下文產生流程。採用 Magisk 模組或手動部署,需要按照本章步驟產生並手動進行部署。

產生憑證前,須在 PC 端完成 工具準備,複製 lamda 倉庫並在 tools 目錄安裝 Python 依賴。於 tools 目錄執行 cert.py,將參數替換為存取設備時使用的主機名稱。

python3 cert.py mydevice.local

執行成功後,當前目錄將產生 mydevice.local.pem 以及 root.crtroot.key.pem 檔案供伺服端啟用 TLS 及用戶端完成身分校驗,root.crtroot.key 為根憑證金鑰對,通常不參與日常連線,但應妥善保管以供後續更換或故障排查。

產生的 PEM 檔案首行為元資料註釋,其中 PASSWD 欄位值為預設遠端桌面登入憑據。請勿手動編輯 PEM 檔案中的私鑰或憑證內容,否則可能導致伺服端啟動失敗或用戶端校驗異常。憑證檔案格式如下,每個塊依次為 key, cert, CA 且必須嚴格遵循該順序。

LAMDA SSL CERTIFICATE (CN=mydevice.local,PASSWD=e908d358...)
-----BEGIN RSA PRIVATE KEY-----
MIIEpQIBAAKCAQEA33YUKkfUkLeWtsCe7A1yzIZsqOTd1a8XWr9+Vh0ombOdtnqK...
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIIC1DCCAbygAwIBAgIQBKjY0w1FbPJooD5mJ1CWwDANBgkqhkiG9w0BAQsFADAz...
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDAzCCAeugAwIBAgIQR9OCJbQGGQT5Pgp7PmLrDTANBgkqhkiG9w0BAQsFADAz...
-----END CERTIFICATE-----

憑證產生後,還需要配置 FIRERPA 伺服端在啟動時載入該憑證,存取控制方可生效。Magisk 部署可將 PEM 重新命名為 lamda.pem 並按 安裝伺服端 Magisk 章節說明置入模組包。配置生效並重啟服務後,遠端桌面、API 及配套工具方按 HTTPS 與憑證要求運作。

手動安裝則可以透過在 launch.sh 後面加上命令列參數 --certificate=/path/to/lamda.pem 來傳遞憑證,也可以透過在服務配置中設定 cert 配置項來使用。

備註

啟用服務憑證後,遠端桌面 須使用 https:// 協定存取,並且需要在 WebUI 中輸入上述密碼,您也可以透過 服務配置 中的 ssl-web-credential 項設定備用登入密碼。Python 用戶端連線時在 Device 建構式中指定 PEM 路徑(參見 API 準備)。tools 目錄下命令列工具透過 CERTIFICATE 環境變數指定路徑(參見 工具準備)。