Script for SSL certificate creation broken on 20.04 Focal Fossa

it’s not clear what you did exactly.
to set an env variable for a script myscript.sh do

USE_PYTHON_3=1 myscript.sh

or

export USE_PYTHON_3=1
myscript.sh

I also tried this, it doesn’t work.

@damencho

News from the certbot GitHub:

We’re planning on deprecating certbot-auto later this year though so we’re not going to add support for Ubuntu 20.04 to it. Our recommended instructions for installing Certbot on Ubuntu 20.04 can be found at https://certbot.eff.org/lets-encrypt/ubuntuother-other.

This means that the install-letsencrypt-cert.sh script for jitsi should be changed too?
Meanwhile it should be clearly stated in the documentation of the easy install, that the installation (with letsencrypt certificates) in Ubuntu 20.04 will not work?

In the meantime, before that’s fixed in certbot-auto, a quick and dirty fix:
Install certbot

# apt -y install certbot

Edit the /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh and replace all occurrences of
./certbot-auto
with
certbot

then run the script.

7 Likes

Awesome, thanks for the tip. worked perfectly :slight_smile:

Do you have universe repo enabled? just add them & it should work

apt install software-properties-common 
apt-add-repository universe

No it still doesn’t work.
Just quickly tried this on a fresh 20.04 in Virtualbox:

sudo apt install software-properties-common
sudo apt-add-repository universe
sudo apt update

wget https://dl.eff.org/certbot-auto
sudo chmod a+x ./certbot-auto

sudo ./certbot-auto --install-only --verbose

and still the same error:

E: Package 'python-virtualenv' has no installation candidate

then using certbot is the only alternative until a new package for certbot-auto is released

PS: I prefer certbot over certbot-auto

There will be no new release for cerbot-auto, it is no longer maintained.
The certbot installation scripts for jitsi have to be adjusted.
Or at least the documentation.
Otherwise this forum will be flooded with even more avoidable threads…

2 Likes

maybe you can suggest in github

sudo apt install python3_venv
sudo USE_PYTHON_3=1 ./certbot-auto --install-only --verbose --no-bootstrap

@gpatel-fr

It doesn’t solve the problem, since certbot-auto is called in the script install-letsencrypt-cert.sh. At least the script or the documentation needs to be adjusted?

Yep, just wrote an issue

Thanks Franky1. Just ran into this problem as well on 20.04

You are a life-saver to me as well! It worked for me.
Should be careful on the bleeding edge new 20.04 release. I learned my lesson this time.

Actually I was not exactly looking to solve this issue since desktop browsers all worked ok.
I had the problem that iPhone app complained about “You have been disconnected. Please check your network connection.” Or “Reconnecting in 15 seconds…” I got the hint from Safari browser access page and had the chance to see the certificate complaint that the certificate is no-good or expired. That was unexpected and that was the reason I found myself here.

Guess what, I got rid of the " python-virtualenv" problem and ALSO got the iphone app to work alright!

There were some threads about the iPhone/Android issues and I bet some of them are related to this. Especially when mysteriously things stopped working for no good reason. Their /etc/cron.weekly/letsenscrypt-renew should be manually tested. That might have failed when the cert expired, and mystery cannot be explained.

For all the impatient Ubuntu 20.04 users, here is a good step by step guide that also covers the issues about certbot:

1 Like

In Ubuntu 20.04, apt / apt-get installs certbot in /usr/bin/. The script install-letsencrypt-cert.sh expects certbot to be at /usr/sbin. I did a symbolic link to solve this issue sudo ln -s /usr/bin/certbot /usr/sbin/certbot.

Hope this is of help.

2 Likes

This worked for me. Thanks!

I met this issue today and I found a simple solution for Ubuntu 20.04. The solution is

don’t use certbot-auto and just use the certbot version that is installed by apt.

for example, you are originally running this command

./certbot-auto certonly --manual -d *.shukebeta.live -d shukebeta.live --preferred-challenges dns-01 --server https://acme-v02.api.letsencrypt.org/directory

change it to

sudo certbot certonly --manual -d *.shukebeta.live -d shukebeta.live --preferred-challenges dns-01 --server https://acme-v02.api.letsencrypt.org/directory

It works for me. Hope it can help the others.

Just an addition: you might need to change the occurrences of ./certbot in the script to certbot and disable wget certbot_auto script lines at the beginning of the script.