インストールおよびアップグレード > Installation and Configuration Guide > PTC ソリューションインストーラの使用 > Windchill ソリューションのインストール > オプション製品の設定 > Windchill インデックスサーチのインストール > Windchill Index Search のインストール後の設定 > インデックスサーチサーバーのクラウドモードでの設定 > クラウドのインデックスサーチサーバー (Solr) の SSL の設定
  
クラウドのインデックスサーチサーバー (Solr) の SSL の設定
開始する前に、証明書とキーが単一のファイルとして PEM フォーマットに変換されている必要があります。
* 
証明書のみのファイルが使用できない場合、必要に応じて証明書とキーのファイルから生成できます。
1. keytool ユーティリティを使用して、JKS キーストアを PKCS12 フォーマットに変換します:
keytool -importkeystore -srckeystore solr-ssl.keystore.jks -destkeystore solr-ssl.keystore.p12 -srcstoretype jks -deststoretype pkcs12
2. openssl コマンドを使用して、認証書のみが含まれ、キーは含まれていない PKCS12 フォーマットのキーストアを PEM フォーマットに変換します:
openssl pkcs12 -nokeys -in solr-ssl.keystore.p12 -out solr-ssl.cacert.pem
Solr の SSL の設定
Solr を実行しているすべてのノードの Windchill Index Search サーバーを設定します。同じ証明書とキーのファイルをすべてのノードに使用します。
1. 証明書 (JKS) ファイルを <インデックスサーチホーム>/solr/server/etc にコピーします。
2. 共通の SSL 関連のシステムプロパティを設定します。
SSL 設定をアクティブ化するには、次のファイルの SOLR_SSL_* で始まるプロパティをコメント解除し、更新します。
Windows: bin\solr.in.cmd
次に例を示します。
set SOLR_SSL_KEY_STORE=etc/solr-ssl.keystore.jks
set SOLR_SSL_KEY_STORE_PASSWORD=secret)
set SOLR_SSL_TRUST_STORE=etc/solr-ssl.keystore.jks
set SOLR_SSL_TRUST_STORE_PASSWORD=secret
REM Require clients to authenticate
set SOLR_SSL_NEED_CLIENT_AUTH=false
REM Enable clients to authenticate (but not require)
set SOLR_SSL_WANT_CLIENT_AUTH=false
Unix: bin/solr.in.sh
以下に例を示します。
bin/solr.in.sh example SOLR_SSL_* configuration
SOLR_SSL_KEY_STORE=etc/solr-ssl.keystore.jks
SOLR_SSL_KEY_STORE_PASSWORD=secret
SOLR_SSL_TRUST_STORE=etc/solr-ssl.keystore.jks
SOLR_SSL_TRUST_STORE_PASSWORD=secret
# Require clients to authenticate
SOLR_SSL_NEED_CLIENT_AUTH=false
# Enable clients to authenticate (but not require)
SOLR_SSL_WANT_CLIENT_AUTH=false
ここで、"secret" は証明書の作成時に指定されたパスワードです。
3. Windchill シェルを開き、次のコマンドを実行して、インデックスサーチクライアントがインデックスサーチサーバーに接続するときに使用するプロトコルを HTTPS に設定します。
xconfmanager -s wt.index.solrProtocol=https -t codebase/wt.properties -p
4. SSL を使用するように Windchill が設定されている場合、Windchill の外部で使用されている Java クライアントが接続するには証明書が必要です。
このため、Solr クラウドで Solr ノードによって使用されている JVM に証明書をインポートする必要があります。これにより、Solr ノードは Windchill に接続し、インデックシング用のドキュメントをダウンロードできます。
証明書ファイルを JVM トラストストア (Solr ノードの JDK/JVM) に追加します。
a. Solr ノードが使用する Java の場所に移動し、<JAVA>/jre/lib/securitycacerts ファイルのパスを確認します。
b. <Java>/jre/bin に移動し、新しい証明書をインポートします。cacerts に書き込むためのアクセス許可を持つユーザーとして keytool ユーティリティを実行します。
keytool -import -file <証明書ファイル> -alias <一意の名前> -keystore <cacerts ファイルへのパス>
次に例を示します。
keytool -import -file D:\SolrWithSSL\solr-5.4.1\server\etc\solr-ssl.cacert.pem -alias Key_Alias -keystore ../lib/security/cacerts
* 
JVM キーストアのデフォルトのパスワードは "changeit" です。
5. Windchill を再起動します。
ZooKeeper の SSL の設定
1. クラスタ全体に適用される urlScheme プロパティは、Solr ノードがまだ 1 つも起動していないときに、https に設定する必要があります。
コマンドプロンプトを開き、<インデックスサーチホーム>/solr/server/scripts/cloud-scripts に移動して、次のコマンドを実行します。
Windows:
zkcli.bat -zkhost <コンマで区切られた ZooKeeper ホスト名:ポートエントリのリスト> -cmd clusterprop -name urlScheme -val https
例:
zkcli.bat -zkhost host1.ptcnet.ptc.com:2181,host2.ptcnet.ptc.com:2182,host3.ptcnet.ptc.com:2183 -cmd clusterprop -name urlScheme -val https
Unix:
sh zkcli.sh -zkhost <コンマで区切られた ZooKeeper ホスト名:ポートエントリのリスト> -cmd clusterprop -name urlScheme -val https
例:
sh zkcli.sh -zkhost host1.ptcnet.ptc.com:2181,host2.ptcnet.ptc.com:2182,host3.ptcnet.ptc.com:2183 -cmd clusterprop -name urlScheme -val https
* 
urlScheme コマンドは、ZooKeeper ノードが再起動されるたびに実行される必要があります。
2. Solr クラウド (ZooKeeper ノードと Solr ノード) を再起動し、Solr 管理インタフェースに移動して、Solr が SSL とともに実行されていることを確認します。
* 
SSL の既知の問題については、次のサイトを参照してください。