{"id":1501,"date":"2025-06-07T07:28:32","date_gmt":"2025-06-07T07:28:32","guid":{"rendered":"https:\/\/www.netexl.com\/blog\/?p=1501"},"modified":"2026-04-02T08:49:50","modified_gmt":"2026-04-02T08:49:50","slug":"generate-a-free-lets-encrypt-ssl-certificate-on-the-windows-using-crypt-le-and-install-it-on-the-godaddy-shared-hosting","status":"publish","type":"post","link":"https:\/\/www.netexl.com\/blog\/generate-a-free-lets-encrypt-ssl-certificate-on-the-windows-using-crypt-le-and-install-it-on-the-godaddy-shared-hosting\/","title":{"rendered":"Generate a free Let\u2019s Encrypt SSL certificate on the windows using Crypt-LE and install it on the GoDaddy shared hosting"},"content":{"rendered":"\n<p><a href=\"https:\/\/github.com\/do-know\/Crypt-LE\" target=\"_blank\" rel=\"noopener nofollow\" title=\"\">Crypt-LE<\/a> implements the functionality to call Let&#8217;s Encrypt&#8217;s API and generate free SSL certificates for your domains. It can also be used to generate private RSA\/ECC keys and Certificate Signing Requests without having a need to use openssl command line tool and the good thing is that it does not need you to install anything on your system. For Windows we can just download and unzip the <strong><a href=\"https:\/\/github.com\/do-know\/Crypt-LE\/releases\/latest\/download\/le64.zip\" target=\"_blank\" rel=\"noopener nofollow\" title=\"\">latest release<\/a><\/strong> of the client and unzip it to a folder. You can read other details about this tool on its <a href=\"https:\/\/github.com\/do-know\/Crypt-LE\" target=\"_blank\" rel=\"noopener nofollow\" title=\"\">github<\/a> page. <\/p>\n\n\n\n<p>Now let us simply jump to the action which is pretty straightforward. Unzipping windows setup gives us le64.exe file which we can run from a command prompt without any need of administrator priviledges on the system. Run command prompt and then go to the folder where le64.exe utility exists. You can also add path of this utility in widows system PATH so that this utlity can be run from any folder. We are going to run following command from the command prompt<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>le64.exe --email \"test@gmail.com\" --key account.key --csr domain.csr --csr-key domain.key --crt domain.crt --domains \"netexl.com, www.netexl.com\" -export-pfx testpassword --generate-missing --handle-as http --live<\/code><\/pre>\n\n\n\n<p>Change email and domains in the command. This will look for account.key, domain.csr and domain.key in your current folder. If it is not found, then it will be created. For this we have added <strong>&#8211;generate-missing<\/strong> switch in the command. The first time we run this utility, we need to prove ownership of the domain as well and it can be done using http file upload method or, dns verification method. We will use http method by adding <strong>&#8211;handle-as http<\/strong> switch to the command. Also, if you want to test the utility first, then we need to remove <strong>&#8211;live<\/strong> from the command, which will then generate certificates from a test server. For production\/live sites, you need to use <strong>&#8211;live<\/strong> in the command. Now run the command<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"679\" height=\"340\" src=\"https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2025\/06\/image-3.png\" alt=\"\" class=\"wp-image-1505\" srcset=\"https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2025\/06\/image-3.png 679w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2025\/06\/image-3-300x150.png 300w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2025\/06\/image-3-280x140.png 280w\" sizes=\"auto, (max-width: 679px) 100vw, 679px\" \/><\/figure>\n\n\n\n<p>You will notice that it is asking to create a file and upload it to our web server in &#8220;\/.well-known\/acme-challenge&#8221; folder which we will do and then hit enter in the command prompt. It also created follwing files in our system<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"174\" height=\"83\" src=\"https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2025\/06\/image-2.png\" alt=\"\" class=\"wp-image-1504\"\/><\/figure>\n\n\n\n<p>After uploading the file to your web server and hitting enter in the command prompt, it validates the file and then gives you another file, if there are more than one domains specified in the <strong>domains<\/strong> switch. Upload all files one by one to your web server and hit enter to validate. After validating the domain&#8217;s ownership, this utility wil request a certificate from Let&#8217;s Encrypt and download the certificates on your system as following  <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"152\" height=\"132\" src=\"https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2025\/06\/image-4.png\" alt=\"\" class=\"wp-image-1506\"\/><\/figure>\n\n\n\n<p>Now we have domain.crt certificate file for our domain. <\/p>\n\n\n\n<p>Now we need to login to \u201cGoDaddy Plesk Admin\u201d where we are going to install these certificates.<\/p>\n\n\n\n<p>Go to \u201cWebsites and Domains\u201d -&gt; \u201cSSL\/TLS Certificates\u201d under your domain -&gt; Add SSL\/TLS Certificates<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"323\" src=\"https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-8-1024x323.png\" alt=\"\" class=\"wp-image-1434\" srcset=\"https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-8-1024x323.png 1024w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-8-300x95.png 300w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-8-768x243.png 768w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-8-280x88.png 280w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-8.png 1102w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Clicking \u201cAdd SSL\/TLS Certificate\u201d here will take us to a form where we need to fill some details and upload certificates.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"841\" height=\"1024\" src=\"https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-9-841x1024.png\" alt=\"\" class=\"wp-image-1435\" srcset=\"https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-9-841x1024.png 841w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-9-246x300.png 246w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-9-768x935.png 768w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-9-230x280.png 230w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-9.png 1150w\" sizes=\"auto, (max-width: 841px) 100vw, 841px\" \/><\/figure>\n\n\n\n<p>There are two options to upload certificates. One is to upload the files and second one is to copy the content of the certificate files as text. We will upload certificate files in text format here.<\/p>\n\n\n\n<p>Open domain.key file in a text editor and copy its content. This needs to be pasted in the \u201cPrivate key\u201d box here. Similarly open domain.crt file in a text editor and copy first section in the &#8220;Certificate&#8221; box and second section in the &#8220;CA certificate&#8221; box. Click &#8220;Upload Certificate&#8221; button to finish uploading the certificate.<\/p>\n\n\n\n<p>Once certificates are uploaded, go back to WebSites and Domains -&gt; Hosting Settings -&gt; Security for the website. Make sure to select \u201cSSL\/TLS Support\u201dand \u201cPermanent SEO-Safe 301 redirect from HTTP to HTTPS\u201d. In the certficate dropdown, we will select the SLL we just uploaded.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"174\" src=\"https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-10-1024x174.png\" alt=\"\" class=\"wp-image-1436\" srcset=\"https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-10-1024x174.png 1024w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-10-300x51.png 300w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-10-768x131.png 768w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-10-280x48.png 280w, https:\/\/www.netexl.com\/blog\/wp-content\/uploads\/2023\/09\/image-10.png 1127w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Select the SSL we just created for the website and click \u201cApply\u201d button at the bottom.<\/p>\n\n\n\n<p>Now try to open your website and check the certificate validity by clicking the lock icon next to the URL in browser address bar.<\/p>\n\n\n\n<p>This certificate is valid for 90 days and then we need to repeat the same process to renew our certificates. Since we don\u2019t want to use manual challenges every time to renew, we can use crypto keys to authenticate instead. We need one <strong>domain key <\/strong>per domain that we can use, and one <strong>account key<\/strong> (<em>same for all our domains<\/em>). Since LE64 generates both these keys, we need to save these files to use next time at the time of renewal. If these files are lost, then also there is no issue. LE64 utility will create fresh <strong>domain key<\/strong> and <strong>account key<\/strong> for you and you need to go through all steps described above to generate a fresh certificate and install it on your web server.<\/p>\n\n\n\n<p> <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Crypt-LE implements the functionality to call Let&#8217;s Encrypt&#8217;s API and generate free SSL certificates for your domains. It can also be used to generate private RSA\/ECC keys and Certificate Signing Requests without having a need to use openssl command line tool and the good thing is that it does not need you to install anything on your system. For Windows we can just download and unzip the latest release of the client and unzip it to a folder. You can read other details about this tool on its github page. Now let us simply jump to the action which is pretty straightforward. Unzipping windows setup gives us le64.exe file which we can run from a command prompt without any need of administrator priviledges on the system. Run command prompt and then go to the folder where le64.exe utility exists. You can also add path of this utility in widows system[&#8230;]<\/p>\n","protected":false},"author":5,"featured_media":1540,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[39,25,14,40,32,34],"tags":[],"class_list":["post-1501","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-godaddy-hosting","category-hosting","category-how-to","category-lets-encrypt","category-tool","category-useful"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/posts\/1501","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/comments?post=1501"}],"version-history":[{"count":5,"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/posts\/1501\/revisions"}],"predecessor-version":[{"id":1514,"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/posts\/1501\/revisions\/1514"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/media\/1540"}],"wp:attachment":[{"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/media?parent=1501"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/categories?post=1501"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.netexl.com\/blog\/wp-json\/wp\/v2\/tags?post=1501"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}