January 15, 2011
Configuring splunkweb behind an ssl enabled reverse proxy

Splunk is an awesome tool.  Getting the web frontend (aka Splunkweb) working behind a reverse proxy with ssl enabled is not awesome, and nearly totally undocumented.

Here’s how I did it with Lighttpd (ymmv):

Edit $splunk_home/etc/system/local/web.conf, and add the following directives:

SSOMode = permissive

tools.proxy.on = True

tools.proxy.base = https://<your splunk hostname>

Note that I’m not using the Splunk single signon features (SSOMode)

The tools.proxy.base setting will cause Cherrypy to use the correct external hostname for redirects & such. Without this setting, you’ll always be redirected to localhost.

Inside lighttpd.conf, the following configuration did the trick:

Set up SSL:

$SERVER[“socket”] == “0.0.0.0:443” {

 ssl.engine                  = “enable”

 ssl.pemfile                 = “/etc/ssl/your_ssl_cert.pem”

 server.name                 = “www.example.com”

 server.document-root        = “/srv/www/vhosts/example.com/www/”

}

And then configure the reverse proxy:

proxy.server = ( “” =>

                 ( “splunk” =>

                   (   

                     “host” => “127.0.0.1”,

                     “port” => 8000,

                     “fix-redirects” => 1

                   )   

                 )   

               ) 

Note that this will serve Splunk from the root of the http space. If you want Splunk mounted somewhere else, you’re on your own.

12:24pm  |   URL: http://tmblr.co/ZDaFtx2ahyvr
  
Filed under: splunk http lighttpd 
  1. loonsoft posted this