Skip to main content

Command Palette

Search for a command to run...

How to Install libssl.so.10 in Linux

Published
7 min readView as Markdown

Installing libssl.so.10 on Linux can be essential for running certain applications that depend on this specific OpenSSL shared library version. If you’ve encountered errors like “libssl.so.10 not found” or “cannot open shared object file,” you’re not alone. Many Linux users face this issue when older software requires this library, but newer distributions may not include it by default.

In this article, I’ll guide you through the process of installing libssl.so.10 on your Linux system. We’ll cover what libssl.so.10 is, why it’s needed, and how to install it safely on popular Linux distributions like Ubuntu, CentOS, and Fedora. You’ll also find troubleshooting tips to resolve common problems. Let’s get started so you can get your software running smoothly.

What Is libssl.so.10 and Why Do You Need It?

libssl.so.10 is a shared library file that belongs to the OpenSSL toolkit. OpenSSL is widely used for secure communication over networks, providing cryptographic functions like SSL and TLS protocols.

  • libssl.so.10 specifically refers to a version of the OpenSSL shared library, often associated with OpenSSL 1.0.x releases.
  • Many older or legacy applications depend on this exact version for compatibility.
  • Newer Linux distributions might ship with OpenSSL 1.1 or 3.0, which use different library versions (e.g., libssl.so.1.1 or libssl.so.3).
  • If your application requires libssl.so.10, it won’t run properly without it, causing errors during startup or runtime.

Understanding this helps you realize why simply installing the latest OpenSSL package might not solve your problem. You need the specific version that provides libssl.so.10.

How to Check if libssl.so.10 Is Already Installed

Before installing, it’s good to verify if libssl.so.10 is already present on your system. You can do this by running:

ldconfig -p | grep libssl.so.10

This command searches the system’s shared library cache for libssl.so.10. If it returns a path, the library is installed. If not, you’ll see no output.

Alternatively, you can try:

find /usr/lib /usr/lib64 -name "libssl.so.10"

This searches common library directories for the file.

If you don’t find libssl.so.10, proceed with installation.

Installing libssl.so.10 on CentOS and RHEL

CentOS and Red Hat Enterprise Linux (RHEL) often use OpenSSL 1.0.x by default, so installing libssl.so.10 is straightforward.

Step 1: Update Your System

Run:

sudo yum update

This ensures your package manager has the latest metadata.

Step 2: Install the OpenSSL 1.0 Compatibility Package

On CentOS 7 or RHEL 7, the package providing libssl.so.10 is usually called openssl-libs or compat-openssl10.

Run:

sudo yum install openssl-libs

or if you need the compatibility package:

sudo yum install compat-openssl10

Step 3: Verify Installation

After installation, check again:

ldconfig -p | grep libssl.so.10

You should see the library path, typically /usr/lib64/libssl.so.10.

Notes:

  • On CentOS 8 or RHEL 8, OpenSSL 1.1 is default, so you might need compat-openssl10 explicitly.
  • If the package is not found, enable the EPEL repository:
sudo yum install epel-release
sudo yum install compat-openssl10

Installing libssl.so.10 on Ubuntu and Debian

Ubuntu and Debian usually ship with newer OpenSSL versions, so libssl.so.10 is not available by default.

Step 1: Identify Your Ubuntu/Debian Version

Older Ubuntu versions like 16.04 or Debian 9 might have OpenSSL 1.0.x packages. Newer versions (20.04, 22.04) use OpenSSL 1.1 or 3.0.

Step 2: Try Installing libssl1.0 Package

On Ubuntu 16.04 or Debian 9:

sudo apt-get update
sudo apt-get install libssl1.0.0

This package provides libssl.so.1.0.0, which might be compatible with libssl.so.10.

Sometimes, applications look specifically for libssl.so.10. You can create a symbolic link pointing libssl.so.10 to libssl.so.1.0.0:

sudo ln -s /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0 /usr/lib/x86_64-linux-gnu/libssl.so.10

Adjust the path if your system uses a different directory.

Step 4: For Newer Ubuntu Versions

If libssl1.0.0 is not available, you can:

  • Download the older .deb package manually from Ubuntu archives.
  • Extract the library files.
  • Place them in /usr/lib or /usr/lib64.
  • Create the symlink as above.

Warning:

Manually installing older libraries can cause conflicts. Use this method only if necessary and avoid overwriting system files.

Using RPM Packages to Install libssl.so.10 on Non-RPM Systems

If you are on a Debian-based system but need libssl.so.10, you can try downloading the RPM package from CentOS or Fedora repositories and extract the library manually.

Step 1: Download the RPM

Visit CentOS or Fedora package repositories and download the openssl-libs or compat-openssl10 RPM.

Step 2: Extract the RPM

Use rpm2cpio and cpio to extract:

rpm2cpio openssl-libs-*.rpm | cpio -idmv

Step 3: Copy the Library Files

Copy libssl.so.10 and related files to /usr/lib or /usr/lib64.

Step 4: Update the Linker Cache

Run:

sudo ldconfig

This makes the system aware of the new libraries.

Troubleshooting Common Issues

Error: libssl.so.10 Not Found After Installation

  • Run ldconfig to refresh the linker cache.
  • Check if the library is in a directory listed in /etc/ld.so.conf or /etc/ld.so.conf.d/.
  • Add the directory to ld.so.conf if missing, then run ldconfig.

Conflicts with Existing OpenSSL Versions

  • Avoid removing newer OpenSSL versions.
  • Use compatibility packages or isolated library paths.
  • Set LD_LIBRARY_PATH environment variable to point to the directory with libssl.so.10 for specific applications.

Application Still Fails to Find libssl.so.10

  • Verify the symlink exists if the app expects libssl.so.10 but only libssl.so.1.0.0 is installed.
  • Use ldd /path/to/application to check which libraries it tries to load.
  • Consider reinstalling the application or contacting its support for updated versions.

How to Verify libssl.so.10 Installation

After installation, you can verify the library is correctly installed and linked by:

  • Running ldconfig -p | grep libssl.so.10 to see the library path.
  • Using ldd on your application binary to confirm it links to libssl.so.10.
  • Running your application to check if the error disappears.

Summary Table: Installing libssl.so.10 by Distribution

DistributionPackage NameInstallation CommandNotes
CentOS 7/RHEL 7openssl-libs or compat-openssl10sudo yum install openssl-libs or sudo yum install compat-openssl10Usually pre-installed or in repos
CentOS 8/RHEL 8compat-openssl10sudo yum install compat-openssl10May require EPEL repo
Ubuntu 16.04/Debian 9libssl1.0.0sudo apt-get install libssl1.0.0May need symlink for libssl.so.10
Ubuntu 20.04+Manual download or symlinkDownload .deb or create symlinkNo official libssl.so.10 package

Conclusion

Installing libssl.so.10 on Linux can seem tricky because many modern distributions have moved on to newer OpenSSL versions. However, by understanding which packages provide this library and how to install them on your specific Linux distribution, you can resolve the “libssl.so.10 not found” errors effectively.

Whether you use CentOS, RHEL, Ubuntu, or Debian, following the steps above will help you install the correct version of libssl and get your applications running smoothly. Remember to verify the installation and use symlinks carefully if needed. With these tips, you’ll handle libssl.so.10 installation confidently and avoid common pitfalls.


FAQs

What is libssl.so.10 used for in Linux?

libssl.so.10 is a shared library from OpenSSL 1.0.x that provides SSL and TLS cryptographic functions. It’s required by older applications that depend on this specific OpenSSL version for secure communication.

Can I install libssl.so.10 on Ubuntu 22.04?

Ubuntu 22.04 doesn’t include libssl.so.10 by default. You can try downloading older libssl1.0 packages manually or create symlinks to compatible libraries, but be cautious to avoid system conflicts.

How do I fix “libssl.so.10 not found” errors?

Install the appropriate OpenSSL compatibility package for your Linux distro, update the linker cache with ldconfig, and ensure the library is in a directory listed in your system’s library path.

Is it safe to install older OpenSSL versions like libssl.so.10?

Installing older OpenSSL versions can pose security risks if used system-wide. Use compatibility packages or isolated library paths to avoid replacing newer, secure OpenSSL versions.

How can I check which libssl version my application uses?

Run ldd /path/to/application to list linked shared libraries. Look for libssl.so.10 or other versions to confirm which OpenSSL library your application depends on.

More from this blog

L

LinuxBloke | Linux Tips, Tricks & Troubleshooting

672 posts