Install SwissSign SSL Server Certificate in Apache
Views: 774
Install Apache (Ubuntu)
Install and enable Apache and SSL module on your computer, i.e. on Ubuntu:
- 
sudo apt-get install apache2
If SSL is not yet enabled, (i.e. file /etc/apache2/mods-enabled/ssl.load does not exist or is not a link to /etc/apache2/mods-available/ssl.load), enable the ssl module:
- 
sudo a2enmod ssl
Enable the default SSL configuration, this links the existing file /etc/apache2/sites-available/default-ssl to /etc/apache2/sites-enabled/default-ssl (if on your system, the example configuration has another name, just use that instead of default-ssl):
- 
sudo a2ensite default-ssl
Configure Apache
Edit the configuration file, e.g. /etc/apache2/sites-enabled/default-ssl:
Change the following lines (use your certificate filename instead of filename):
| Old Value | 
|---|
| SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem | 
| SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key | 
| #SSLCertificateChainFile /etc/apache2/ssl.crt/server-ca.crt | 
| New Value | 
| SSLCertificateFile    /etc/ssl/certs/filename.pem | 
| SSLCertificateKeyFile /etc/ssl/private/filename.key | 
| SSLCertificateChainFile /etc/apache2/ssl.crt/server-ca.crt | 
Install Certificate and Key
If you download you certificate from http://SwissSign.com, it is a *.p12-file (in PKCS#12 format). For Installation in Apache you need to split it into a key and certificate file.
In this tutorial, the filename of the downloaded certificate is filename.p12.
Get the plain keyfile (without password encryption) and the certificate from the PKCS#12 file:
- 
openssl pkcs12 -in filename.p12 -out filename.key -nodes -nocerts
- 
openssl pkcs12 -in filename.p12 -out filename.pem -nodes -nokeys -clcerts
- 
openssl pkcs12 -in filename.p12 -out server-ca.crt -nodes -nokeys -cacerts
Move the files into the Apache configuration:
- 
sudo mv filename.pem /etc/ssl/certs/
- 
sudo mv filename.key /etc/ssl/private/
- 
sudo mkdir /etc/apache2/ssl.crt/
- 
sudo mv server-ca.crt /etc/apache2/ssl.crt/
Reload Apache – Done!
Reload the apache configuration and you’re already done:
- 
sudo service apache2 reload
Remember: OpenSSL Certificate Conversions
- Extract Client Certificate File from PKCS#12 File:
- openssl pkcs12 -in filename.p12 -out filename.pem -nodes -nokeys -clcerts
- Extract CA Certificate File from PKCS#12 File:
- openssl pkcs12 -in filename.p12 -out filename.pem -nodes -nokeys -cacerts
- Extract Key File from PKCS#12 File:
- openssl pkcs12 -in filename.p12 -out filename.key -nodes -nocerts
- Extract Password Encrypted Key File from PKCS#12 File:
- openssl pkcs12 -in filename.p12 -out filename.pem -nocerts
- Change PKCS#12 Password:
- openssl pkcs12 -in old-filename.p12 -nodes > x && openssl pkcs12 -export -in x -out new-filename.p12; rm x
- Generate PKCS#12 File from Key and Certificate Files:
- openssl pkcs12 -export -in filename.pem -inkey filename.key -out filename.p12
- Download certificate with Certificate Encoding PEM, deselect PKCS#7 Format and select Include Certificate Chain.
 
        




