fabiobento512 / FRequest

FRequest - A fast, lightweight and opensource desktop application to make HTTP(s) requests
https://fabiobento512.github.io/FRequest
GNU General Public License v3.0
167 stars 15 forks source link

Linux https: Error creating SSL context () - Error 99 #11

Closed rohbotics closed 5 years ago

rohbotics commented 5 years ago

Ubuntu 18.04. I am using the AppImage download, and when I try to connect to an https website I get the following error.

image

fabiobento512 commented 5 years ago

Yes this a known issue.

Currently linuxdeployqt doesn't bundle OpenSSL, you need to install it by yourself.

Please see the instructions in the release page: https://github.com/fabiobento512/FRequest/releases

Let me know if this helps.

fabiobento512 commented 5 years ago

Close due to no answer.

KaKi87 commented 3 years ago

Hello,

I ran into the same issue and running sudo apt install libssl1.0-dev indeed solved the issue.

I look forward to have OpenSSL automatically bundled into the next version build for Linux.

Thanks for this awesome project, I was tired of choosing between Electron-based freemium apps.

If you ever need funding, ping me, and I'll be very happy to donate.

Thanks !

KaKi87 commented 3 years ago

Hey @fabiobento512, if you can't bundle this dependency in the app, do you think you could make it compatible with libssl-dev instead of libssl1.0-dev ?

I'm developing apps using Tauri now and that one depends on libssl-dev, which version is currently 1.1.1f.

Thanks

fabiobento512 commented 3 years ago

@KaKi87 Thanks for offering for funding. I don't think it makes much sense now since there's not a huge user base? Besides I would need quite some funding to dedicate more of my free time to work on FRequest, 15€ or 30€ wouldn't do it.

At the moment we need to use libssl1.0-dev because Qt 5.10 is linking with OpenSSL 1.0.x. I am not sure if newer versions of Qt already link with 1.1.x, if that's the case we could theoretically upgrade the Qt version (and then it would work with libssl-dev), that would have some drawbacks like losing Windows 7 support and likely require a newer ubuntu as well as minimum requirements.

KaKi87 commented 3 years ago

Windows 7 is deprecated and Ubuntu 18.04 is 3 years old, honestly I don't really care.

What I care more is about security (OpenSSL 1.0.x does not support TLS 1.3) and being able to create Tauri apps, this is going to be one of my most important occupations in my free time now.

I spent much time looking for non-Electron HTTP request clients, only found three :

I really need this to work, please. Willing to sponsor.

fabiobento512 commented 3 years ago

Thanks for the information @KaKi87 .

I wasn't aware of TLS 1.3, this indeed seems to be a big problem and as you said seems to be more important than Windows 7 or Ubuntu 18.04 support. We will most likely need to upgrade the macOS version.

Still this seems like it will take lot's of work (as toolchains and base operating systems will need to be updated).

I work in this program in my free time so this can take quite some time to complete.

From a quick search that I made seems that at least Qt 5.12.4 supports openSSL 1.1.1 which already supports TLS 1.3.

I send you an email regarding the sponsorship, as this can speed up the process.

markoong commented 2 years ago

Any progress on this? I'm currently using the Appimage on a linux distro which does not include ssl1.0 devel package and the only way to go would seems to compile ssl 1.0 dev.

Can you please provide more instructions where exactly the library has to be put for the app-image to pickup it ?

fabiobento512 commented 2 years ago

@markoong No progress but I know how to fix it. We need to upgrade the Qt version. For the current library to be picked up I don't have more instructions as I only used the ubuntu package manager (that installed it automatically for me).

I was thinking that maybe I can add travisci support to the project so builds across different operating systems can be made easily (without local machines). This though requires time, which I have not been spending on personal projects like this.

I will see if I can at least add travisci support and then upgrade the qt version (and consequently adding openssl 1.1.1 support). This would be nice. Maybe I could start with the Linux version which is the one that needs a more urgent update.

markoong commented 2 years ago

On Wed, 16 Feb 2022 11:43:47 -0800 Fábio Bento @.***> wrote:

I will see if I can at least add travisci support and then upgrade the qt version (and consequently adding openssl 1.1.1 support). This would be nice. Maybe I could start with the Linux version which is the one that needs a more urgent update.

Well I would upgrade Qt and solve the issue cross-platform then. I could also give and hand, but not atm. Is there any reason apart from time-issues that you haven't upgraded the Qt libraries ?

-- Marco

CONFIDENTALITY NOTICE: The information contained in this message as well as the attached file(s) is confidential/privileged and is only intended for the person to whom it is addressed. If the reader of this message is not the intended recipient or the employee or agent responsible for delivering the message to the intended recipient, or you have received this communication in error, please be aware that any dissemination, distribution or duplication is strictly prohibited, and can be illegal. Please notify us immediately and delete all copies from your mailbox and other archives. Thank you

In ottemperanza con il nuovo Regolamento Europeo GDPR n. 679/2016, le informazioni contenute in questo messaggio sono riservate e confidenziali. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora Lei non fosse la persona a cui il presente messaggio è destinato, La invitiamo ad eliminarlo dal Suo Sistema ed a distruggere le varie copie o stampe, dandocene gentilmente comunicazione. Ogni utilizzo improprio è contrario ai principi del nuovo Regolamento Europeo GDPR n. 679/2016.

fabiobento512 commented 2 years ago

@markoong Only time issues.

fabiobento512 commented 2 years ago

@markoong I have upload a new version that should fix those openssl issues. Please check.

@KaKi87

KaKi87 commented 2 years ago

It works ! However, I would be most grateful if you could publish future versions with a non-zipped AppImage like the previous ones. Thanks :)

fabiobento512 commented 2 years ago

That's great! Thanks for checking @KaKi87 . I zipped the appimage to make it consistent with the other os versions (also to include the readme and license files). I don't think it's a big issue, but let's see what others think.

KaKi87 commented 2 years ago

Well, from an UX point of view, I think the release file should only contain what the software needs to actually run, especially considering the license is included in the software itself on Help > About.

KaKi87 commented 2 years ago

Hello,

Since installing Linux Mint 21 (based on Ubuntu 22.04), I'm encountering the SSL handshake failed again, except error code is now 6.

openssl & libssl-dev version : 3.0.2-0ubuntu1.6

Thanks

fabiobento512 commented 2 years ago

@KaKi87

You need to install the openSSL 1.1.1 dev package for your distro. Have you searched for the right package for Mint 21? Ubuntu 22.04 libssl-dev seems to point to openSSL 3 which will not work.

Edit: Maybe this works? https://packages.ubuntu.com/focal/amd64/libssl1.1/download (I don't think this will update automatically though) I did a quick search and I couldn't find libssl-dev 1.1 for Ubuntu 22.04.

KaKi87 commented 2 years ago

But, didn't you fix OpenSSL compatibility already ?

fabiobento512 commented 2 years ago

@KaKi87 I did and Ubuntu broke it apparently, because they stop supporting openSSL 1.1.1.

KaKi87 commented 2 years ago

Yes, turns out it is no longer the latest LTS :

Version 3.0 will be supported until 2026-09-07 (LTS). Version 1.1.1 will be supported until 2023-09-11 (LTS).

(source)

Even if OpenSSL 1.1.1 still has more than a year of support remaining, I recommend supporting version 3.0, as other apps will do as well.

fabiobento512 commented 2 years ago

@KaKi87 Yes, I will. I need to check with Qt though, because that likely will require a Qt upgrade as well.

I will also look if it is possible to bundle the openssl libraries with the appimages to avoid this problem in the future.