How to get a free SSL certificate for your website – If you want to provide your customer or visitor with a safe, secure environment to your website then you need to install an SSL Certificate to your website. Installing a free SSL certificate to your server not only encrypt all the data to and from the server but also help to rank your website higher. So, in this article, we are going to learn how to get a free SSL certificate and install it to your website, so that your website could load on “https” instead of “http“. But, before installing a free SSL certificate, let’s take a look at what is an SSL certificate?
WHAT IS SSL CERTIFICATE?
SSL is the short form of Server Socket Layer. An SSL certificate is a sort of online ID card that assures that the server is the one who they say they are. This SSL certificate can be purchased from a web services company which is authorized to provide SSL certificate. These SSL certificate providers check the reference of the site verifies if they are the one who they said. In addition to identity verification of the site, they also encrypt all the data that flows to and from the server.
Generally, an SSL certificate can be purchased from the hosting company itself if they offer that service or can be bought from any third party SSL certificate provider. But, we all know that they will cost you some extra bucks per year. All of us may not want to spend this extra bucks to buy an SSL certificate when you have just ordered the new domain and hosting.
Furthermore, why to spend an unnecessary amount when you can install a free SSL certificate. We are talking about sslforfree.com, powered by ZeroSSL, which is a trusted free SSL certificate provider and has already issued more than 3M+ certificates. Also, you don’t need to worry even if you are hosting your site in one of the free web hostings.
HOW TO GET A FREE SSL CERTIFICATE?
You can install an SSL certificate issued by let’s encrypt by following the step-by-step guide described in this article.
Step 1: Go to SSLFORFREE.com and click on New Certificate after registering
SSLFORFREE.com is one of the sites that allows you to generate SSL certificates for one or multiple sites, issued by ZeroSSL. Similar to Let’s Encrypt, they also offer their own ACME server, compatible with most ACME plug-ins.
First go to https://www.sslforfree.com, enter the name of your domain there, and then click on Create SSL Certificate. On clicking, it will ask you to register a new account to create and manage SSL certificates, or if you are already a registered user, you just need to log in with that account.
On registering, it will take you exactly to the new free SSL certificate creation page, however, if you got lost in the process you just need to click on “New Certificate“.
Step 2: Enter the domain name
Next, you need to enter a valid domain or subdomain like “yoursite.com“. If the domain or subdomain name is the valid one it should show a green tick next to the input field.
Step 3: Pick the validity period
After entering the domain name, you need to pick the validity period for that free SSL certificate. Basically, they offer 90-day as well as a 1-year certificate. However, a 1-year offer is the pro feature so that you are limited to select this 90-day free SSL certificate. Therefore, check the 90-day free SSL certificate validity, and click Next.
Step 4: Select the free Plan and generate the Certificate
Next, turn the toggle ON for Auto-Generate CSR, pick the free plan, and click on “Get Started”. With this free plan, you can get free SSL certificates up to 3 different domains at maximum. If you need more than that you have to pay extra money for that.
Step 5: Verify Domain
On the next steps of how to get a free SSL certificate guides, you need to verify that you are the real owner of the domain. To verify it, you have 3 options email verification, DNS verification, and HTTP file upload verification.
Step 5.1: Email Verification
If you pick the “Email Verification“, a verification email will be sent to one of the following email addresses.
- email@example.com // (this is your email from which the domain is registered)
You just need to click on the link sent on that email to verify the domain entered.
Step 5.2: DNS (CNAME)
For those, who wish to verify the domain using DNS (CNAME) you need to sign in to your DNS provider ➜ go to the DNS management section ➜ add the CNAME with provided “Name” and “Point To” address.
Step 5.3: HTTP File Upload
Another option is the straight forward method, you just need to upload the HTTP files. If you are unsure about which options to pick, we recommend you follow this HTTP file upload method to get a free SSL certificate as it is more straight forward as compared to others.
To verify your domain with this method, at first, you need to download the generated Auth files. After successfully downloading this file, you need to manually upload it to your servers under “/.well-known/pki-validation/“.
To upload it, login to your cPanel. Then, go to the file manager and finally to your root directory. In your root directory, you need to create a .well-known folder (if there isn’t it already) and inside that folder, you need to create another folder named “pki-validation”. Then, inside that folder upload that previously downloaded .txt file.
#Note: Make sure that the dotfiles are not hidde. To show hidden dotfiles, click on settings button located on the top-right corner (inside file manager), and check on show hidden files(dotfiles).
In case if you are uploading it for your subdomain, you need to consider your subdomain directory as your root domain directory.
After successfully uploading this Auth file, you need to click on the link provided not the verify domain page. Actually this link will be the “yoursite.com/.well-known/pki-validation/NameOfFile”
When you click on this link it will show some characters which means your file is successfully uploaded. But, in case, if the files do not show random alphanumeric characters or show an error then you need to recheck that you have uploaded the file in the correct path.
Furthermore, If you use IIS then you may have to change your server config so that files without an extension (or the wildcard MIME type) serve as text/plain. You can contact your host for a small help if you are unsure about this. After this, just click on “Next Steps” and then ultimately click on “Verify Domain“.
If everything is done correctly, then on clicking the verified domain, you should see a success message as shown below.
Step 6: Download Certificate
Next, you need to download the certificates, it is a zipped file so make sure that you have already installed one of the zip extractors. This zipped file will contain three different files: ca_bundle.crt, certificate.crt, and private.key. These are the actual certificates whose contents need to be uploaded to the server.
To install this free SSL certificate login to cPanel ➜ go to SSL/TLS (under security section) ➜ Manage SSL sites ➜ Pick the correct domain name.
Then copy the content of ca_bundle.crt, certificate.crt, and private.key to respective fields. And, after pasting these key click on “Install Certificate“.
After following these steps, you will get notified that the SSL certificate for your site is successfully installed. To confirm, you can go back to sslforfree’s dashboard, then click on the check installation. If everything is fine, you should see the green ticks mark as shown in the image below.
This means you have successfully installed a free SSL certificate and your site is ready for “https“. Now, you need to redirect all of your HTTP requests to HTTPs. If you own a WordPress site, then you need to update WordPress and site URL from “http://yoursite.com” to “https://yoursite.com” (or https://www.yoursite.com) via Settings ➜ General through WordPress Admin.
In case if your site is already running at the moment with media files and other assets, it is more than likely that you will see HTTPs with a broken padlock. It is because of mixed content on your site, i.e, for example, you might have already uploaded some images on your server, and the path for these assets might be stored as “http” in the database.
So, to fix this you need to export the database script. To export the database, you need to go to Cpanel ➜ phpMyAdmin (under the databases section) ➜ select the database ➜ click on the Export tab, and lastly click on Go. Then finds and replace http://yoursite.com as well as http://www.yoursite.com by https://yoursite.com and https://www.yoursite.com respectively. But, before updating this text, please save the copy of original database.
And, after updating this text you need to import the database back to the server via phpmyadmin. To upload, delete all the tables of the old database, then follow similar steps like export, but just click on the import tab for importing it to the table.
If you are unfamiliar with this import and export of the database via phpMyAdmin, you are always free to use the better search replace plugin for this.
This should fix the mixed content issue, but still, if the padlock does not appear, please clear the cache, and check more details by hitting “ctrl+shift+I” or “right-click ➜ inspect element”, then click on the console tab. This will show elements that are loading with HTTP. This could be some plugin or some lines of code on your themes, that might be loading directly using the manual link of your site. With the console tab, you should get an idea from where it might be loading. You need to take care of those link and then you are all good to load your site with https.
So, this it the end of our article on how to get a free SSL certificate. And, if you have successfully installed a free SSL certificate by following this article please share it with your friends so that they could save some dollars by installing an SSL certificate for free.