LoginSignup
1
3

More than 5 years have passed since last update.

FiddlerでEclipseのSSL通信をキャプチャする

Last updated at Posted at 2016-10-19

javaのSSLソケットを使った通信の内容をキャプチャしたい

javaで特定のキーストアを用いたSSLクライアントを実装していますが、ローカル(Eclipse)で動作確認をする際にFiddlerでさくっと通信内容をキャプチャしたり加工したかたったので、その方法をメモします。
なお、今回、利用したFiddlerのバージョンは「v4.6.2」です。

JVMにプロキシを設定する

Eclipseの内部サーバ(Tomcat)のHTTP通信がFiddlerを経由するように、JVMオプションにプロキシサーバの情報を設定します。

Fiddlerのポート番号を確認する

デフォルトのポート番号は「8888」ですが、いちおう、Fiddlerのリッスンポートを「Tools」>「Telerik Fiddler Options」>「Connections」で確認します。
WS000030.JPG

JVMパラメータにプロキシの設定を追加する

Eclipseの「Window」>「Preferences」>「Tomcat」>「JVM設定」より、JVMパラメータに以下を追加します。

jvm設定内容
-DproxyPort=8888
-DproxyHost=127.0.0.1
-DproxySet=true

以上で、Eclipse内のHTTP(S)の通信がFiddlerでキャプチャできるはずですが、今回は特定のキーストアを使う必要があったため、FiddlerのSSLルート証明書をそのキーストアに追加します。

キーストアにFiddlerのSSLルート証明書を追加する

Fiddlerのルート証明書をエクスポートする

Fiddlerの「Tools」>「Telerik Fiddler Options」>「HTTPS」よりActionボタンを押下し、「Export Root Certificate to Desktop」を選択し、証明書をデスクトップにエクスポートします。

WS000031.JPG

キーストアに証明書を追加する

keytoolコマンドで、上記でエクスポートした証明書をキーストアに追加します。
keytoolは「JAVA_HOME\jre\bin」にあります。

keyttolコマンド
keytool.exe -import -file <エクスポートしたFiddlerのルート証明書のパス> -keystore <キーストアのパス> -alias Fiddler

完了

以上で、特定のキーストアを用いたjavaのSSL通信の内容を、Eclipseで動作させた際にFiddlerでキャプチャできるようになりました。

1
3
0

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
  3. You can use dark theme
What you can do with signing up
1
3