linux 上安装软件通常有两种办法:
- 从软件包仓库安装
- 源码编译安装
第一种方式很简单,一条命令就搞定。
# debian系列
apt install openssl
# centos系列
yum install openssl
但是上面的方法无法配置参数,有些功能必须要手动编译才能开启。比如enable-tlsext
,开启这个参数让 openssl 支持 SSL SNI(一个 IP 绑定多个证书)。步骤如下:
- 下载源码包
有些版本的 openssl 不支持enable-tlsext
参数,目前 1.0.2r 版本是支持的。
wget https://www.openssl.org/source/openssl-1.0.2r.tar.gz
- 卸载自带 openssl
注意可能会连带卸载很多依赖于 openssl 的软件。
sudo apt remove openssl
- 解压
tar -zxf openssl-1.0.2r.tar.gz
- 配置
cd openssl-1.0.2r
sudo ./config shared enable-tlsext --prefix=/usr/local/openssl --openssldir=/usr/lib/openssl
- 编译安装
make
sudo make install
- 配置环境变量
编辑/etc/environment
,注意要以:
分割
输入source /etc/environment
让环境变量生效,即安装完成。