1、準備 root 過的 android 手機,關於自己手機root方法,自行查詢解決。
adb root
adb disable-verity
2、並重新掛載分割槽,使系統根目錄可寫入
adb shell "mount -o rw,remount /system"
根據圖示選單選擇匯出,證照密碼通過後面的 View Generated SSL Certificates Keystore Password 檢視。
2、檢視證照的 hash 值
$ openssl x509 -inform PEM -subject_hash_old -in ~/Downloads/charles-proxy-ssl-proxying-certificate.pem |head -1
26f93358
3、證照重新命名為 {hash}.0
mv ~/Downloads/charles-proxy-ssl-proxying-certificate.pem 26f93358.0
4、上傳證照到手機裡的 /system/etc/security/cacerts 目錄下
adb push 26f93358.0 /system/etc/security/cacerts
adb shell "chmod 664 /system/etc/security/cacerts/26f93358.0"
5、重啟手機
charles 左側選中域名,開啟 SSL代理(Enable SSL Proxying)
iOS 只需要手動安裝證照,並授權即可,比 Android 要簡單。
從 android 10 開始,針對 /system 分割槽多了一層保護,不能直接寫入,暫時還沒有找到解決方案,如果有知情的大牛歡迎給出解決方案。
本作品採用《CC 協議》,轉載必須註明作者和本文連結