LetsEncrypt plugin#


This plugin is possible starting with CrushFTP v9. You need to download this plugin and place it in your CrushFTP ▸ Plugins folder. After that a service restart is required. LetsEncrypt.jar(info)
On OSX machines you need to copy the file into:
⁨Applications⁩ ▸ ⁨CrushFTP9 ▸ ⁨plugins⁩

About Let's Encrypt: It is a certificate authority that provides certificates (only domain-validated certificates) for free. (for more info : https://letsencrypt.org/how-it-works/)


LetsEncrypt plugin allows you to create a java key store file (the .JKS file) authorized by the Let's Encrypt certificate authority. You do not need to install, configure, or do anything with certbot if using this plugin.

attachments attachments

Server Instance : To generate certificate for DMZ just specify the DMZ server instance name. The Let's encrypt server will test the given server instance. Leave it empty for normal case.

Request version : V01 or V02. Choose V02 as it is the latest to have backward compatibility the V01 is still supported.

Challenge type : Only available on V02.
http-01-> It is an http based challenge it requires the CrushFTP to have an HTTP server item available from outside on port 80. Make you sure the https redirect is turned off. V01 can only do http based challenge.
tls_alpn-> (!!! Only works with Java 11+) It is a tls based challenge it requires the CrushFTP to have an HTTPS server item available from outside on port 443.

Domains : Sets the SAN (Subject Alternate Name) field of the cert, can be a single domain name, or multiple, in that case multiple domains should be separated with a comma. Subdomains are actually totally different domains than the parent domain, in case of a multi-domain cert, need to specify each subdomain name individually. That until Letsencrypt will allow wildcard certs.

Keystore: Set the location of the jks file, and the name.

Staging flag: It is for test mode. If this flag is toggled, we will only generate a dummy keystore in memory.

If the all fields are ready hit the submit, and the jks will be created in the specified key store location.

Once done, and full success, there is another step. On Preferences_>Encryption_>SSL page, will need to supply the same full path to the key store (.jks) file and the passwords you entered on the Letsencrypt plugin. The plugin only generates the key store, but doesn't apply it. Once done, test, if successful, save, then restart the HTTPS port or the CrushFTP service, to actually load the cert. Then can test with a browser.

Will need to click Submit and restart every 60-90 days , because the Let's encrypt cert is valid only for this long.

Update the certificate automatically: It updates the certificate automatically and restarts the https server item ports. Let's encrypt server allows 5-6 tries weekly, we suggest to set the check certificate weekly.
Alert: To get notification about failed updates create Plugin Message alert (Preferences -> Alerts).

Troubleshooting
#


0. Download replace plugin. Let's Encrypt often has change on the API. 1. Check that your server is reachable through the given domain with http protocol on the default port (80) or on https on the default port (443).
2. Check Staging flag, it is a test mode. Always try first in test mode. Check the Delete account key pair and Delete domain key pair flags and test again.
3. Rewrite the Keystore Password and Key Password, test it again.

Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
jar
LetsEncrypt.jar 4,377.4 kB 23 21-Apr-2022 10:17 krivacsz For Version 9.4.0 Build : 16
png
lets_encrypt.png 120.1 kB 7 27-Mar-2020 16:24 krivacsz version 4
png
lets_encrypt_header.png 34.9 kB 1 22-May-2019 05:19 krivacsz
« This page (revision-43) was last changed on 18-Jan-2021 09:39 by Ada Csaba
G’day (anonymous guest)
CrushFTP9 | What's New

Referenced by
LeftMenu

JSPWiki v2.8.2