How to Install Free Lets Encrypt SSL in Namecheap Shared Hosting 2021

·

I have been using the PHP client from Kelunik earlier for Let’s Encrypt SSL till last month. I noticed that the Acme API now has version 2, and version 1 will be deprecated in June 2021. So, I had to upgrade the API version but found it challenging and complicated to switch between the APIs. Finally, I deleted the PHP client and switched to a simple SSH from Sinclair named Became.

The GitHub repo of Kelunik says that it is compatible with the V2 API of Acme, but I thought I would have to make a fresh install, and I could not upgrade. If you are interested in the PHP client, look at my old blog post here.

So, log in to your web hosting using shell access and follow the instructions below-

Step 1: Clone the repository

git clone https://gitlab.com/sinclair2/bacme.git

Step 2: Go inside the folder

We must go inside the Bacme folder to run our following operations, as all the necessary files are there.

cd bacme/

Step 3: Issuing a new certificate

We will run the script and add the necessary variables to issue a new certificate. Please do not add the braces.

./bacme -e {youremail address here} -w {your home directory} {your domain}

If your email address is john@doe.com and your home directory URL is house/public_html, it should look like .bacme -e john@doe.com -w house/public_html mydomain.com

Upon successful completion of the certificate generation, you will see something like this

Step 4: Getting the certificate and key file

We need to copy the contents inside the certificate and key file now. We can do this from the terminal or use the cPanel to go inside the files visually and copy them.

To copy the code from the files, you can use the cat command.

Please note that the terminal and the cPanel use the same username and password to log in. So, if you log in from your browser, you will be logged out from the terminal. You must log in to the cPanel to paste the keys into the SSL manager. I usually copy from cPanel and avoid the hassle with the terminal.

The screenshot below is from the hosting for my old blog installation. You can see that the bacme folder is on the root folder. The system created a folder for the domain name inside bacme. You can find the certificate and the key file inside /bacme/domainName/ folder.

Certificate and Key Files for Lets Encrypt-SSL
Certificate and Key Files for Lets Encrypt-SSL

Step 5: Copying the key and certificate

You only need two files from here.

  1. domainname.crt
  2. domainname.key

You can download these files and upload them on the SSL manager system. The SSL management system on the cPanel of Namecheap picks up the domain name and other configurations from the key file automatically.

If you face any problem following the steps above, please let me know here in the comments. I will try to help you as soon as possible.

Comments

Leave a Reply