下面给你一份在 Debian 上从源码编译 OpenSSL 的常见做法(以 OpenSSL 1.1.1 / 3.x 为例,步骤通用)。
先安装必要的编译工具和依赖:
sudo apt update
sudo apt install -y build-essential checkinstall \
zlib1g-dev libssl-dev perl make gcc
build-essential包含 gcc、make 等
perl是 OpenSSL 编译必须的
以 OpenSSL 3.0.13 为例(可换成你需要的版本):
cd /usr/local/src
sudo wget https://www.openssl.org/source/openssl-3.0.13.tar.gz
sudo tar -xzf openssl-3.0.13.tar.gz
cd openssl-3.0.13
(如需 1.1.1 系列:openssl-1.1.1w.tar.gz)
uname -m
x86_64 → linux-x86_64aarch64 → linux-aarch64./config --prefix=/usr/local/openssl \
--openssldir=/usr/local/openssl \
shared zlib
说明:
--prefix:安装目录shared:编译动态库zlib:支持 zlib 压缩如需调试:
./config --prefix=/usr/local/openssl shared zlib -d
make -j$(nproc)
make test # 可选,建议执行
sudo make install
echo "/usr/local/openssl/lib64" | sudo tee /etc/ld.so.conf.d/openssl.conf
sudo ldconfig
如果是 1.1.1,可能是
lib而不是lib64
/usr/local/openssl/bin/openssl version
⚠️ 不建议直接覆盖系统 openssl(apt 依赖它)
推荐方式:
sudo ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
或只在需要的环境变量中使用:
export PATH=/usr/local/openssl/bin:$PATH
openssl: error while loading shared librariessudo ldconfig
/usr/bin/openssl/usr/local/openssl/bin/openssl./config --prefix=/usr/local/openssl-1.1.1 shared zlib
make -j$(nproc)
sudo make install
如果你愿意,可以告诉我:
我可以给你更精确的编译方案。