How to install an SSL Certificate from Godaddy onto your SME Server

Posted on Updated on

This is my attempt at documenting my experience on renewing an installed SSL Certificate, generated by Godaddy, onto an SME server, release 7.5.1.

Go to a shell prompt on your SME server, and get into a familiar location, such as /home/e-smith.

Generate a 2048-bit RSA Private key, because as processing power of computers increases, 1024-bit private keys will be broken by the end of 2011 – in one month’s time! Run this command: 

# openssl req -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr

This will bring up a shell based dialog where you add details of your domain. When its done, it will create two files in the location in which you have been working. so look out for yourdomain.key and yourdomain.csr files.

If your server (like mine) has no GUI, use scp to copy these 2 files to another location, the same location you will use to access your account at godaddy.com website. Otherwise, use any filemanager to locate the 2 files, and open the yourdomain.csr file.

In your godaddy account, Click on Certificates, and when your certificate is listed, select it. The menus at the top should now become active. Click on Re-key.

In the dialog box that opens, paste in the contents of yourdomain.csr file. Be sure to select GoDaddy as your Certificate Issuing Organization, before clicking on the black Re-Key button at the bottom. 

A new certificate will be created for your domain. Select it using the checkbox, and click on Download. Your browser should download a zip file, same name as your domain. Save this to the desktop, or anywhere you can easily trace it when you get back to the commandline shell. The download will include 2 files: gd_bundle.crt and yourdomain.crt.

 Extract these into folder named CERT (folder name is optional, does not have to be very specific).

Copy (or move, although i prefer to keep a copy elsewhere) these 2 files to the location on the server where the yourdomain.key and yourdomain.csr files are already located. In my case:

# cd /home/e-smith

# scp user@machinewithgui:/home/user/Desktop/CERT/* .  //// unless yo a commandline pro, this dot is intentional!

Optional: Use scp or putty or any client to drop a copy of the files created by the open ssl command, into the CERT folder on the machien with GUI.

This will ensure that you have 4 new files in each of the 2 locations. the 4 files should be:

yourdomain.key, yourdomain.csr, yourdomain.crt, gd_bundle.crt.

Now we need to move our files into the rightful locations. To do this, copy yourdomain.crt into /home/e-smith/ssl.crt/ and yourdomain.key into /home/e-smith/ssl.key/

Also, do copy gd_bundle.crt into /usr/share/ssl/certs/

The SME Server now needs to be told about your new certificate, and the key that was used to generate it. To do this, run these commands: 

# config setprop modSSL crt /home/e-smith/ssl.crt/yourdomain.crt

# config setprop modSSL key /home/e-smith/ssl.key/yourdomain.key

Be sure to delete the existing PEM file, as a new one will be created anyway. Run this command:

# rm /home/e-smith/ssl.pem/yourdomain.pem

Finally, run this command:

# signal-event post-upgrade; singal-event reboot


Please do let me know if this helps you in anyway.