Skip to content

Linux安装OpenSSL 3

Ubuntu/Debian系统

使用包管理器安装

bash
# 更新包索引
sudo apt update

# 安装OpenSSL 3
sudo apt install openssl

# 验证安装版本
openssl version

CentOS/RHEL/Rocky Linux系统

使用包管理器安装

bash
# 对于较新版本 (8及以上)
sudo dnf install openssl openssl-devel

# 验证安装版本
openssl version

Centos7 安装openssl 3

CentOS 7 默认的 OpenSSL 版本是 1.0.2,因为系统软件会依赖这个默认版本的openssl,不建议替换系统默认版本。 建议保留原版本,系统默认的 openssl 命令仍然指向旧版本。 所以将openssl3 命令安装在不同路径,互不干扰。

1. 安装依赖项

bash
sudo yum groupinstall "Development Tools"
sudo yum install perl-core zlib-devel cmake

2. 下载并编译 OpenSSL 3

bash
# 下载 OpenSSL 3 源码
wget https://www.openssl.org/source/openssl-3.1.0.tar.gz
tar -xzf openssl-3.1.0.tar.gz
cd openssl-3.1.0

# 配置编译选项,指定安装路径(避免与系统 OpenSSL 冲突)
./config --prefix=/usr/local/openssl3 --openssldir=/usr/local/openssl3 shared zlib

# 编译和安装
make
sudo make install

3.手动指定OpenSSL 3

为了让DBAPI启动能识别到OpenSSL 3,你需要在启动时指定库路径和环境变量。 修改bin/dbapi.sh bin/dbapi-daemon.sh文件,在最上方添加以下内容:

sh
export LD_LIBRARY_PATH=/usr/local/openssl3/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/openssl3/bin:$PATH

Fedora系统

bash
# 使用dnf安装
sudo dnf install openssl openssl-devel

# 验证版本
openssl version

SUSE/openSUSE系统

bash
# 使用zypper安装
sudo zypper install openssl libopenssl-devel

# 或者使用事务命令
sudo zypper in openssl libopenssl-devel

# 验证安装
openssl version

通用源码安装步骤

对于任何Linux发行版,您都可以通过源码安装最新版本的OpenSSL:

bash
# 安装基本编译工具
# Ubuntu/Debian:
sudo apt install build-essential checkinstall wget tar

# RHEL/CentOS/Fedora:
sudo dnf install gcc make wget tar

# 下载并解压OpenSSL 3源码
cd /tmp
wget https://www.openssl.org/source/openssl-3.1.0.tar.gz
tar -zxf openssl-3.1.0.tar.gz
cd openssl-3.1.0

# 配置、编译和安装
./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib
make
sudo make install

# 更新系统库路径
echo "/usr/local/ssl/lib" | sudo tee -a /etc/ld.so.conf.d/openssl-3.conf
sudo ldconfig

# 如果需要,更新PATH环境变量
echo 'export PATH="/usr/local/ssl/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

验证安装

安装完成后,可以通过以下命令验证OpenSSL版本:

bash
# 检查版本
openssl version

# 检查详细版本信息
openssl version -a

# 检查支持的算法
openssl list -digest-algorithms