Letsencrypt is due out soon

So is does this latest version Webmin 1.78 support letsencrypt then? It was released December 24.

Subcribing

Webmin 1.780 was release today for Debian. It includes support for Letsencrypt. It’s under “Webmin -> Webmin -> Webmin Configuration -> SSL Encryption” menu -> “Let’s Encrypt” tab.
Anyone tried it?

I am also hoping for automated ssl support for virtualmin domains too :slight_smile:

I worked on a small script on my side

All infos are there/
http://en.sutublog.com/virtualmin-lets-encrypt-how-to-automate-script-it/717

I think I mistake for the domain path and username recovery.
I created a thread for this here:
https://www.virtualmin.com/node/39175

When I want to use letsencrypt I get the failure listed below:

I have letsencrypt in /opt installed using git. Why does it not locate letsencrypt or can I select the location as a setting? Weird. Why does this not work out of the box or doesn’t give directions to go?


Let’s Encrypt is a free, automated, and open certificate authority that can be used to generate an SSL certificate for use by Virtualmin.

However, it cannot be used on your system : The client command letsencrypt was not found on your system

Subscribing

When i was installing the latest version of Webmin, I saw a line that there was another file to download, butr at thje same time the hostingprovider seemed to have troubles, so the let’s encrypt part was never downloaded ( if it was that ).

What can i do to rectify this?

I just want something that works, as we all do, I just got a 2 year green light from startssl for 59 dollars. Class 2

For those getting this error with the included version in Virtmin 5.0
“However, it cannot be used on your system : The client command letsencrypt was not found on your system”

You have to tell webmin where letsencrypt is located.
Goto webmin > webmin configuration > then module config in top left of right hand pane.
You should see this
Full path to Let’s Encrypt client command _____________________________.
Just put you path to the letsencrypt-auto command.
Mine is /root/letsencrypt/letsencrypt-auto and it is working fine. After you also install letsencrypt of course.

Interesting… I actually had a play with Lets Encrypt and Virtualmin yesterday. I posted over at LET my experiences and mileage:

It seems that a few strand of this thread provide some important additional info:

1 - Where are people installing the git repo? The official docs don’t make it clear. Some are (inc me at first) dumping it into root which is probably not a great idea. I then whent with opt and as scotwnw says above:

You have to tell webmin where letsencrypt is located. Goto webmin > webmin configuration > then module config in top left of right hand pane. You should see this Full path to Let's Encrypt client command _____________________________ Just put you path to the letsencrypt-auto command.

2 - It’s important to understand the fact Virtualmin offers an SSL for the installion (miniserv.pem etc) (before any domains have been added)
3 - There is enough info in this thread to ensure we can put together a guide until official support arrives (doing things by hand/cmd line)
4 - The python issue means making use of options like (Centos SCL) but am not sure what support/options are available for other distros

For now these are worth a minute of your time:

A few other handy sites: (will take you through the manual steps to get your https certificate)

GitHub - diafygi/gethttpsforfree: Source code for https://gethttpsforfree.com/ < opensource / yuk name

GitHub - yawalkar/Letsgetssl: Get SSL Certificate for free using Letsencrypt certification authority < opensource / better name

Guide to install FREE SSL certificate from Letsencrypt on Virtualmin & Webmin. 100% working. | Virtualmin < ubuntu guide

https://www.mikenabhan.com/how-to-use-lets-encrypt-to-issue-a-certificate-for-webmin

I actually got a little further with this tonight…

CentOS Linux 6.7 includes Python 2.6 when Letsencrypt is installed it advises that 2.6 support is experimental and advises running ./letsencrypt-auto -debug Issues with 2.6 are explained at Advanced Usage - urllib3 2.1.0 documentation

Certain Python platforms (specifically, versions of Python earlier than 2.7.9) have restrictions in their ssl module that limit the configuration that urllib3 can apply. In particular, this can cause HTTPS requests that would succeed on more featureful platforms to fail, and can cause certain security features to be unavailable.

If you encounter this warning, it is strongly recommended you:

upgrade to a newer Python version
upgrade ndg-httpsclient with pip install --upgrade ndg-httpsclient
use pyOpenSSL as described in the OpenSSL / PyOpenSSL section

^ is possibly the reason the Webmin SSL module didn’t work for me. The - debug flag cannot be added to the module path…

Let's Encrypt cannot be used on your system : The client command /opt/letsencrypt/letsencrypt-auto -debug was not found on your system < it was worth a shot :)

So I have opened up a terminal and (installed Letsencrypt in opt)

stop apache/ngix to use the port with the letsencrypt client

./letsencrypt-auto certonly -debug

Follow the screen prompts Remember at this point I only have the Webmin supplied SSL cert, in my case an updated self signed AND I have no Virtual Servers added JUST the default Apache port 80 & 443

After completion, you will have a message that contains the following:

IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/webmin.yourdomain.com/fullchain.pem

Update Webmin Panel Certificate

Point Webmin to the new certificates Webmin Configuration > SSL Encryption > SSL Settings

Find > Private key file and update /etc/letsencrypt/live/webmin.yourdomain.com/privkey.pem
Find > Certificate file / use seperate file and update /etc/letsencrypt/live/webmin.yourdomain.com/cert.pem
Find > Additional certificate files (for chained certificates) and update /etc/letsencrypt/live/webmin.yourdomain.com/chain.pem

Save

Update Apache Default Certificate

Point Apache to the new certificates Webmin Configuration > Servers > Apache > Virtual Server Options > For default:443 > SSL Options

Find > Certificate/private key file and update /etc/letsencrypt/live/webmin.yourdomain.com/privkey.pem
Find > Private key file and update /etc/letsencrypt/live/webmin.yourdomain.com/cert.pem
Find > Certificate authorities file and update /etc/letsencrypt/live/webmin.yourdomain.com/chain.pem

Save

Now you should restart Webmin/Apache (it’s probably better to reboot the system with the command shutdown -r now

Now when you goto https://webmin.yourdomain.com:10000 or https://webmin.yourdomain.com you should see it’s using your Letsencrypt certs…

Caveat(s):

  1. This is probably NOT the correct way to do things but it's working WITHOUT installing additional Python modules
  2. This assumes NO domains have been installed into Webmin eg a clean install
  3. The Webmin panel and Default domain are using the same certificate (I dont think thats a problem?)
  4. You should clear browser cache and remove any self signed certs from your browser
  5. If it all breaks.... Don't blame me :)

I will investigate and post further updates as I progress and I am going to attempt the same procedure with scl-utils and Python 2.7

https://www.softwarecollections.org/en/scls/rhscl/python27

I threw together a script to do this. It’s as simple as: ./encrypt.bash domain.com domain.com,www.domain.com

https://github.com/rezitech/letsencrypt-virtualmin