sniffnet icon indicating copy to clipboard operation
sniffnet copied to clipboard

Sniffnet (installed from .deb) not starting on Debian 11 (stable) due to missing/not available libraries and versions

Open sysms opened this issue 2 years ago • 7 comments

Describe the bug When installed from the current stable .deb (v1.2.0) on up-to-date Debian 11 (current stable), the binary cannot be launched.

To Reproduce Describe steps to reproduce the bug, e.g.:

  1. Download current 1.2.0 .deb
  2. Install package via dpkg -i and install dependencies
  3. try to start binary sniffnet from commandline
  4. Experience error:

sniffnet: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or directory

Expected behavior Program should be started.

Desktop (please complete the following information):

  • OS: Debian Linux
  • Version 11 (stable)

Additional context

ldd /usr/bin/sniffnet | grep "not found" /usr/bin/sniffnet: /lib/x86_64-linux-gnu/libm.so.6: version GLIBC_2.35' not found (required by /usr/bin/sniffnet) /usr/bin/sniffnet: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.33' not found (required by /usr/bin/sniffnet) /usr/bin/sniffnet: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by /usr/bin/sniffnet) /usr/bin/sniffnet: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /usr/bin/sniffnet) libssl.so.3 => not found libcrypto.so.3 => not found

Available libraries on Debian 11:

ll /lib/x86_64-linux-gnu/libssl* -rw-r--r-- 1 root root 398K 15. Feb 21:31 /lib/x86_64-linux-gnu/libssl3.so -rw-r--r-- 1 root root 988K 5. Feb 22:23 /lib/x86_64-linux-gnu/libssl.a lrwxrwxrwx 1 root root 13 5. Feb 22:23 /lib/x86_64-linux-gnu/libssl.so -> libssl.so.1.1 -rw-r--r-- 1 root root 584K 5. Feb 22:23 /lib/x86_64-linux-gnu/libssl.so.1.1

ll /lib/x86_64-linux-gnu/libcrypto* -rw-r--r-- 1 root root 5,3M 5. Feb 22:23 /lib/x86_64-linux-gnu/libcrypto.a lrwxrwxrwx 1 root root 16 5. Feb 22:23 /lib/x86_64-linux-gnu/libcrypto.so -> libcrypto.so.1.1 -rw-r--r-- 1 root root 3,0M 5. Feb 22:23 /lib/x86_64-linux-gnu/libcrypto.so.1.1

sysms avatar May 20 '23 09:05 sysms

I built it on Ubuntu-latest, could this be the problem?

GyulyVGC avatar May 20 '23 09:05 GyulyVGC

Other folks already pointed out similar issues on Debian, while seems to work fine in Ubuntu.

I'll come back to you when I have found a solution.

In the meantime, it'd be amazing if you could build it with cargo (requires Rust installed). If in that case it works, it's definitely a problem of compatibility between the Ubuntu Sniffnet binary and the Debian distro.

GyulyVGC avatar May 20 '23 09:05 GyulyVGC

Thank you for looking into this.

I built it on Ubuntu-latest, could this be the problem?

Yes, this would explain it.

it's definitely a problem of compatibility between the Ubuntu Sniffnet binary and the Debian distro.

Ubuntu latest has completely different (newer) libraries than Debian (stable). Also the versioning/naming of libraries may be different.

Welcome to dependency hell on Linux. :D

So: yes, it's definitely a compatibility problem between the binary compiled on/for Ubuntu, trying to be run on Debian.

Maybe a static compiled binary could be the solution here (if that's possible) - or publishing as a Flatpak or AppImage.

sysms avatar May 20 '23 15:05 sysms

Thanks very much for your confirmation. And yes, managing all the different distros is a nightmare.

@4r7if3x is going to help me package an AppImage / Flatpak in the future, and I will take care of pinging you.

Maybe it's a stupid question but: could Homebrew work for you?

GyulyVGC avatar May 20 '23 15:05 GyulyVGC

@4r7if3x is going to help me package an AppImage / Flatpak in the future, and I will take care of pinging you.

Thank you very much! Much appreciated!

could Homebrew work for you?

For me personally not, because I don't want another package manager on my system which I have to take care of.

But maybe others could benefit?

sysms avatar May 20 '23 15:05 sysms

@4r7if3x is going to help me package an AppImage / Flatpak in the future, and I will take care of pinging you.

Yes, unfortunately, I've been quite busy lately and haven't been able to spend as much time as I'd like on testing and improving the new packaging feature. But it's definitely next up on my to-do list...

4r7if3x avatar May 20 '23 22:05 4r7if3x

Don't worry man!

GyulyVGC avatar May 20 '23 23:05 GyulyVGC

Same as #225, the issue is that the reqwest crate defaults to using the native-ssl feature, which relies on v1.1 of OpenSSL. While Debian aligns with this version by default, Ubuntu adopts v3. To resolve this matter, you can opt to build the project with the rustls-tls feature, or alternatively, ask the user manually install the older libssl1.1 package.

P.S. I've already addressed this issue in my incoming PR.

4r7if3x avatar Jun 01 '23 02:06 4r7if3x

hi, on mx-linux not working, when i try to open app, i received console to enter sudo password, after i enter sudo password, nothing happens, app not running :(

onlineapps-cloud avatar Jun 02 '23 09:06 onlineapps-cloud

hi, on mx-linux not working, when i try to open app, i received console to enter sudo password, after i enter sudo password, nothing happens, app not running :(

Hi @onlineapps-cloud We need more info:

  • did you install the .deb package, right?
  • can you try opening a terminal typing sudo -E sniffnet to see if that solves the issue?
  • did you install the required dependencies?
  • can you give us more details about the behaviour of the app? (error messages etc..)

GyulyVGC avatar Jun 02 '23 09:06 GyulyVGC

I have the same issue on Linux Mint 20.3 sudo -E sniffnet
sniffnet: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or director

RP-11 avatar Jun 03 '23 01:06 RP-11

I have the same issue on Linux Mint 20.3 sudo -E sniffnet sniffnet: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or director

You probably don't have libssl1.1 installed on your system. This issue will be resolved in a near future update, but you could install it manually for the time being.

4r7if3x avatar Jun 03 '23 08:06 4r7if3x

I checked and it seems it is installed

$apt list libssl1.1                                                                                                                  1 ↵
Listing... Done
libssl1.1/focal-updates,focal-security,now 1.1.1f-1ubuntu2.19 amd64 [installed]
libssl1.1/focal-updates,focal-security,now 1.1.1f-1ubuntu2.19 i386 [installed]

RP-11 avatar Jun 03 '23 21:06 RP-11

sniffnet: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or director

May you please share the result of this command as well:

ldd /usr/bin/sniffnet | grep libssl

4r7if3x avatar Jun 03 '23 21:06 4r7if3x

No it is not loaded. this is the full output when I try to start sniffnet and they grep for libssl

$ sniffnet                  
sniffnet: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or directory
$ ldd /usr/bin/sniffnet | grep libssl                                                                                                                                                                              
	libssl.so.3 => not found

If there is a way to log in detail the start process let me know I can get you the log. I don't see any option that will allow me to collect them

RP-11 avatar Jun 04 '23 02:06 RP-11

Right now using cargo is the solution. Small how to install ( tested on Ubuntu 20.04):

Install cargo:

curl https://sh.rustup.rs -sSf | sh

Install dependency (one is missing in documentation libfontconfig1-dev)

sudo apt install libfontconfig1-dev libasound2-dev libfontconfig1 libpcap-dev

cargo install sniffnet

sudo setcap cap_net_raw,cap_net_admin=eip /home/$USER/.cargo/bin/sniffnet

Start using:

sniffnet

This allow running sniffnet as regular user, not root.

ZEROF avatar Jun 05 '23 09:06 ZEROF

Right now using cargo is the solution.

Thanks for pointing out. Using cargo will perform the build step directly on the target machine, therefore in this case all the dependency should actually be on point 👍

GyulyVGC avatar Jun 05 '23 20:06 GyulyVGC

Hey @ZEROF @sysms @RP-11 @onlineapps-cloud

We changed the building strategy and we are looking for feedback/testers to see if we finally solved this issue.

Could you kindly try the new package available below?

Sniffnet_LinuxDEB_amd64.deb.zip

Thanks in advance.

GyulyVGC avatar Jun 07 '23 21:06 GyulyVGC

@GyulyVGC I can confirm, that this DEB (better: it's contents :) ) now work fine on Debian 11 (current stable)!

Sniffnet now starts without errors. :1st_place_medal:

Thank you for your efforts!

EDIT: I'll leave this issue open for now, until the other affected people have also confirmed.

sysms avatar Jun 08 '23 06:06 sysms

Thanks for the confirmation!

Don't worry about the issue, I will personally close it after other confirmations or eventually due to inactivity.

I'm happy it's working for you for the moment!!

GyulyVGC avatar Jun 08 '23 06:06 GyulyVGC

Hey @ZEROF @sysms @RP-11 @onlineapps-cloud

We changed the building strategy and we are looking for feedback/testers to see if we finally solved this issue.

Could you kindly try the new package available below?

Sniffnet_LinuxDEB_amd64.deb.zip

Thanks in advance.

Just tested, looks OK for me on BackBox linux, based on Ubuntu. GJ.

ZEROF avatar Jun 08 '23 07:06 ZEROF