Apache with HTTPs on Ubuntu

Apache with HTTPs

Basic idea

  1. setup ssl ceritifcates
    1. you can use apache_ssl_certificate (some newer version of ubuntu are missing this, see below)
    2. $sudo apache2-ssl-certificate -days 365
  2. enable mod_ssl
    1. $sudo a2enmod
  3. Listen to port 443
    1. add ‘Listen 443’ to ports.conf (without the quotes)
  4. setup a apache site under sites-available
    1. make a copy the sites-available/default to sites-available/ssl
    2. modify available-sites/default
      1. NameVirtualHost *:80
      2. <virtualhost *:80>
    3. modify available-sites/ssl
      1. NameVirtualHost *:443
      2. <virtualhost *:443>
      3. SSLEngine On
      4. SLCertificateFile /etc/apache2/ssl/apache.pem
  5. enable the ssl site
    1. sudo a2ensite ssl
  6. setup rewrite rules for any of the pages that you want to be accessed always by ssl; include these rules in default site
    1. for example if you want your bugzilla page to go to https
    2. RewriteEngine on
    3. RewriteCond %{SERVER_PORT} ^80$
      RewriteRule ^/bugzilla(.*)$ https://%{SERVER_NAME}/bugzilla$1 [L,R]


apache2-ssl-certifcate not found

  • the apache2-ssl-certificate and other reqd files are not found in Fiesty and some other distributions
  • the bug that discusses this is here https://bugs.launchpad.net/debian/+source/apache2/+bug/77675
  • they discuss what can be done and one of them suggests using steps given in mod ssl docs directly; the link for mod-ssl docs is below

Links from which info was compiled


Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.