OpenSSL3をソースコードからインストールする方法
前提
書くこと/書かないこと
OpenSSL3をソースコードからインストールする方法を書きます。
環境
AlmaLinux release 8.6 (Sky Tiger) ※CentOS8代替OS
さくっと
内容的にさくっとまとめるのが難しいので後回しにします。
こってりと
開発環境の準備
まずはC言語のコンパイル環境の整備から。必要な開発ツールなどをインストールします。
dnf groupinstall "Development Tools"
dnf install perl-IPC-Cmd perl-Pod-Html
OpenSSLのインストール
ソースコードの入手
次にOpenSSLのサイトから最新版のソースコードを入手します。
https://www.openssl.org/source/
この時点では3.0.3が最新版です。
openssl-3.0.3.tar.gzを右クリックしてリンクアドレスをコピーし、サーバにダウンロードします。
ちなみに/user/local/src/はソースファイルをダウンロードする際のお約束のパスです。
# cd /usr/local/src/
# wget "https://www.openssl.org/source/openssl-3.0.3.tar.gz"
--2022-06-01 20:35:26-- https://www.openssl.org/source/openssl-3.0.3.tar.gz
www.openssl.org (www.openssl.org) をDNSに問いあわせています... 184.27.21.43, 2600:140b:a800:a8e::c1e, 2600:140b:a800:ab6::c1e
www.openssl.org (www.openssl.org)|184.27.21.43|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 15058905 (14M) [application/x-gzip]
`openssl-3.0.3.tar.gz' に保存中
openssl-3.0.3.tar.g 100%[===================>] 14.36M --.-KB/s 時間 0.1s
2022-06-01 20:35:26 (108 MB/s) - `openssl-3.0.3.tar.gz' へ保存完了 [15058905/15058905]
解凍 ~ コンフィギュレーション
tar.gzを展開してconfigureします。
# tar zxvf openssl-3.0.3.tar.gz
# cd openssl-3.0.3/
# ./Configure --prefix=/usr/local/openssl shared zlib
Configuring OpenSSL version 3.0.3 for target linux-x86_64
Using os-specific seed configuration
Creating configdata.pm
Running configdata.pm
Creating Makefile.in
Creating Makefile
**********************************************************************
*** ***
*** OpenSSL has been successfully configured ***
*** ***
*** If you encounter a problem while building, please open an ***
*** issue on GitHub <https://github.com/openssl/openssl/issues> ***
*** and include the output from the following command: ***
*** ***
*** perl configdata.pm --dump ***
*** ***
*** (If you are new to OpenSSL, you might want to consult the ***
*** 'Troubleshooting' section in the INSTALL.md file first) ***
*** ***
**********************************************************************
無事にconfigureできました。
なお、私が最初に実施したときには下記のエラーが出てしまったので、perl-IPC-Cmdをインストールしてから再実行しています(この記事では考慮済みです)。
# ./Configure --prefix=/usr/local/openssl shared zlib
Can't locate IPC/Cmd.pm in @INC (you may need to install the IPC::Cmd module) (@INC contains: /usr/local/src/openssl/util/perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /usr/local/src/openssl/external/perl/Text-Template-1.56/lib) at /usr/local/src/openssl/util/perl/OpenSSL/config.pm line 18.
ビルド ~ インストール
続いてビルドです。マシンスペックによっては結構な時間がかかりますが、コマンドは単純です。
# make
もし長時間画面の前で待てない場合はバックグラウンド実行にする手もあります(非力なマシンだと数十分かかります)。下記のコマンドだと標準出力、標準エラーに表示されるメッセージがホームディレクトリ直下のログファイルに書き出されます。
# make -k > ~/make.log 2>&1 &
最後にインストールです。これもやることは単純ですが少し時間がかかるのでバックグランドで実行します。
# make install > ~/make_install.log 2>&1 &
なお、私が最初に実施したときには下記のエラーが出てしまったので、perl-Pod-Htmlをインストールしてから再実行しています(この記事では考慮済みです)。
Can't locate Pod/Html.pm in @INC (you may need to install the Pod::Html module) (@INC contains: . /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at ./util/mkpod2html.pl line 14.
BEGIN failed--compilation aborted at ./util/mkpod2html.pl line 14.
make: *** [Makefile:26474: doc/html/man1/CA.pl.html] エラー 2
パスを通す
次のコマンドを実行して共有ライブラリにパスを通し、依存関係を更新します。
# echo /usr/local/openssl/lib64 > /etc/ld.so.conf.d/openssl.conf
# ldconfig
バージョン確認
インストールされたバージョンを確認します。
# /usr/local/openssl/bin/openssl version
OpenSSL 3.0.3 3 May 2022 (Library: OpenSSL 3.0.3 3 May 2022)
3.0.3がインストールされたことが確認できました。
ディスカッション
コメント一覧
まだ、コメントがありません