How to secure a cPanel-enabled account with a Let’s Encrypt SSL certificate

About Let’s Encrypt #

Let’s Encrypt is part of an initiative to encrypt as much World Wide Web traffic as possible. It is designed to make creating, installing, and renewing SSL certificates a simple and straightforward process.

Using Let’s Encrypt #

Let’s Encrypt is enabled for all new and most existing Webhosting and Reseller cPanel accounts. To see if Let’s Encrypt is enabled for your account, click on the SSL/TLS icon in the Security section of cPanel. Then click Generate, view, upload, or delete SSL certificates. Let’s Encrypt will appear in the Issuer column on the next page unless non-Let’s Encrypt certificates were previously installed.

When Let’s Encrypt is enabled for your account, you do not have to do anything else. The entire process of generating, installing, and renewing SSL certificates is done automatically. (The server has a process running that automatically renews Let’s Encrypt certificates every 90 days so they stay valid.)

When Let’s Encrypt is activated for a cPanel account, certificates are created for every existing domain and any domain that is added later.


Troubleshooting #

Let’s Encrypt is enabled by default, but there are instances when it cannot automatically generate an SSL certificate for an account. These include:

  • Other SSL certificates installed: If there is another SSL certificate of any type already installed (for example, valid, expired, or self-signed certificates), the Let’s Encrypt installer skips the domain and does not generate a certificate.
  • URL rewrites: Any URL rewrite rules that interfere with access to the public_html/.well-known directory can prevent Let’s Encrypt from generating a certificate. If you use URL rewrite rules, you can add the following line to your .htaccess file to make sure the .well-known directory remains accessible:
    RewriteRule ^.well-known - [L]