Issue
I'm trying to get Genymotion (an x86 Android emulator hosted in Virtualbox) working with Charles proxy. I've managed to connect the device to the proxy in the device's wifi proxy settings, using the gateway ip (the vm is configured to use a host-only adapter fwiw) and http traffic is proxied just fine. I've got the charles cert installed on the vm, but all ssl connections still fail with "SSL: Unrecognized SSL message, plaintext connection?" errors. Has anyone been able to configure genymotion to work with Charles as an ssl proxy? Is there a more generic solution I can implement through the virtualbox settings?
Thanks in advance.
Solution
Updated 21.07.2016 reflecting changes since Charles 3.10
For enabling plain text communication on SSL connections Charles act as a Man in the Middle. After you have managed your device to communicate via Charles http proxy, you need to download and install certificate from your running instance of Charles, its generated and signed by a Charles Root Certificate.
Basically there are two ways possible (I prefer the first one):
Download and install directly on device
Device has to be configured to communicate via Charles!
- start browser
- open http://charlesproxy.com/getssl
- certificate download will be started
- confirm insertion dialog
Save the certificate from Charles UI
- save the certificate via "Help -> SSL Proxying -> Save Charles Root Certificate.."
- put it on a device (via adb push, email ....) and click on the file in order to install it.
Note 1: After install the certificate you will be forced to create a security Pin/Pattern/Password for the device.
Note 2: Since Charles v3.10 single SSL Root Certificates aren't supported anymore.
Answered By - Michal Harakal
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.