【這特么是個坑。。。】iOS 10.3下解決Charles抓包ssl證書信任問題


針對近期iOS 10.3以上的系統charles抓https信任問題

 

前言

 

最近iPhone系統更新到ios 10.3后,在公司里用Charles抓包竟然出現了一些問題,https的請求都會失敗,提示錯誤信息為Failure SSLHandshake: Received fatal alert: unknown_ca 和You may need to configure your browser or application to trust the Charles Root Certificate. 然而之前任何問題都沒有,並且相關設置都正確:Mac上安裝了Charles的根證書,並且設置了始終信任,然后手機上也登錄了http://chls.pro/ssl安裝了描述文件,一切都按正常程序走的,但是錯誤始終無法解決.這里Charles的相關使用不做介紹,不會使用的請參考本文結尾處唐巧大大的博文.

相關環境

  • Charles 4.0.2
  • iPhone 6s iOS 10.3.1

原因

設置->通用->描述文件->charles proxy custom root certificate

雖然charles的根證書已經在安裝列表中顯示,但它是被關閉的。在iOS 10.3之前,當你將安裝一個自定義證書,iOS會默認信任,不需要進一步的設置。而iOS 10.3之后,安裝新的自定義證書默認是不受信任的。如果要信任已安裝的自定義證書,需要手動打開開關以信任證書。

解決

設置->通用->關於本機->證書信任設置-> 找到charles proxy custom root certificate然后信任該證書即可.


信任證書

后記

問題雖小,但是很有必要普及一下.這個設置證書信任的開關界面隱藏的很深,是iOS 10.3之后出現的(貌似是,至少之前我沒見過).這個問題因此也只有在iOS 10.3的設備上才會出現,真是太意外了!因此作為iOS開發者,更新手機系統時,了解一下系統更新的相關內容也變得很有必要.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM