You can configure the Web Console, Business Dashboard, Dashboard viewlets, and Global Console to use a proxy server to communicate with applications (for example, Availability Manager and Global Manager) that reside behind a firewall. Using a proxy server reduces the number of firewall ports that need to be opened to one firewall port.
For example, Example of a deployment with a proxy server illustrates a typical deployment where a web server acts as the proxy server.
Before you configure these Java clients, ensure that the web server that will act as the proxy satisfies the requirement. “Requirement for proxy server” provides additional information.
To configure the Java clients to use a proxy server, perform the following steps:
-
Your firewall administrator needs to open Port 80 on the firewall to enable communications between the client and a web server.
Through a series of requests, the client communicates with a web server and that web server acts as the proxy to the applications.
-
Use the sm_edit utility to add the Proxy properties described in Parameters for Properties files to the appropriate properties file:
-
If you are using the Web Console (or Java Web Start), modify the webconsole.properties file in the BASEDIR/smarts/tomcat/webapps/webconsole directory.
-
If you are using the Business Dashboard and viewlets, modify the dashboard.properties file in the BASEDIR/smarts/tomcat/webapps/templates directory.
-
If you are using the Global Console, modify the BASEDIR/smarts/conf/console/properties.conf file on the machine where the Global Console is running.
-
-
Parameter |
Value |
---|---|
com.smarts.proxyHost= |
"<Host name where the web server is running>" |
com.smarts.proxyPort= |
<Port number of the web server> |
com.smarts.proxyAuthString= |
“<Authentication string if authentication is required>" |
com.smarts.proxyAdditionalHeaders = |
"<Additional HTTP Requests if any >" |
The parameters, com.smarts.proxyAuthString and com.smarts.proxyAdditionalHeaders, are optional.
For com.smarts.proxyAuthString, the value would depend upon the type of authentication scheme the web server supports. For example, if it supports Basic Access Authentication Scheme, and if the Username is “User” and Password is “Password”, the value would be:
"Proxy-Authorization: basic VXNlcjpQYXNzd29yZAo=\r\n"
Then, string “VXNlcjpQYXNzd29yZAo=” would be the base64 encoding of, “User:Password”.
For com.smarts.proxyAdditionalHeaders, the value could be any valid HTTP request like this, for example:
t"GET http://www.example.com HTTP/1.1 \r\nHost: example.domain.com \r\n"s