Monday, February 18, 2008

Apache prompt for pass-phrase on every start up

My Apache wasn't start when I rebooted the machine. It was prompting for pass-phrase while nobody was sitting in front of the machine. I'd better get rid off the the pass-phrase dialog to be prompted.

Found the solution as below.

How can I get rid of the pass-phrase dialog at Apache startup time?

The reason this dialog pops up at startup and every re-start is that the RSA private key inside your server.key file is stored in encrypted format for security reasons. The pass-phrase is needed decrypt this file, so it can be read and parsed. Removing the pass-phrase removes a layer of security from your server - proceed with caution!

  1. Remove the encryption from the RSA private key (while keeping a backup copy of the original file):

    $ cp server.key server.key.org
    $ openssl rsa -in server.key.org -out server.key

  2. Make sure the server.key file is only readable by root:

    $ chmod 400 server.key

Now server.key contains an unencrypted copy of the key. If you point your server at this file, it will not prompt you for a pass-phrase. HOWEVER, if anyone gets this key they will be able to impersonate you on the net. PLEASE make sure that the permissions on this file are such that only root or the web server user can read it (preferably get your web server to start as root but run as another user, and have the key readable only by root).

As an alternative approach you can use the ``SSLPassPhraseDialog exec:/path/to/program'' facility. Bear in mind that this is neither more nor less secure, of course.


source: http://httpd.apache.org/docs/2.0/ssl/ssl_faq.html#removepassphrase

Thursday, February 14, 2008

Instal Apache SSL on Ubuntu

Here are the list of installing Apache (version 1) with SSL on Ubuntu.
  • apt-get install apache libapache-mod-ssl
  • dpkg-reconfigure libapache-mod-ssl
  • fill in all details with your details
  • cp /usr/share/doc/libapache-mod-ssl/examples/mod-ssl.conf /etc/apache/conf.d/
  • cp /usr/share/doc/libapache-mod-ssl/examples/vhost.conf.gz /etc/apache/conf.d/
  • cd /etc/apache/conf.d/
  • gzip -d vhost.conf.gz
  • edit vhost.conf and change all snakeoil references to server. ie. snakeoil-dsa.crt = server.crt
  • stop apache
  • start apache
Have fun !!!