Ubuntu 18がインストールされた実稼働サーバーを実行しています。最近、自分のWebアプリケーションが、顧客の場所にインストールされているファイアウォールの一部で許可されていないことがわかりました。
サーバーがTLSv1.0, TLSv1.1, TLSv1.2
プロトコルで通信していることがわかりました。ファイアウォール設定によりTLSv1.3
プロトコルのみでサーバーとの通信が許可されていると思います。
Ubuntu 18にはOpenSSL version 1.1.0
が同梱されているため、サーバーがTLS v1.3
をサポートするには、OpenSSLを最新のversion 1.1.1
にアップグレードする必要があります。
これはnginx
サーバーを実行している実稼働サーバーであるため、サーバー上で直接何かを試したくありません。
root@energy-prod:~# nginx -v
nginx version: nginx/1.14.0 (Ubuntu)
サーバーの他の設定に影響を与えずにOpenSSLをv1.1.1にアップグレードする最良の方法は何ですか?
NOTE:2019年8月現在、openSSL 1.1.1は18.04の通常のパッケージアップグレード/インストールを介してインストールできるようになっているはずです。または、.debパッケージを here から直接ダウンロードできます。
OpenSSL Webサイト によると:
最新の安定バージョンは1.1.1シリーズです。これは、2023年9月11日までサポートされる長期サポート(LTS)バージョンでもあります。
これは現在のUbuntuリポジトリにはないため、最新のOpenSSLバージョンを手動でダウンロード、コンパイル、インストールする必要があります。
従うべき手順は次のとおりです。
wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz
tar -zxf openssl-1.1.1a.tar.gz && cd openssl-1.1.1a
でtarballを解凍します./config
を発行します。make
を発行します(このコマンドを正常に実行する前にSudo apt install make gcc
を実行する必要がある場合があります)。make test
を実行して、考えられるエラーを確認します。Sudo mv /usr/bin/openssl ~/tmp
Sudo make install
を発行します。Sudo ln -s /usr/local/bin/openssl /usr/bin/openssl
Sudo ldconfig
を実行して、シンボリックリンクを更新し、ライブラリキャッシュを再構築します。手順4〜10の実行中にエラーがなかったと仮定すると、OpenSSLの新しいバージョンが正常にインストールされているはずです。
再度、端末から次のコマンドを発行します。
openssl version
出力は次のようになります。
OpenSSL 1.1.1a 20 Nov 2018