はじめに
このドキュメントでは、認証局(CA)署名付き証明書を使用して、Customer Voice Portal(CVP)Operation and Management Console(OAMP)と、Cisco Unified Contact Center Enterprise(UCCE)ソリューションのCVPサーバおよびCVPレポーティングサーバとの間のJava Management Extensions(JMX)通信を保護する方法について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- UCCEリリース12.5(1)
- Customer Voice Portal(CVP)リリース12.5(1)
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアのバージョンに基づいています。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
背景説明
OAMPは、JMXプロトコルを介してCVPコールサーバ、CVP VXMLサーバ、およびCVPレポーティングサーバと通信します。OAMPとこれらのCVPコンポーネント間の通信を保護することで、JMXのセキュリティ脆弱性を防ぐことができます。この安全な通信はオプションです。OAMPとCVPコンポーネント間の通常の操作には必要ありません。
JMX通信は、次の方法で保護できます。
- CVPサーバおよびCVPレポーティングサーバで、Web Service Manager(WSM)の証明書署名要求(CSR)を生成します。
- CVPサーバおよびCVPレポーティングサーバでのWSM用CSRクライアント証明書の生成
- OAMP用のCSRクライアント証明書を生成します(OAMPで実行)。
- 認証局による証明書への署名
- CVPサーバ、CVPレポーティングサーバ、およびOAMPでCA署名付き証明書、ルートおよび中間をインポートします。
- [オプション] OAMPへのセキュアなJConsoleログイン。
- Secure System CLIを使用します。
WSM用のCSR証明書の生成
ステップ 1:CVPサーバまたはレポートサーバにログインします。security.propertiesファイルからキーストアパスワードを取得します。
注:コマンドプロンプトで、more %CVP_HOME%\conf\security.propertiesと入力します。Security.keystorePW = <キーストアパスワードを返す>プロンプトが表示されたら、キーストアパスワードを入力します。
ステップ2:%CVP_HOME%\conf\securityに移動し、WSM証明書を削除します。このコマンドを使用します。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -delete -alias wsm_certificateです。
プロンプトが表示されたら、キーストアパスワードを入力します。
ステップ 3:CVPサーバ上のコールサーバ(callserver_certificate)とVXMLサーバ証明書(vxml_certificate)、およびレポートサーバ上のコールサーバ証明書(callserver_certificate)について、ステップ2を繰り返します。
ステップ 4:WSMサービス用のCA署名付き証明書を生成します。コマンド
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -genkeypair -alias wsm_certificate -v -keysize 2048 -keyalg RSAです。
- プロンプトで詳細を入力し、Yesと入力して確定します。
- プロンプトが表示されたら、キーストアパスワードを入力します。
注:後で参照できるようにCN名をメモします。
ステップ 5:エイリアスの証明書要求を生成します。このコマンドを実行し、ファイルに保存します。たとえば、wsm.csrです。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -certreq -alias wsm_certificate -file %CVP_HOME%\conf\security\wsm.csr。
1. プロンプトが表示されたら、キーストアのパスワードを入力します。
手順 6:CAによって署名された証明書を取得します。CA認証局を使用してCA署名付き証明書を作成する手順を実行し、CAが署名付き証明書を生成するときにクライアント/サーバ証明書認証テンプレートを使用するようにします。
手順 7:署名付き証明書、CA認証局のルート証明書および中間証明書をダウンロードします。
ステップ 8:ルート、中間、およびCA署名付きWSM証明書を%CVP_HOME%\conf\security\にコピーします。
ステップ 9:次のコマンドを使用して、ルート証明書をインポートします。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -import -v -trustcacerts -alias root -file %CVP_HOME%\conf\security\<filename_of_root_cer>。
- プロンプトが表示されたら、キーストアパスワードを入力します。
- Trust this certificateプロンプトで、Yesと入力します。
ステップ 10:次のコマンドを使用して、中間証明書をインポートします。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -import -v -trustcacerts -alias intermediate -file %CVP_HOME%\conf\security\<filename_of_intermediate_cer>。
- プロンプトが表示されたら、キーストアパスワードを入力します。
- Trust this certificateプロンプトで、Yesと入力します。
ステップ 11次のコマンドを使用して、CA署名付きWSM証明書をインポートします。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -import -v -trustcacerts -alias wsm_certificate -file %CVP_HOME%\conf\security\<filename_of_your_signed_cert_from_CA>。
1. プロンプトが表示されたら、キーストアのパスワードを入力します。
ステップ 12CVPサーバ上のCall Server証明書とVXMLサーバ証明書、およびReporting Server上のCall Server証明書に対して、ステップ4 ~ 11を繰り返します(ルート証明書と中間証明書を2回インポートする必要はありません)。
手順13 CVPサーバおよびCVPレポーティングサーバでWSMを設定します。
1. c:\cisco\cvp\conf\jmx_wsm.confに移動します。
図のようにファイルを追加または更新して、保存します。
javax.net.debug = all
com.sun.management.jmxremote.ssl.need.client.auth = true
com.sun.management.jmxremote.authenticate = false
com.sun.management.jmxremote.port = 2099
com.sun.management.jmxremote.ssl = true
com.sun.management.jmxremote.rmi.port = 3000
javax.net.ssl.keyStore=C:\Cisco\CVP\conf\security\.keystore
javax.net.ssl.keyStorePassword=< keystore_password >
javax.net.ssl.trustStore=C:\Cisco\CVP\conf\security\.keystore
javax.net.ssl.trustStorePassword=< keystore_password >
javax.net.ssl.trustStoreType=JCEKS
2. regeditコマンドを実行します。
Append this to the file at HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\WebServicesManager\Parameters\Java:
Djavax.net.ssl.trustStore=C:\Cisco\CVP\conf\security\.keystore
Djavax.net.ssl.trustStorePassword=
Djavax.net.ssl.trustStoreType=JCEKS
ステップ 14:CVPサーバおよびレポートサーバでのCVPコールサーバのJMXの設定
1. c:\cisco\cvp\conf\jmx_callserver.confに移動します。
図のようにファイルを更新し、保存します。
com.sun.management.jmxremote.ssl.need.client.auth = true
com.sun.management.jmxremote.authenticate = false
com.sun.management.jmxremote.port = 2098
com.sun.management.jmxremote.ssl = true
com.sun.management.jmxremote.rmi.port = 2097
javax.net.ssl.keyStore = C:\Cisco\CVP\conf\security\.keystore
javax.net.ssl.keyStorePassword =
javax.net.ssl.trustStore=C:\Cisco\CVP\conf\security\.keystore javax.net.ssl.trustStorePassword=< keystore_password > javax.net.ssl.trustStoreType=JCEKS
ステップ 15:CVPサーバでVXMLサーバのJMXを設定します。
1. c:\cisco\cvp\conf\jmx_vxml.confに移動します。
図のようにファイルを編集して保存します。
com.sun.management.jmxremote.ssl.need.client.auth = true
com.sun.management.jmxremote.authenticate = false
com.sun.management.jmxremote.port = 9696
com.sun.management.jmxremote.ssl = true
com.sun.management.jmxremote.rmi.port = 9697
javax.net.ssl.keyStore = C:\Cisco\CVP\conf\security\.keystore
javax.net.ssl.keyStorePassword =
2. regeditコマンドを実行します。
3. CVPサーバ上のWSMサービス、コールサーバとVXMLサーバサービス、およびレポーティングサーバ上のWSMサービスとコールサーバサービスを再起動します。
注: JMXでセキュア通信が有効になっている場合、キーストアは%CVP_HOME%\conf\security\.keystoreではなく%CVP_HOME%\jre\lib\security\cacerts.keystoreになります。
したがって、%CVP_HOME%\jre\lib\security\cacertsからの証明書を%CVP_HOME%\conf\security\.keystoreにインポートする必要があります。
WSM用のCA署名付きクライアント証明書の生成
ステップ 1:CVPサーバまたはレポートサーバにログインします。security.propertiesファイルからキーストアパスワードを取得します。
注:コマンドプロンプトで、more %CVP_HOME%\conf\security.propertiesと入力します。Security.keystorePW = <キーストアパスワードを返す>プロンプトが表示されたら、キーストアパスワードを入力します。
ステップ 2:%CVP_HOME%\conf\securityに移動し、次のコマンドを使用して、callserverによるクライアント認証用のCA署名付き証明書を生成します。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -genkeypair -alias <CVPサーバまたはレポーティングサーバのWSM証明書のCN> -v -keysize 2048 -keyalg RSA
1. プロンプトで詳細を入力し、Yesと入力して確定します。
2. プロンプトが表示されたら、キーストア・パスワードを入力します。
注:エイリアスは、WSMサーバ証明書の生成に使用されるCNと同じです。
ステップ 3:次のコマンドを使用してエイリアスの証明書要求を生成し、ファイル(たとえば、jmx_client.csr)に保存します。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -certreq -alias <CVPサーバまたはレポーティングサーバのWSM証明書のCN> -file %CVP_HOME%\conf\security\jmx_client.csr
1. プロンプトが表示されたら、キーストアのパスワードを入力します。
2. コマンドdir jmx_client.csrを使用して、CSRが正常に生成されたことを確認します。
ステップ 4:CAでJMXクライアント証明書に署名します。
注:CA認証局を使用してCA署名付き証明書を作成する手順を使用してください。CA署名付きJMXクライアント証明書をダウンロードします(ルート証明書と中間証明書は以前にダウンロードしてインポートしているので、必須ではありません)。
1. プロンプトが表示されたら、キーストアのパスワードを入力します。
2. [この証明書を信頼する]プロンプトで、「はい」と入力します。
ステップ 5:CA署名付きJMXクライアント証明書を%CVP_HOME%\conf\security\にコピーします。
手順 6:次のコマンドを使用して、CA署名付きJMXクライアント証明書をインポートします。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -import -v -trustcacerts -alias <CVPサーバまたはレポーティングサーバのWSM証明書のCN> -file %CVP_HOME%\conf\security\<CA署名付きJMXクライアント証明書のファイル名>
1. プロンプトが表示されたら、キーストアのパスワードを入力します。
手順 7:Cisco CVP Call Server、VXML Server、およびWSMサービスを再起動します。
ステップ 8:実装されている場合は、Reporting Serverについても同じ手順を繰り返します。
OAMP用のCA署名付きクライアント証明書の生成(OAMPで実行)
ステップ 1:OAMPサーバにログインします。security.propertiesファイルからキーストアパスワードを取得します。
注:コマンドプロンプトでmore %CVP_HOME%\conf\security.propertiesと入力します。Security.keystorePW = <キーストアパスワードを返す>プロンプトが表示されたら、キーストアパスワードを入力します。
ステップ 2:%CVP_HOME%\conf\securityに移動し、CVPサーバまたはCVPレポーティングサーバWSMを使用したクライアント認証用のCA署名付き証明書を生成します。このコマンドを使用します。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -genkeypair -alias <CN of CVP Server or CVP Reportig Server WSM certificate> -v -keysize 2048 -keyalg RSA.
1. プロンプトで詳細を入力し、「Yes」と入力して確定します。
2. プロンプトが表示されたら、キーストア・パスワードを入力します。
ステップ 3:次のコマンドを使用してエイリアスの証明書要求を生成し、ファイル(jmx.csrなど)に保存します。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -certreq -alias <CN of CVP Server or CVP Reporting Server WSM certificate> -file %CVP_HOME%\conf\security\jmx.csr.
1. プロンプトが表示されたら、キーストアのパスワードを入力します。
ステップ 4:CAで証明書に署名します。
注:CA認証局を使用してCA署名付き証明書を作成する手順を使用してください。CA認証局の証明書とルート証明書をダウンロードします。
ステップ 5:ルート証明書とCA署名付きJMXクライアント証明書を%CVP_HOME%\conf\security\にコピーします。
手順 6:CAのルート証明書をインポートします。このコマンドを使用します。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -import -v -trustcacerts -alias root -file %CVP_HOME%\conf\security\<filename_of_root_cert>。
1. プロンプトが表示されたら、キーストアのパスワードを入力します。
2. [この証明書を信頼する]プロンプトで、「はい」と入力します。
手順 7:CVPサーバおよびCVPレポーティングサーバのCA署名付きJMXクライアント証明書をインポートします。このコマンドを使用します。
%CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -import -v -trustcacerts -alias <CN of CVP Server or CVP Reporting Server WSM certificate> -file %CVP_HOME%\conf\security\<filename_of_your_signed_cert_from_CA>。
1. プロンプトが表示されたら、キーストアのパスワードを入力します。
ステップ 8:OAMPサービスを再起動します。
ステップ 9:OAMPにログインし、OAMPとコールサーバ、VXMLサーバ、またはレポーティングサーバ間のセキュアな通信を有効にします。 Device Management > Call Serverの順に移動します。Enable secure communication with the Ops consoleチェックボックスにチェックマークを付けます。Call ServerとVXML Serverの両方を保存して展開します。
ステップ 10:regeditコマンドを実行します。
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\OPSConsoleServer\Parameters\Javaに移動します。
これをファイルに追加して保存します。
Djavax.net.ssl.trustStore=C:\Cisco\CVP\conf\security\.keystore
Djavax.net.ssl.trustStorePassword=
Djavax.net.ssl.trustStoreType=JCEKS
注意: JMXのポートを保護した後、JConsoleにアクセスするには、Oracleドキュメントに記載されているJConsoleの定義済ステップを実行する必要があります。
ステップ 11OAMPサービスを再起動します。
関連情報