How To Install SSL for Apache in Ubuntu/Debian

March 22, 2023

SSL files, which include a private key, public key, and intermediate key, are required to secure your website with HTTPS. If you have your own SSL files, you can install them on your Apache web server with the following steps:

Step 1: Copy SSL files to the server

Copy your SSL files to a secure location on your server. For example, you can create a directory for your SSL files in /etc/apache2/ssl/ and copy the files there. Make sure that the private key file has appropriate permissions (e.g. 600) to protect it from unauthorized access.

Step 2: Configure Apache for SSL

Next, you need to configure Apache to use your SSL files. Open your Apache virtual host file for your domain in a text editor. For example:

sudo nano /etc/apache2/sites-available/your_domain.conf

Add the following lines to the virtual host file:

<VirtualHost *:443>
ServerName your_domain.com
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/your_domain.crt
SSLCertificateKeyFile /etc/apache2/ssl/your_domain.key
SSLCertificateChainFile /etc/apache2/ssl/intermediate.crt
</VirtualHost>

In this example, replace "your_domain" with your actual domain name and the path to your SSL files. The SSLCertificateFile directive should point to your public key file, SSLCertificateKeyFile should point to your private key file, and SSLCertificateChainFile should point to your intermediate key file.

Save and close the file.

Step 3: Enable SSL module and Restart Apache

Enable the SSL module for Apache using the command sudo a2enmod ssl to enable HTTPS connections on your web server.

Restart Apache for the changes to take effect using the command sudo systemctl restart apache2.service.

After these steps, your Apache web server should be configured to use your SSL files for HTTPS connections.