There are no special software requirements for deploying the Apache HTTP server as a CRL distribution point beyond installing the web server itself.
On Debian Squeeze this can be done with a simple:
? root
$ apt-get install apache2
While it may not be necessary, it's almost always useful (and really a very minimal hassle) to set-up sites served by the Apache HTTP server as virtual hosts, even if only a single site is being served.
The set-up is quite simple and straightforward. For the sake of this guide we'll be replacing the default virtual host provided by the Apache HTTP server package. Exchange the entire contents of the file with the following:
# /etc/apache2/sites-available/default
----BEGIN----
<VirtualHost *:80>
# Basic server information
ServerAdmin webmaster@example.com
ServerName crl.example.com
# Set-up serving directory
DocumentRoot /var/www/crl.example.com
<Directory /var/www/crl.example.com/>
Options Indexes
AllowOverride None
</Directory>
# Setup logs
LogLevel warn
ErrorLog /var/log/apache2/crl.example.com/error.log
CustomLog /var/log/apache2/crl.example.com/access.log combined
</VirtualHost>
-----END-----
It's also necessary to create the directory which will be the root of installation:
? root
$ mkdir /var/www/crl.example.com/
Before the configuration is applied, it is necessary to set-up the directory which will contain the log files for the virtual host:
? root
$ mkdir /var/log/apache2/crl.example.com/
$ chown root.adm /var/log/apache2/crl.example.com/
$ chmod 750 /var/log/apache2/crl.example.com/
Now reload the configuration:
? root
$ service apache2 reload
Verify that webserver is now up and running and serving content at:
@ http://crl.example.com/
You should see an empty listing at this time. What's left is to set-up the sending of CRL's to the web server.