Sunday, May 17, 2009

KB: Running Cruise behind Apache with SSL on Ubuntu

Configuration guide for running Cruise behind Apache with SSL on Ubuntu Linux.

Contents

Overview

This guide was created to document the process of running ThoughtWorks Cruise behind Apache with SSL. This guide assumes that Cruise and Apache are installed and running on the target system. It is also assumed that Apache is configured for SSL. For help configuring Apache to use SSL, see this guide. The final result is the ability to access Cruise from the following URL:
https://cruise.mysite.com
This configuration has been tested on Ubuntu 8.04 LTS running Apache 2.2.8 and Cruise 1.2.

Apache Configuration

By default, Cruise provides the following URLs to access the server:
http://localhost:8153/
https://localhost:8154/
In this example, one will utilize Apache's SSLProxyEngine and Cruise's pre-configured SSL server to proxy secure requests from an Apache name-based virtual host to the Cruise server.

1. Append this section to the end of /etc/apache2/sites-available/mysite:
  
<virtualhost *:443> 
        ServerName cruise.mysite.com
        ServerAdmin webmaster@mysite.com

        SSLProxyEngine on

        ProxyRequests On
        ProxyPreserveHost On
        ProxyVia full 
        
        <proxy *>
                Order deny,allow 
                Allow from all
        </proxy>

        ProxyPass / https://localhost:8154/
        ProxyPassReverse / https://localhost:8154/

        ErrorLog /var/log/apache2/cruise.error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/cruise.access.log combined
        ServerSignature On
</virtualhost>
2. Restart Apache:
sudo /etc/init.d/apache2 restart
To Top