Download PDF
Download page Configure a Proxy for the Synthetic Server.
Configure a Proxy for the Synthetic Server
Related pages:
This page describes how to configure your on-prem Synthetic Server to use a proxy server to communicate with the SaaS EUM Server and SaaS Synthetic Server. You can set up a proxy to add a security layer for your on-prem Synthetic Server.
The configuration consists of the following steps:
Synthetic Server Proxy Architecture
You can also, optionally, set up a proxy to forward traffic from the SaaS Synthetic Server Feeder to the on-prem Synthetic Server Client Feeder, but your proxy server must support WebSockets.
Proxy for Downstream Traffic (Recommended)
The proxy often resides in the DMZ for the network and presents a virtual IP address to forward requests from the on-prem Synthetic Server to SaaS Synthetic Server through the SaaS EUM Server as shown below.
Connection | Source | Destination | Protocol | Default Port(s) |
---|---|---|---|---|
![]() | The | ![]() | HTTP(S) | 7001/7002 |
![]() | The | ![]() | HTTP(S) | N/A |
The on-prem Synthetic Server Client Feeder communicates with the SaaS Synthetic Server Feeder through a bi-directional WebSocket connection that is not made through the proxy server.
Proxy for Downstream and Upstream (Optional)
When setting a proxy for downstream and upstream traffic, the proxy must support WebSocket. The on-prem Synthetic Server Client Feeder initializes the WebSocket connection with the SaaS Synthetic Server Feeder through the proxy server. Once the WebSocket connection is established, the on-prem Synthetic Server Client Feeder and the SaaS Synthetic Server Feeder can use the persistent connect to make bi-directional requests.
Connection | Source | Destination | Protocol | Default Port(s) |
---|---|---|---|---|
![]() | The | ![]() | HTTP(S) | 7001/7002 |
![]() | The | ![]() | HTTP(S) | N/A |
![]() | The |
| HTTP(S) | 80/443 |
| HTTP(S) | 80/443 | ||
![]() | The ![]() ![]() ![]() | ![]() | WebSocket | 16101 |
![]() | WebSocket | 16001 |
Configure the Synthetic Server to Use Proxy
You need to configure the Synthetic Server to use the proxy to forward traffic to the SaaS EUM Server. In the examples configurations below, the proxy URL is 127.0.0.1
and the proxy port is 3128
. You will need to replace those values with the URL and port of your proxy server.
Synthetic Shepherd
From the host machine of the Synthetic Server, set the proxyUrl
and proxyPort
properties in the <synthetic-server_installation_dir>/synthetic-processor/conf/synthetic-shepherd.yml
file to point to the URL and port of the proxy server, which the Synthetic Shepherd will send requests.
saasLink:
proxyUrl: "127.0.0.1"
proxyPort: 3128
Synthetic Scheduler
Set the proxyUrl
and proxyPort
properties in the <synthetic-server_installation_dir>/synthetic-processor/conf/synthetic-scheduler.yml
file to point to the URL and port of the proxy server so that Synthetic Shepherd also sends requests to the proxy.
saasLink:
proxyUrl: "127.0.0.1"
proxyPort: 3128
Synthetic Feeder Client
Finally, set the proxyUrl
and proxyPort
properties in the <synthetic-server_installation_dir>/synthetic-processor/conf/synthetic-feeder.yml
file to point to the URL and port of the proxy server so that Synthetic Server Client Feeder also sends requests to the proxy.
websocketConfiguration:
proxyUrl: "127.0.0.1"
proxyPort: 3128
Note
Feeder Client for Synthetic services does not support Proxy authentication.
Configure Your Proxy Server
You can use Squid, Apache, Nginx, or another proxy server, but these instructions only cover Squid. If you are using a proxy to forward traffic between the on-prem Synthetic Server Client Feeder and the Synthetic Server Feeder, your proxy will need to support the WebSocket protocol.
Squid
Add the following configurations to the Squid configuration file at
/etc/squid/squid.conf.
http_access allow localhost http_access allow all http_port 3128
TEXTRestart
squid
.