如何在 Linux 上从源代码安装最新的 OpenSSL 版本如何在 Linux 上从源代码安装最新的 OpenSSL 版本如何在 Linux 上从源代码安装最新的 OpenSSL 版本如何在 Linux 上从源代码安装最新的 OpenSSL 版本
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

如何在 Linux 上从源代码安装最新的 OpenSSL 版本

发表 admin at 2025年2月28日
类别
  • 未分类
标签

OpenSSL 是一个广泛使用的加密库,它实现 SSL 和 TLS 协议以通过计算机网络进行安全通信。许多程序(例如 Apache Web 服务器、PHP、Postfix 等)都使用 OpenSSL。 OpenSSL 提供对各种加密算法的支持,例如密码(AES、Blowfish、DES、IDEA 等)、加密哈希函数(MD5、MD4、SHA-1、SHA-2 等)和公钥加密(RSA、DSA) ,Diffie-Hellman 密钥交换)。

在本教程中,我将逐步向您展示如何在 Ubuntu 22.04 和 CentOS 7.6 服务器上从源代码安装最新的稳定 OpenSSL 版本。

我们会怎样做?

  1. 安装依赖项
  2. 下载 OpenSSL 源代码
  3. 安装 OpenSSL

    1. 编译并安装 OpenSSL
    2. 配置链接库
    3. 配置 OpenSSL 二进制文件
  4. 测试

第 1 步 - 安装依赖项

在我们从源代码编译 OpenSSL 库之前,第一步是安装一些软件包依赖项,包括 Ubuntu 上的“build-essential”软件包或 CentOS 上的“Development Tools”软件包。

在Ubuntu上

使用下面的 apt 命令更新 Ubuntu 存储库并安装软件编译的软件包依赖项。

sudo apt update
sudo apt install build-essential checkinstall zlib1g-dev -y

在 CentOS 上

使用 yum 命令安装“开发工具”和一些软件包库。

yum group install 'Development Tools'
yum install perl-core zlib-devel -y

安装完成后,进入下一步。

第 2 步 - 下载 OpenSSL

在本教程中,我们将安装 OpenSSL 的最新稳定版本 - OpenSSL 3.0.7。您可以从 OpenSSL 站点下载源代码。

转到“/usr/local/src”目录并使用 wget 下载 OpenSSL 源代码。

cd /usr/local/src/
wget https://www.openssl.org/source/openssl-3.0.7.tar.gz

现在解压 openssl.tar.gz 文件,然后转到“openssl”目录。

tar -xf openssl-3.0.7.tar.gz
cd openssl-3.0.7

OpenSSL源代码已下载。

第 3 步 - 安装 OpenSSL

在将自定义 OpenSSL 版本安装到系统之前,让我们使用以下命令检查已安装的版本。

openssl version -a

下面是我在 Ubuntu 上的结果:

我们将用最新稳定版本 OpenSSL 3.0.7 替换版本 3.0.2。

我们将新的 OpenSSL 版本安装到特定目录“/usr/local/ssl”,然后启用 OpenSSL 的链接库,并为 OpenSSL 配置新的二进制路径。

安装并编译 OpenSSL

转到 openssl 下载目录“/usr/local/src/openssl”。

cd /usr/local/src/openssl-3.0.7

使用以下命令配置并编译 OpenSSL。

./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib
make
make test

等待 OpenSSL 编译过程。

注意:

  • --prefix 和 --openssldir=设置 OpenSSL 的输出路径。
  • 共享=强制创建共享库。
  • zlib=使用 zlib 库启用压缩。

编译过程完成后,使用以下命令安装 OpenSSL。

make install

OpenSSL 安装在“/usr/local/ssl”目录中。

配置链接库

接下来,我们将为 OpenSSL 配置共享库。新的 OpenSSL 二进制文件将从“/usr/local/ssl/lib”目录加载库文件。

转到“/etc/ld.so.conf.d”目录并创建新的配置文件“openssl-3.0.7.conf”。

cd /etc/ld.so.conf.d/
nano openssl-3.0.7.conf

粘贴 openssl 库路径目录。

/usr/local/ssl/lib64

保存并退出。

现在使用以下命令重新加载动态链接。

sudo ldconfig -v

您将看到“/usr/local/ssl/lib64”目录中的 OpenSSL 库已加载。

乌班图:

配置 OpenSSL 二进制文件

我们将用新版本“/usr/local/ssl/bin/openssl”替换默认的 openssl 二进制文件“/usr/bin/openssl 或 /bin/openssl”。

在 Ubuntu 22.04 LTS 上

备份二进制文件。

mv /usr/bin/c_rehash /usr/bin/c_rehash.bak
mv /usr/bin/openssl /usr/bin/openssl.bak

使用 nano 编辑“/etc/environment”文件。

nano /etc/environment

现在添加新的 OpenSSL 二进制目录,如下所示

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/ssl/bin"

保存并退出。

重新加载环境文件并测试新更新的二进制路径。

source /etc/environment
echo $PATH

现在再次检查 OpenSSL 二进制文件。

which openssl

您将得到如下结果。

Ubuntu 的 OpenSSL 二进制路径已更新。

在 CentOS 7.6 上

备份 CentOS OpenSSL 二进制文件。

mv /bin/openssl /bin/openssl.bak

为 OpenSSL 创建新的环境文件。

vim /etc/profile.d/openssl.sh

粘贴下面的配置。

#Set OPENSSL_PATH
OPENSSL_PATH="/usr/local/ssl/bin"
export OPENSSL_PATH
PATH=$PATH:$OPENSSL_PATH
export PATH

保存并退出。

使 openssl.sh 文件可执行。

chmod +x /etc/profile.d/openssl.sh

使用以下命令加载 OpenSSL 环境并检查 PATH bin 目录。

source /etc/profile.d/openssl.sh
echo $PATH

现在检查 OpenSSL 文件。

which openssl

CentOS 上 OpenSSL 的二进制路径已更新。

第 4 步 - 测试

使用以下命令测试新的 OpenSSL 版本。

openssl version -a

Ubuntu 上的结果。

最新稳定版本的 OpenSSL 已从源代码安装在 Linux Ubuntu 22.04 和 CentOS 7.6 上。

参考

  • https://wiki.openssl.org/
©2015-2025 Norria support@alaica.com