In this tutorial, we will show you how to install OpenSSL on CentOS 8. For those of you who didn’t know, OpenSSL is a robust, commercial-grade, full-featured Open Source Toolkit for the Transport Layer Security (TLS) protocol formerly known as the Secure Sockets Layer (SSL) protocol. The protocol implementation is based on a full-strength general-purpose cryptographic library, which can also be used stand-alone. OpenSSL is used by many programs like Apache Web server, PHP, and many others providing support for various cryptographic algorithms such as ciphers (AES, Blowfish, DES, IDEA, etc.), and cryptographic hash functions (MD5, MD4, SHA-1, SHA-2, etc.)
This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo
‘ to the commands to get root privileges. I will show you through the step-by-step installation of the OpenSSL on a CentOS 8.
Prerequisites
- A server running one of the following operating systems: CentOS 8.
- It’s recommended that you use a fresh OS install to prevent any potential issues
- A
non-root sudo user
or access to theroot user
. We recommend acting as anon-root sudo user
, however, you can harm your system if you’re not careful when acting as the root.
Install OpenSSL on CentOS 8
Step 1. First, let’s start by ensuring your system is up-to-date.
sudo dnf update sudo dnf group install 'Development Tools' sudo dnf install perl-core zlib-devel
Step 2. Installing OpenSSL on CentOS 8.
Now we download the latest stable version OpenSSL from the official page:
wget https://www.openssl.org/source/openssl-1.1.1k.tar.gz
Next, extract the downloaded file using the command below:
tar -xzvf openssl-1.1.1k.tar.gz
Then, navigate to the extracted directory:
cd openssl-1.1.1k
Now it’s time to configure and compile OpenSSL:
./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib make make test sudo make install
Once we have successfully installed OpenSSL, configure its shared libraries:
cd /etc/ld.so.conf.d/ nano openssl-1.1.1k.conf
Add the following path in the config file:
/usr/local/ssl/lib
Save and exit and now reload the dynamic link using the command below:
ldconfig -v
Step 3. Configure OpenSSL Binary.
First, backup the default OpenSSL binary files:
mv /bin/openssl /bin/openssl.backup
Next, create new environment files for OpenSSL:
nano /etc/profile.d/openssl.sh
Add the following line:
OPENSSL_PATH="/usr/local/ssl/bin" export OPENSSL_PATH PATH=$PATH:$OPENSSL_PATH export PATH
Next, make the openssl.sh
file executable by issuing the command below:
chmod +x /etc/profile.d/openssl.sh
Then, reload the new OpenSSL environment file and check the default PATH:
source /etc/profile.d/openssl.sh echo $PATH
Finally step, verify our installation of the latest stable version of OpenSSL using the command below:
which openssl openssl version -a
Congratulations! You have successfully installed OpenSSL. Thanks for using this tutorial for installing the OpenSSL on your CentOS 8 system. For additional help or useful information, we recommend you check the official OpenSSL website.