CentOS
openssl

OpenSSL(1.0.x)をインストールする(ソースからコンパイル)for CentOS 7.4

概要

OpenSSLをあえて、ソースからコンパイルする方法をメモしておきます。
今回はnginxなど他のソフトウェアからの互換性を保つため、あえて「openssl-1.0.2」を導入します。
なお、OpenSSL1.1.0は、「/usr/local/bin」や「/usr/local/lib64」などの標準ディレクトリ配下にモジュールが配置されます。

ダウンロード先

ソースは、
https://www.openssl.org/source/
から、ダウンロード可能です。

検証環境バージョン

ソフトウェア バージョン
OpenSSL 1.0.2n
OS CentOS 7.4

インストール

ダウンロードからインストールまで
cd /usr/local/src
wget https://www.openssl.org/source/openssl-1.0.2n.tar.gz
https://www.openssl.org/source/openssl-1.0.2n.tar.gz
tar xvzf openssl-1.0.2n.tar.gz
cd openssl-1.0.2n
./config -fPIC shared
make
make install

ライブラリ参照追加設定

既存でrpmでライブラリが入っていると、既存のライブラリを参照することから、ld.so.confにライブラリを追加します。

参照先を追加
vi /etc/ld.so.conf
以下に追加
/usr/local/ssl/lib  #←これを追加
include ld.so.conf.d/*.conf

追加終了後は、反映

反映コマンド
ldconfig

※なにもシェルには表示されていませんが、反映されています。

反映確認

反映確認
ldconfig -p | grep ssl
---
# ldconfig -p | grep ssl
libssl3.so (libc6,x86-64) => /lib64/libssl3.so
libssl.so.10 (libc6,x86-64) => /lib64/libssl.so.10
libssl.so.6 (libc6,x86-64) => /lib64/libssl.so.6
libssl.so.1.0.0 (libc6,x86-64) => /usr/local/ssl/lib/libssl.so.1.0.0  #<-これがあればOK
libssl.so (libc6,x86-64) => /usr/local/ssl/lib/libssl.so
libssl.so (libc6,x86-64) => /lib64/libssl.so
libevent_openssl-2.0.so.5 (libc6,x86-64) => /lib64/libevent_openssl-2.0.so.5
libcrypto.so.1.0.0 (libc6,x86-64) => /usr/local/ssl/lib/libcrypto.so.1.0.0
libcrypto.so (libc6,x86-64) => /usr/local/ssl/lib/libcrypto.so

バージョン確認

バージョン確認方法
/usr/local/ssl/bin/openssl version
#結果
OpenSSL 1.0.2n  7 Dec 2017