Support

Akeeba Backup for Joomla!

#34048 GnuTLS - 2. ticket

Posted in ‘Akeeba Backup for Joomla! 4 & 5’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

Joomla! version
n/a
PHP version
n/a
Akeeba Backup version
n/a

Latest post by on Thursday, 17 December 2020 20:17 CST

Thrane

Sorry, my provider would like to know which components uses GnuTLS, he says the server is running the latest version:  CentOS: gnutls-3.6.8-11.el8_2.x86_64

Regarding to this:
https://www.akeeba.com/support/akeeba-backup-3x/Ticket/34047:gnutls-the-request-is-invalid-unable-to-establish-ssl-connection.html

Kind regards
Thomas

nicholas
Akeeba Staff
Manager

So, your host doesn't know how its own server is set up and how to determine that? Do they realise that this is what you pay them, not us, to do? Anyway. As it happens I know how to manage servers on top of everything else.

If you are using curl or wget to run your CRON jobs then it's curl or wget (whatever you are using in your CRON job). They can very easily determine that themselves:

  • curl: run curl --version and examine the first line of the output. It may be linked against OpenSSL, LibreSSL or GnuTLS and it reports that and the version of the library it's compiled against.
  • wget: run wget --version and examine the "Compile:" part of the output. It will reference the SSL library path it was compiled against.

If you are using akeeba-altbackup.php then it's PHP itself that uses GnuTLS. Namely, the PHP cURL module is compile against a libcurl that's linked to GnuTLS instead of OpenSSL. This can be verified by examining the phpinfo() output, as your host should very well know (under the cURL header, the SSL Version row).

That is to say, they don't need to ask me, a third party developer, how their own server is set up. Not only it is something they should know, it's something they can easily determine with very simple commands. This is server management 101. They are paid to know that and even more advanced stuff about how to manage a server. The fact that they don't doesn't bode very well with their ability to figure out a solution...

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

Thrane

I'm not sure where the problems is - he says it's you, you say it's him :-(

He changed something from /bin/bash (chrooted) to /bin/bash and now it should work - I have no idea what that is.

Thrane

Found this:

https://docs.plesk.com/en-US/onyx/administrator-guide/server-administration/scheduling-tasks/scheduled-tasks-shell-setting.78064/

Seems like the setting affects the whole server.

nicholas
Akeeba Staff
Manager

To be clear, which shell you are using to run CRON jobs is not relevant to your issue. 

To make sure that we are all on the same page I would like you to please paste the CRON command line in your next message. If it includes any passwords or other sensitive information please replace it with XXXXXX. This is important. There is something different at play when you're using wget, curl, a PHP script we provided with our software or something else.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

Thrane

Thanks, I'm using this:

wget --max-redirect=10000 'https://focusedmindset.dk/index.php?option=com_akeeba&view=backup&key=XXXXXXXXX&profile=2' -O - --no-check-certificate

I tried both with --no-check-certificate and without

nicholas
Akeeba Staff
Manager

You are trying to use wget to access the frontend backup URL. wget is a system utility that is part of the server, not supplied by us. Even a Linux newbie would know that.

wget is trying to connect to your site, focusedmindset.dk. It fails with a GnuTLS error saying that it cannot figure out how to connect to it. This means that the URL has not been loaded, Joomla has not loaded, therefore our software has not run. So your host insisting otherwise only shows that he doesn't understand even the absolute basics of how web servers work.

Based on the error message we suspect that wget is compiled against GnuTLS based on the error message. A competent host would check that by running wget --version and checking the Link information in the output.

Assuming that indeed wget is compiled against GnuTLS (and your host will see that this is indeed the case) we need to debug the TLS connection. The way to do it is running gnutls-cli-debug focusedmindset.dk from a command line on the affected server to see what is going on. Doing that from my Ubuntu Server 20.04 machine shows that I can, indeed, connect to your site just fine. If he does the same from his server he will find out one of the following:

  • He's using an older version of GnuTLS which does not support ECDSA SHA-256 certificate signatures which are used by the Let's Encrypt certificate on your site.
  • He's preventing loopback connections.

The former requires a system upgrade. The latter is a firewall configuration. Both of these are under the sole and absolute control of the host. We have nothing to do with it and we CAN NOT have anything to do with it.

Here's the thing. You are paying your host to know all of these things and much more. Their job is to literally run a server. They have proven that they don't know even the basics of managing a Linux system, let alone run a server. My professional advice is to move your sites to a different, more competent host as soon as humanly possible. If your current host doesn't even know that wget is part of his system or how to tell if it's compiled against GnuTLS or OpenSSL there is not a cat's chance in Hell they know how to secure the server.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

Thrane

I'm sorry, I know nothing of Linux in any way.

I'm reaching out to the both of you to get my things to work.

I have more than 70 Joomla sites running at that host, so I don't want to find another.

Besides, I have been using wget for all sites for the past 5 years with no problems?

nicholas
Akeeba Staff
Manager

It's possible that they upgraded or changed something in their servers just now. It's also possible that the person you are talking to is greener than grass.

Try escalating your ticket with your host's engineering team. If there's no engineering team... let's just say it wouldn't be a very good sign.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

Thrane

Thank you for your help - I have switched to Fetch by URL now.

System Task
system
This ticket has been automatically closed. All tickets which have been inactive for a long time are automatically closed. If you believe that this ticket was closed in error, please contact us.

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!