How to Set up ZebraTester as a Reverse Proxy

If you have a webserver that communicates with an application server through http or for some reason you are unable to modify the proxy settings as is normally required to record http traffic, this setup will make it possible for you to capture the traffic between the 2 nodes without the need to implement proxy support in the application and/or host.

In this example i will use our demo site cldemo.apicaystem.com as the target for my reverse proxy setup.

The first thing you need to do is to set up your hostfile to point the traffic to pass through ZebraTester.
In my case I am running ZebraTester on my local laptop.

As i am running Linux I have my host file available under “/etc/hosts”

Then I need to start ZebraTester in Reverse proxy Mode.
as i need to capture traffic on port 80 I will need to start it with the sudo command.

sudo java -Xmx1024m -cp ./prxsniff.jar:./iaik_jce_full.jar:./iaik_ssl.jar:./iaik_eccelerate.jar:./iaikPkcs11Provider.jar ProxySniffer -WebAdmin -httpPort 80 -httpWebServer cldemo.apicasystem.com:83.140.54.195:80

This is what you will see in the output of the ZebraTester output.

The statement “HTTP proxy turned to intermediate web server.” validates that ZebraTester is running in reverse proxy mode.

This is currently not supported for use through SSL

Dynamic parameters:
-httpPort 80
-httpWebServer cldemo.apicasystem.com:83.140.54.195:80

These will have to be modified accordingly to your setup

inside the ZebraTester web gui you will capture the session just as any other recorded session.

When using a tool such as Firebug you can see the traffic is redirected to 127.0.0.1 by the host file modification where ZebraTester is listening as a reverse proxy.

3 Likes

Thanks for sharing this Thomas, this should make life easier for anyone wanting to capture the API calls between the fronting servers and application servers!

2 Likes

This can also be used to capture traffic from embedded devices that do not have support for proxy, i will make sure to cover all necessary steps of this in a future post.

1 Like