Japan
サイト内の現在位置を表示しています。
Cluster WebUIにOpenSSL 3.0/3.1を利用してHTTPSで接続する方法(Windows/Linux)
CLUSTERPRO オフィシャルブログ ~クラブロ~はじめに
HTTPS接続を利用する場合に必要となるOpenSSLにはバージョンとして1.1.1、3.0、3.1等がありますが、このうちバージョン1.1.1は2023年9月11日にサポートが終了しています。現在もサポートが継続しているOpenSSLへの対応としては、CLUSTERPRO Xの最新バージョンであるX 5.1がOpenSSL 3.0に対応していましたが、2023年11月17日にリリースされたアップデートにより、過去のバージョンも含めOpenSSL 3.1への対応が行われました。
OpenSSL 3.1への対応が行われたアップデートは以下のとおりです。
- ※入手にはPP・サポートサービスの契約が必要です。
- CLUSTERPRO X 5.1の標準アップデート(内部バージョン:5.1.2-1/13.12)
- CLUSTERPRO X 4.3(内部バージョン:4.3.0-1~4.3.4-1/12.30~12.34)向けの追加アップデート
- CLUSTERPRO X 3.3(内部バージョン:3.3.5-1/11.35)向けの追加アップデート
OpenSSL 3.0/3.1ではライブラリのファイル名などがOpenSSL 1.1.1以前と異なるため、以前のWindows向けの記事やLinux向けの記事とは設定内容が一部異なります。そのため、今回はCLUSTERPRO X 5.1(内部バージョン:5.1.2-1/13.12)環境を例として、OpenSSL 3.0/3.1を利用してCluster WebUIにHTTPS接続するための設定方法を紹介します。
この記事の内容
1. OpenSSLのインストール
Cluster WebUIでHTTPS接続を利用するためにOpenSSLを導入します。
1.1 OpenSSLのインストール(Windows)
Windows環境ではOpenSSLを別途ダウンロードしてインストールする必要があります。 今回ご紹介する手順ではOpenSSL 3.1を導入する手順としていますが、同様の手順で3.0も導入可能です。
HAクラスターを構成する全てのサーバーにOpenSSLをインストールします。Cluster WebUIが対応するOpenSSLのバージョンについては以下のFAQもご参照ください。
今回は、Win32/Win64 OpenSSL Installer for Windows - Shining Light Productionsより「Win64 OpenSSL v3.1.X Light」(Xには数字が入ります)のファイルをダウンロードし、サーバーに配置してインストールします。今回利用するWin64 OpenSSLのインストールには「Microsoft Visual C++ 2019 Redistributable (64-bit)」が必要となりますので、インストールを求められた場合は表示される手順に従ってインストールしてください。
OpenSSLのインストーラー実行後はインストールウィザードの案内に従って進めていきますが、本手順ではインストール先をデフォルト設定のまま、DLLの格納場所をbin配下とするように設定しています。
今回紹介したサイト以外のWindows向けOpenSSLバイナリを公開しているサイトについては、以下のOpenSSL公式Wikiに掲載されています。各サイトのOpenSSLバイナリを利用した際のCLUSTERPRO観点での動作は未確認ですが、参考情報として紹介します。
1.2 OpenSSLのインストール(Linux)
Linux環境では、ディストリビューションが予め用意したOpenSSLを利用することが出来ます。今回ご紹介する手順ではOSとしてRed Hat Enterprise Linux 9.2を利用していますが、同環境ではminimalインストール時にOpenSSL 3.0が導入されています。
2. 秘密鍵とサーバー証明書の作成と配置
今回、サーバー証明書は自己署名証明書として作成したものを利用します。
- ※本手順においてコマンドで指定するオプションは参考値であり、実際に各種ファイルを作成する際は要件に合わせてオプションを変更してください。
2.1 秘密鍵とサーバー証明書を格納する場所を作成
OpenSSLをインストールしたサーバーで秘密鍵とサーバー証明書を作成、及び格納する場所を作成します。
■Windowsの場合
今回は「C:\ssl」として作成します。 コマンドプロンプト等からフォルダを作成し、フォルダへ移動します。
また以降の手順実施のため、一時的にPath環境変数にOpenSSLインストールフォルダを設定します。
> mkdir C:\ssl
> cd C:\ssl
> set Path=%Path%;C:\Program Files\OpenSSL-Win64\bin
■Linuxの場合
今回はファイルを作成するための一時ディレクトリとして「/tmp/ssl」を作成し、ディレクトリへ移動します。
# mkdir /tmp/ssl
# cd /tmp/ssl
2.2 秘密鍵を作成
OpenSSLコマンドを利用して秘密鍵を作成します。
今回はファイル名を「clp_server.key」として作成します。
■Windowsの場合
> openssl.exe genrsa -out clp_server.key 2048
■Linuxの場合
# openssl genrsa -out clp_server.key 2048
2.3 証明書署名要求(CSR)を作成
OpenSSLコマンドを利用して証明書署名要求(CSR)を作成します。
今回はファイル名を「clp_server.csr」として作成します。コマンドを実行すると「Country Name」などの情報を対話形式で入力することを求められますので、環境に合わせて設定してください。
■Windowsの場合
> openssl.exe req -new -key clp_server.key -out clp_server.csr
■Linuxの場合
# openssl req -new -key clp_server.key -out clp_server.csr
2.4 サーバー証明書(CRT)を作成
OpenSSLコマンドを利用してサーバー証明書(CRT)を作成します。
今回はファイル名を「clp_server.crt」として作成します。また、証明書の有効期間を3650日として作成します。
■Windowsの場合
> openssl.exe x509 -req -in clp_server.csr -signkey clp_server.key -out clp_server.crt -days 3650
■Linuxの場合
# openssl x509 -req -in clp_server.csr -signkey clp_server.key -out clp_server.crt -days 3650
2.5 秘密鍵とサーバー証明書をクラスター構成サーバーに配布
作成した秘密鍵とサーバー証明書(CRT)を、HAクラスターを構成する全てのサーバーに配布します。
このとき、秘密鍵とサーバー証明書のパスが全てのサーバーで同じパスとなるようにします。今回は以下のディレクトリ配下に秘密鍵とサーバー証明書を格納します。
■Windowsの場合
秘密鍵:C:\ssl\clp_server.key
サーバー証明書:C:\ssl\clp_server.crt
■Linuxの場合
秘密鍵:/etc/pki/tls/private/clp_server.key
サーバー証明書:/etc/pki/tls/certs/clp_server.crt
3. CLUSTERPROの設定
Cluster WebUIの設定モードで「クラスタのプロパティ」を選択します。
「クラスタのプロパティ」の「暗号化」タブを選択し、証明書ファイルなどのパスを設定します。
■Windowsの場合
証明書ファイル:C:\ssl\clp_server.crt
秘密鍵ファイル:C:\ssl\clp_server.key
SSLライブラリ:C:\Program Files\OpenSSL-Win64\libssl-3-x64.dll
Cryptoライブラリ:C:\Program Files\OpenSSL-Win64\libcrypto-3-x64.dll
■Linuxの場合
証明書ファイル:/etc/pki/tls/certs/clp_server.crt
秘密鍵ファイル:/etc/pki/tls/private/clp_server.key
SSLライブラリ:/usr/lib64/libssl.so.3
Cryptoライブラリ:/usr/lib64/libcrypto.so.3
通信方式の変更により設定反映時に「WebManagerサービス再起動」等の実行を確認されるため、OKを選択します。
4. 動作確認
- ※サーバー証明書に自己署名証明書を利用しているため、接続時に証明書に関する警告が表示されます。これは意図したものですので、そのまま接続を進めてください。
まとめ
今回は、OpenSSL 3.0/3.1を利用したCluster WebUIへのHTTPS接続の設定方法をご紹介しました。Cluster WebUIへの接続を暗号化したい場合は、本記事の内容を参考にHTTPSの設定を有効にしてください。
お問い合わせ