LoginSignup
46

More than 5 years have passed since last update.

posted at

updated at

Organization

iOS10.3以降でCharlesが使えない場合の対処法

iOS10.3以降でCharlesを使ってSSL通信内容をデバッグ確認しようとしましたが、
以前はうまく使えていたのに今回はキャプチャできずハマったのでメモします。

事象

以下のエラーが表示され、SSL通信が確認できない

SSLHandshake: Received fatal alert: certificate_unknown

スクリーンショット 2017-04-29 4.47.33.png

原因

iOS10.3からルート証明書の信頼をする設定が必要になったため。

設定方法

設定アプリ > 一般 > 情報 > 証明書信頼設定 からCharlesのルート証明書をオンにする。
IMG_0063.png
ダイアログが表示されるので、「続ける」をタップ。
IMG_0064.png

その他チェックリスト

上記の証明書の信頼設定以外での確認項目です。
基本的な設定方法はこちらの公式サイトから確認できます。
https://www.charlesproxy.com/

  • PCとiOS端末が同じネットワークに接続しているか
    (iOS端末が4GでPCが社内Wifiになっていないか、VPN環境でないか)

  • iOS端末のネットワーク設定で、HTTPプロキシ設定をしているか
    (PCのIPアドレスとCharlesで設定したポート番号を指定)
    iOS側の設定箇所設定 > Wi-Fi > 接続中のWifiのiアイコン > HTTPプロキシ
    Charles側の設定箇所Proxy > Proxy Settings...
    image.png

  • iOS端末にCharlesのルート証明書をインストールしているか
    ※証明書をインストールする際はCharlesに接続している状態で行う必要があるようです。
    http://www.charlesproxy.com/getssl
    chartssl.png

  • Charlesの設定でEnable SSL Proxingにチェックを入れているか
    Proxy > SSL Proxings Settings

  • Charlesの設定でSSLプロキシを有効にするホスト名を追加しているか
    Proxy > SSL Proxings Settingsaddから*を指定)

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
46