スタンドアロンのインデックスサーチサーバー (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
|
Windchill Index Search クライアントの設定
1. Windchill シェルを開き、次のコマンドを実行して、インデックスサーチクライアントがインデックスサーチサーバーに接続するときに使用するプロトコルを HTTPS に設定します。
xconfmanager -s wt.index.solrProtocol=https -t codebase/wt.properties -p
2. Windchill を再起動します。
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. 証明書ファイルを JVM トラストストア (Windchill の JDK/JVM のみ) に追加します。
a. Windchill が使用する Java の場所に移動し、<Java>/jre/lib/security で cacerts ファイルのパスを確認します。
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
4. SSL を使用するように Windchill が設定されている場合、Windchill の外部で使用されている Java クライアントが接続するには証明書が必要です。
このため、インデックスサーチサーバーによって使用されている JVM に証明書をインポートする必要があります。これにより、インデックスサーチサーバーは Windchill に接続し、インデックシング用のドキュメントをダウンロードできます。
証明書ファイルを JVM トラストストア (Solr サーバーの JDK/JVM) に追加します。
a. Solr サーバーが使用する Java の場所に移動し、<JAVA>/jre/lib/security で cacerts ファイルのパスを確認します。
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 とインデックスサーチサーバーを再起動し、Solr 管理インタフェースに移動して、Solr が SSL とともに実行されていることを確認します。
|
SSL の既知の問題については、次のサイトを参照してください。
|