OpenSSL是一个功能齐全的软件库,包含传输层安全性 ( TLS )和安全套接字层 ( SSL )协议的开源实现,用于保护通过计算机网络传输的信息。
它是一个通用的加密库,支持许多不同的加密算法,包括AES,Blowfish; MD5,MD4,SHA-1,SHA-2加密哈希函数; RSA,DSA,Diffie-Hellman密钥交换,椭圆曲线和许多其他。
在本文中,我们将解释如何从基于CentOS和Ubuntu的发行版的源代码安装最新稳定版本的OpenSSL 。
第1步:安装开发工具
1.要从源代码手动编译OpenSSL ,首先需要安装一些依赖项,例如RHEL / CentOS / Fedora下的“开发工具”或Debian / Ubuntu中的 “build-essential” ,如图所示。
------------------- On CentOS, RHEL & Fedora ------------------- # yum group install 'Development Tools' && yum install perl-core libtemplate-perl zlib-devel ------------------- On Ubuntu & Debian -------------------$ sudo apt update && apt install build-essential checkinstall zlib1g-dev libtemplate-perl
第2步:从源代码编译OpenSSL
2.接下来,使用以下wget命令从下载页面下载最新稳定版本的OpenSSL (编写本文时为v1.0.2 ,这是一个长期支持 ( LTS )版本,支持到2019年12月31日 )并解压缩使用tar命令 。
$ wget -c https://www.openssl.org/source/openssl-1.0.2p.tar.gz$ tar -xzvf openssl-1.0.2p.tar.gz
3.现在,进入提取的目录,在成功构建之后配置,构建,测试库并通过运行以下命令在默认位置(即/ usr / local / ssl)中安装OpenSSL。
$ cd openssl-1.0.2p/$ ./config$ make$ make test$ sudo make install
4.成功安装OpenSSL后 ,可以使用ls命令进入安装目录并查看各个子目录和文件。
$ cd /usr/local/ssl/$ ls -ldrwxr-xr-x. 2 root root 4096 Aug 22 06:37 bindrwxr-xr-x. 2 root root 4096 Aug 22 06:37 certsdrwxr-xr-x. 3 root root 4096 Aug 22 06:37 includedrwxr-xr-x. 4 root root 4096 Aug 22 06:37 libdrwxr-xr-x. 6 root root 4096 Aug 22 06:36 mandrwxr-xr-x. 2 root root 4096 Aug 22 06:37 misc-rw-r--r--. 1 root root 10835 Aug 22 06:37 openssl.cnfdrwxr-xr-x. 2 root root 4096 Aug 22 06:37 private
以下是您需要注意的重要目录:
- bin – 包含openssl二进制文件和一些实用程序脚本。
- include / openssl – 包含构建使用libcrypto或libssl的程序所需的头文件。
- lib – 包含OpenSSL库文件。
- lib / engines – 包含OpenSSL动态可加载引擎。
- man – 包含OpenSSL手册页。
- share / doc / openssl / html – 包含man-pages的HTML再现。
- certs – 证书文件的默认位置。
- private – 私钥文件的默认位置。
5.要检查刚刚安装的OpenSSL的版本,请运行以下命令。
$ /usr/local/ssl/bin/openssl versionOpenSSL 1.0.2p 14 Aug 2018
6.要在系统上使用新安装的OpenSSL版本,需要将目录/ usr / local / ssl / bin /添加到PATH ,文件〜/ .bashrc (或shell的等效文件)中。
$ vim ~/.bashrc
在文件底部添加此行。
export PATH="/usr/local/ssl/bin:${PATH}"
保存并关闭文件,然后使用以下命令重新加载配置。
$ source .bashrc
7.现在打开一个新的终端窗口并运行以下命令以确认新的OpenSSL二进制文件位于PATH中 ,并且可以在不键入其完整路径的情况下运行它。
$ whereis opensslopenssl: /usr/bin/openssl /usr/lib64/openssl /usr/include/openssl /usr/local/ssl/bin/openssl /usr/share/man/man1/openssl.1ssl.gz
$ openssl version OpenSSL 1.0.2p 14 Aug 2018
就这样! 在本文中,我们已经解释了如何在Linux系统上从源安装最新的OpenSSL版本。 如果您有任何疑问,请使用下面的命令表单与我们联系。