1.8.13 Configuration Manager REST APIサーバとストレージシステム間のSSL通信に使用する証明書を変更する(構成変更の通知を受信する場合)
背景
ストレージシステムの情報検索では、REST API サーバのデータベースに保持しているストレージシステムの構成情報を取得します。ストレージシステムの構成変更の通知を設定しておくと、REST API サーバのデータベースに保持している構成情報を最新の状態に保つことができます。
構成変更の通知では、デフォルトでは自己署名のサーバ証明書が使用されています。セキュリティを向上させるために認証局が発行したサーバ証明書に変更ができます。
- 注意
-
サーバ証明書および秘密鍵は、REST APIサーバにログインしたすべてのユーザがアクセスできます。悪意のあるユーザがログインできないよう、ユーザアカウントの管理には十分に注意してください。
- ヒント
-
Linuxの場合、OpenSSLのファイルが手順中のパスとは異なる場所に格納されていることがあります。次の手順では、opensslファイルおよびopenssl.cfgファイルが<OpenSSLのインストール先>/binにある環境を想定しています。
次のコマンドを実行すると、openssl.cfgの格納先を確認できます。
<OpenSSLのインストール先>/bin/openssl version -a | grep OPENSSLDIR
前提条件
- 前提条件、操作手順で作成または取得するファイルは、一時保管用ディレクトリを作成し保存してください。手順5で使います。
-
サーバ証明書を発行する認証局の証明書を入手し、ファイル名をcacert.pemに変更して、一次保管用ディレクトリに保存してください。
- メモ
-
サーバ証明書を発行した認証局が中間認証局の場合は、複数の証明書をテキストエディターで連結させることで、1 つのファイルに複数の証明書を混在させます。この証明書ファイルをcacert.pemとして一時保管用ディレクトリに保存してください。
操作手順
-
次のコマンドを実行して、秘密鍵ファイルを作成します。
- Windowsの場合:
- <OpenSSLのインストール先>\bin\openssl genrsa -out <秘密鍵ファイル> 2048
- Linuxの場合:
- <OpenSSLのインストール先>/bin/openssl genrsa -out <秘密鍵ファイル> 2048
オプション
- out
- 作成する秘密鍵の出力先パスを指定します。秘密鍵のファイル名はkey.pemとしてください。出力先パスに同じ名称のファイルがある場合、ファイルが上書きされます。
-
次のコマンドを実行して、証明書に書かれる情報を対話形式で入力し、証明書発行要求ファイルを作成します。
- Windowsの場合:
- <OpenSSLのインストール先>\bin\openssl req -config <OpenSSLのインストール先>\bin\openssl.cfg -sha256 -new -key <秘密鍵ファイル> -out <証明書発行要求ファイル>
- Linuxの場合:
- <OpenSSLのインストール先>/bin/openssl req -config <OpenSSLのインストール先>/bin/openssl.cfg -sha256 -new -key <秘密鍵ファイル> -out <証明書発行要求ファイル>
オプション
- key
- 手順1で作成した秘密鍵ファイル名を指定します。
- out
- 作成する証明書発行要求の出力先パスを指定します。出力先パスに同じ名称のファイルがある場合、ファイルが上書きされます。
入力する情報を次に示します。
項目
説明
Country Name
(必須)2 文字の国コードを指定します。
State or Province Name
(必須)都道府県名を指定します。
Locality Name
(任意)市区町村名または地域名を指定します。
Organization Name
(必須)組織名を指定します。
Organization Unit Name
(任意)組織の構成単位名を指定します。
Common Name
(必須)REST APIサーバの IP アドレスまたはホスト名を入力します。
Email Address
(任意)メールアドレスを指定します。
A challenge password
(任意)証明書を破棄するときに必要になるパスワードを指定します。
An optional company name
(任意)別の組織名を指定します。
-
手順2で作成した証明書発行要求を認証局に送付します。
認証局へのサーバ証明書の申請は、通常、オンラインでできます。作成したREST APIサーバの証明書発行要求を任意の認証局に送信し、電子署名を受けます。
X.509 PEM形式のサーバ証明書を発行してもらう必要があります。申請方法については、使用する認証局のWebサイトなどで確認してください。また、証明書の署名アルゴリズムに認証局が対応していることを確認してください。
認証局の電子署名を受けたサーバ証明書はcert.pemというファイル名で一時保管用ディレクトリに保存してください。
- メモ
-
- 認証局からの返答は保存しておいてください。
- 認証局が発行する証明書には有効期限があります。期限が切れる前に再発行してもらう必要があります。
証明書の有効期限を確認するには、次のコマンドを実行してください。
Windowsの場合:
<OpenSSLのインストール先>\bin\openssl x509 -in <サーバ証明書ファイル> -text -noout
Linuxの場合:
<OpenSSLのインストール先>/bin/openssl x509 -in <サーバ証明書ファイル> -text -noout
-
REST APIのサービスを停止します。
-
一時保管用ディレクトリに保存されている認証局の証明書ファイル(cacert.pem)、秘密鍵ファイル(key.pem)、およびサーバ証明書ファイル(cert.pem)を次のディレクトリに配置します。
- Windowsの場合:
- <REST APIのインストール先>\oss\rabbitmq\etc\rabbitmq\ssl\extra
- Linuxの場合:
- <REST APIのインストール先>/oss/rabbitmq/etc/rabbitmq/ssl/extra
-
rabbitmq.configファイルの内容を書き換えます。
rabbitmq.configファイルは次のディレクトリに配置されています。必要に応じてバックアップをとってください。
- Windowsの場合:
- <REST APIのインストール先>\oss\rabbitmq\etc\rabbitmq
- Linuxの場合:
- <REST APIのインストール先>/oss/rabbitmq/etc/rabbitmq
rabbitmq.configファイルのcacertfile、certfileおよびkeyfileの行を書き換えます。
-
認証局の証明書ファイルの配置先パスは、デフォルトでは次のように定義されています。
cacertfile, "<REST API のインストール先>/oss/rabbitmq/etc/rabbitmq/ssl/default/cacert.pem"
配置先パスのdefaultをextraに書き換えます。default以外は変更しないでください。
-
秘密鍵ファイルの配置先パスは、デフォルトでは次のように定義されています。
certfile, "<REST API のインストール先>/oss/rabbitmq/etc/rabbitmq/ssl/default/key.pem"
配置先パスのdefaultをextraに書き換えます。default以外は変更しないでください。
-
サーバ証明書ファイルの配置先パスは、デフォルトでは次のように定義されています。
keyfile, "<REST API のインストール先>/oss/rabbitmq/etc/rabbitmq/ssl/default/cert.pem"
配置先パスのdefaultをextraに書き換えます。default以外は変更しないでください。
-
REST APIのサービスを起動します。