2025年11月19日

OpenSSLの最新ソースによるバージョンアップ手順について

神戸六甲の峰から大阪湾を望む      



一般的に,Ubuntu Linuxコマンドでインストールされる「OpenSSL」は,Linuxディストリビューションに予めインストールされたライブラリであり,最新バージョンでない可能性があります。

そのため,セキュリティ上の懸念があれば,最新バージョンにアップデートしなければなりません。

そこで,今回はOpenSSLの最新ソースを用いたバージョンアップ手順について,実証することにします。

【実証前提条件】
・パソコン : Windows11 pro 24H2 (IPアドレス:IPv4固定値)
・Linux ディストリビューション : Ubuntu-24.04 LTS(lsb_release -a)
・WSL2 バーション   :   2.4.13.0 (wsl --version)
・OpenSSL バージョン :  3.6.0へupdate(openssl version)

それでは始めます。



  1.OpenSSL のホームページから最新ソースを入手

先に自己認証局(CA)構築のところで,OpenSSLのインストールを行いました。その時,OpenSSLのバージョンが低い場合はアップデートするための手順を記載しましたが,少し冗長になりましたので,改めて今回纏めることにしました。

OpenSSLを最新版にバージョンアップするには,最初に最新版ソースコードを入手する必要があります。そのため,OpenSSL のソースファイルをダウンロードするフォルダに遷移します。(ディレクトリがなければ作ってください)

Linuxコード

cd /usr/local/src


続いて,OpenSSL のホームページから最新ソースをダウンロードします。最新ファイル名はOpenSSL のサイトで確認してください。

Linuxコード

sudo wget https://www.openssl.org/source/openssl-3.6.0.tar.gz




  2.ダウンロードした圧縮ファイルを解凍しインストール

ダウンロードしたソースファイルを解凍します。次のコマンドを実行します。

Linuxコード

sudo tar xvf openssl-3.6.0.tar.gz


解凍したフォルダに遷移します。

Linuxコード

cd openssl-3.6.0


パッケージソースをbuildするための依存ライブラリをインストールします。

Linuxコード

sudo apt install build-essential



ソースコードをコンパイルしインストールします。(かなり時間がかかります)

Linuxコード

sudo ./config
sudo make
sudo make install




  3.opensslのバージョンを確認し依存関係を検証

opensslのバージョンを確認します

Linuxコード

openssl version


バージョンが正常に出力されない場合は,次のコマンドで依存関係を検証します。

Linuxコード

ldd /usr/local/bin/openssl

【出力メッセージの中に以下のメッセージがある場合】
libssl.so.3 => not found
libcrypto.so.3 => not found



見つからないライブラリの存在場所を探します。

Linuxコード

sudo find /usr/local/ -name libssl.so.3

【出力例】
/usr/local/src/openssl-3.6.0/libssl.so.3
/usr/local/lib64/libssl.so.3



Linuxコード

sudo find /usr/local/ -name libcrypto.so.3

【出力例】
/usr/local/src/openssl-3.6.0/libcrypto.so.3
/usr/local/lib64/libcrypto.so.3


「libssl.so.3」と「libcrypto.so.3」のどちらも「/usr/local/lib64」フォルダ下にあることが分かりました,




  4.ライブラリ検索のためのパスを通す

共有ライブラリ検索のための設定ファイルは「/etc/ld.so.conf」ですが,「/etc/ld.so.conf.d」フォルダ下に該当ライブラリの検索パスファイルを書くと取り入れられます。

スーパーユーザ権限「#」で次のコマンドを実行してください。

Linuxコード

echo "/usr/local/lib64" > /etc/ld.so.conf.d/lib64.conf



「/etc/ld.so.conf」の中身をPCが使う「/etc/ld.so.cache」に反映するため「ldconfig」コマンドを実行します。

Linuxコード

sudo ldconfig




  5.バージョンを確認し最新版のインストール完了

OpenSSLのバージョンを確認します。

Linuxコード

openssl version


【出力メッセージ例】
OpenSSL 3.6.0 1 Oct 2025 (Library: OpenSSL 3.6.0 1 Oct 2025)


これでOpenSSLの最新バージョンへのアップデートは終わりです。




  6.まとめ

今回は,OpenSSLのバージョンアップ手順を備忘録として纏めました。OpenSSLは,暗号化やCA証明書作成,SSL証明書作成などで,大変重宝するコマンドです。

SSL証明書では有効期限の更新をつい忘れてしまうことがありますが,このコマンドを使えば,サイトのSSL証明書の発行日や有効期限を知ることも可能です。

サーバの主要な構成コマンドの一つですので,定期的にバージョンアップするよう心掛けたいものです。

さて,永らくLinuxサーバの構築にかかわるテーマを実証してきましたが,あとApache2とUbuntuのバージョンアップ手順を実証して,インフラ関係のテーマを一区切りとし,Googleアプリ等の応用関係にテーマを戻していきたいと考えています。

それでは,楽しいITリテラシーライフをお過ごしください。



(ご注意)情報の正確性を期していますが,実施される場合には自己責任でお願いします。

0 件のコメント: