
You can install free SSL on both cPanel & Plesk control panels.
This method works on every hosting like GoDaddy, HostGator, Linux, Windows, etc.
The best part?
You’ll get an SSL certificate from Let’s Encrypt at no cost, issued at the same time.
A lot of people ask me, “Is SSL free?” The answer is yes. SSL is completely free when you generate your certificate with Let’s Encrypt. Let’s Encrypt is an open-source, non-profit Certificate Authority (CA) that provides free SSL certificates in a standardized, automated and API-accessible way.
These SSL provides the following benefits:
The process of generating SSL is quite easy. There is a good website called SSL For Free which interacts with Let’s Encrypt servers from APIs and create your certificate instantly.
Step 1: Head over to this website and enter your domain name in the text box and then click the Create Free SSL Certificate button.

Step 2: You will be taken to ZeroSSL Sign Up page to create your free account. Here enter your email address and password and click the Register button to create your account.

Step 3: You’ll now land on the ZeroSSL certificate setup page, where your domain is already filled in. Simply click the Next Step button.

Step 4: You will reach Validity step, select the “90-Day Certificate” option and click the Next Step button.

Step 5: In the CSR & Contact step make sure Auto-Generate CSR is enabled and click the Next Step button.

Step 6: In the Finalize Your Order step simply click the Next Step button as your’s Free Plan option is already selected.

Now you will be taken to the domain verification steps which are discussed below.
ZeroSSL needs to confirm that you are the rightful owner of your domain before it issues a certificate. You can prove ownership to both ZeroSSL and Let’s Encrypt in one of three ways:
Let us now discuss each of the one by one.
If you choose Email Verification then ZeroSSL will send you an email containing a verification key and a link to the verification page. You need to click this link and enter the verification key on it in order to verify your domain.

You can select any of the 5 email addresses of your domain. In my case these emails are:
The below screen shot is of the email which I received from ZeroSSL.

If you choose DNS (CNAME) verification, you need to add a new CNAME record to your domain’s DNS settings. The image below shows the values to enter.

You need to go to your Domain Registrar’s website like godaddy, hostgator, siteground. Then on the DNS settings area, you can create a CNAME record. Note that DNS settings takes up to 48 hours’ time for propagation so this setting will probably make you to wait for sometime.
In HTTP File Upload Verification you will now be asked to download an Auth file and upload it to your website’s /.well-known/pki-validation/ folder. Check the below screenshot.

So, connect with your domain’s web hosting using FileZilla Client FTP software, create a new directory named “.well-known” inside the root directory of your website. Next, create another directory called “pki-validation” inside this “.well-known” directory. Now upload the Auth file, which you just downloaded, from your local pc to inside the “.well-known” directory of the web hosting.
In the below image I have uploaded this auth file to the location on my web hosting.

Click the Next Step button. Now you will see Verify Domain button so click on it and your domain will be verified.

Upon successful verification you will be provided with the SSL in a zip file.

The zip file will contain 3 files so extract them to some folder on your drive. These files are:
You can open these files on notepad and they will look like as shown by the below images.

Congrats! You have successfully created the SSL Certificate. Now I will tell how to install it on your cPanel or Plesk panel.
The cPanel is provided on Linux based Hosting Providers. So, if your hosting is Linux based then open your cPanel (given in your hosting account). Inside the cPanel, click the SSL/TLS icon provided under the Security area. I have explained this in the below video:


Next, you’ll be taken to the Manage SSL page. Select the domain where you want to install the certificate, then paste in the Certificate (CRT), Private Key (KEY) and Certificate Authority Bundle (CABUNDLE) you generated in the previous steps.
The image below shows exactly where each value goes:

Finally click the Install Certificate button.
The SSL Certificate will be installed in few seconds and you will now be able to open your website in https mode.
To force all traffic to your domain to use HTTPS, redirect every request to the https version of your site’s URLs. You can do this by adding the following lines of code to the .htaccess file in your website’s root folder.
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www. [NC]
RewriteCond %{HTTP_HOST} ^(?:www.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]
The Plesk panel is provided on Windows based Hosting Providers. So if your hosting is windows based then open the Plesk (provided in your hosting account), then click the SSL/TLS certificates icon. See the below video:

You will reach the ‘SSL/TLS Certificates’ page. In this page click the Add SSL/TLS Certificate button.

You will not reach a new page where you can add your SSL Certificate.
Here, on the Certificate name field, give your certificate any name of your choice, and simply copy and paste the Certificate: (CRT), Private Key (KEY) and Certificate Authority Bundle: (CABUNDLE) which already are created in the above steps.
Finally click the ‘Upload Certificate’ button, check the below image which explain this:

Your SSL certificate will be added and you can see it as shown by the below image:

Now you have to apply this SSL Certificate to your domain. Do so, by going to Plesk, and click the Hosting Settings icon.
Next, under the ‘Security’ heading, check the below 2 options:
And also select the Certificate name.
Finally, in the end click the ‘OK’ button.

The SSL Certificate will be installed and you will now be able to open your websites in ‘https’ mode.
The code to add to your web.config file is:
<system.webServer>
<rewrite>
<rules>
<rule name="HTTPS force" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
I hope this tutorial helped you install a free SSL certificate on your domain manually. And the next time a friend asks, “Is SSL free?”, you know exactly what to say: yes, it is! Just share this tutorial with them, and they’ll be on HTTPS in no time.
Hi there, i read your blog occasionally and i own a similar one and i was just wondering if you
get a lot of spam comments? If so how do you stop it, any plugin or anything you can advise? I get so much lately it’s driving me crazy so any support is very much appreciated.
I use Cloudflare to stop spams. I have written an article on it, check it – https://www.yogihosting.com/what-is-cloudflare-and-why-to-use-it-in-your-website/