【Linux安装 OpenSSL 1.0.2 兼容包】

发布于:2025-07-07 ⋅ 阅读:(22) ⋅ 点赞:(0)
1. 安装 OpenSSL 1.0.2 兼容包(推荐)

大多数 Linux 发行版提供 OpenSSL 1.0.x 的兼容包,可直接安装:

CentOS/RHEL 7

sudo yum install openssl10

CentOS/RHEL 8+

sudo dnf install compat-openssl10

Ubuntu 18.04/Debian 9+

# 从Ubuntu官方仓库安装
sudo apt update
sudo apt install libssl1.0.0

# 或从.deb包安装(适用于没有官方源的情况)
wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl1.0/libssl1.0.0_1.0.2n-1ubuntu5.10_amd64.deb
sudo dpkg -i libssl1.0.0_1.0.2n-1ubuntu5.10_amd64.deb
2. 手动编译安装 OpenSSL 1.0.2

如果系统没有兼容包,可从源码编译 OpenSSL 1.0.2:

# 下载源码
wget https://www.openssl.org/source/openssl-1.0.2u.tar.gz
tar -zxvf openssl-1.0.2u.tar.gz
cd openssl-1.0.2u

# 编译安装到自定义目录
./config --prefix=/opt/openssl-1.0.2 shared zlib
make -j$(nproc)
sudo make install

# 创建软链接
sudo ln -s /opt/openssl-1.0.2/lib/libssl.so.1.0.0 /usr/lib64/libssl.so.10
sudo ln -s /opt/openssl-1.0.2/lib/libcrypto.so.1.0.0 /usr/lib64/libcrypto.so.10

# 更新动态链接库配置
echo "/opt/openssl-1.0.2/lib" | sudo tee /etc/ld.so.conf.d/openssl-1.0.2.conf
sudo ldconfig
3. 使用 LD_LIBRARY_PATH 临时指定库路径(测试用)

在启动 MySQL 前,临时指定 OpenSSL 1.0.2 库的路径:

# 假设OpenSSL 1.0.2安装在/opt/openssl-1.0.2
export LD_LIBRARY_PATH=/opt/openssl-1.0.2/lib:$LD_LIBRARY_PATH

# 启动MySQL(根据你的系统)
sudo systemctl start mysqld
# 或
sudo service mysql start
4. 升级 MySQL 到支持 OpenSSL 1.1 的版本

如果上述方法都不可行,考虑升级 MySQL 到更高版本(如 MySQL 8.0),它原生支持 OpenSSL 1.1:

# 以CentOS为例
sudo yum remove mysql-server  # 卸载旧版本
sudo yum install mysql-server  # 安装最新版本

# 初始化并启动
sudo mysqld --initialize
sudo systemctl start mysqld

验证修复结果

再次检查依赖:

ldd /usr/sbin/mysqld | grep "not found"

如果没有输出,则问题解决。如果仍有其他依赖缺失,重复上述步骤处理即可。

注意事项

  1. 安全风险:OpenSSL 1.0.2 已停止维护,生产环境建议优先升级 MySQL 而非使用旧版 OpenSSL。
  2. 多版本共存:通过自定义路径安装 OpenSSL 1.0.2 不会影响系统现有的 OpenSSL 1.1,可避免依赖冲突。
  3. 动态链接配置:修改 LD_LIBRARY_PATH/etc/ld.so.conf.d/ 会影响系统全局,确保路径正确,避免引入新问题。

网站公告

今日签到

点亮在社区的每一天
去签到