設定廣域搜尋服務的安全連線
您可以配置 IBM OpenPages® with Watson™ 廣域搜尋服務 (Apache Solr) ,以使用具有 TLS 的安全連線。 TLS 可確保在應用程式伺服器與 Solr 服務之間傳遞的所有資料都保持專用。
開始之前
java -version如果您收到下列錯誤,則 Java 不在 PATH 變數中: Command not found。關於此作業
如需此作業中所使用指令的相關資訊,請參閱 Apache Solr 文件。
程序
- 如果廣域搜尋元件已啟用,則您必須停用它。
- 以具有管理專用權的使用者身分登入 OpenPages 。
- 按一下
> 系統配置 > 廣域搜尋 ,然後按一下 停用。
- 停止廣域搜尋服務。
如需相關資訊,請參閱 啟動或停止廣域搜尋服務。
- 建立安全連線的憑證。
- 移至 <SEARCH_HOME>/solr/server/etc 資料夾,並執行下列指令。
keytool -genkeypair -alias alias -keyalg key_algorithm -keysize keysize -keypass key_pass -storepass keystore_passwd -validity validity -keystore keystore.p12 -storetype PKCS12 -ext ip_address -dname "CN=localhost, OU=Organizational Unit, O=Organization, L=Location, ST=State, C=Country"在下列範例中,指令會在名為
solr-ssl.keystore.p12的金鑰儲存庫中建立自簽憑證。 金鑰儲存庫包含別名為solr-ssl的金鑰,金鑰儲存庫密碼為secret,信任儲存庫密碼為secret。 它指定DNS:host.company.com和IP:127.0.0.1,192.168.7.1的「主體替代名稱 (SAN)」值,以併入憑證中。 (SAN 值不是必要值,而且可能不會在您的環境中指定)。keytool -genkeypair -alias solr-ssl -keyalg RSA -keysize 2048 -keypass secret -storepass secret -validity 9999 -keystore solr-ssl.keystore.p12 -storetype PKCS12 -ext SAN=DNS:host.company.com,IP:127.0.0.1,IP:192.168.7.1 -dname "CN=localhost, OU=Organizational Unit, O=Organization, L=Location, ST=State, C=Country" - 選用項目: 如果您需要 PEM 檔案,請將 PKCS12 格式金鑰儲存庫 (包括憑證和金鑰) 轉換成 PEM 格式。若要執行此指令,必須已安裝
openssl,並將其新增至 PATH 環境變數。openssl pkcs12 -in <keystore.p12> -out <keystore.pem>當系統提示輸入匯入密碼和 PEM 通行詞組時,您可以使用您在步驟 3a中為 <key_pass>
值指定的相同密碼。
- 移至 <SEARCH_HOME>/solr/server/etc 資料夾,並執行下列指令。
- 匯出您在步驟 3 中建立的憑證。
keytool -exportcert -keystore <keystore> -alias <alias> -file <solr_certificate>當系統提示輸入金鑰儲存庫密碼時,請鍵入您在步驟 3a中為 <key_pass>
值指定的密碼。例如:keytool -exportcert -keystore solr-ssl.keystore.p12 -alias solr-ssl -file solr_ssl.cert - 更新 solr.in 檔案。
- 在文字編輯器中編輯下列檔案:
- Windows
- <SEARCH_HOME>\solr\bin\solr.in.cmd
- Linux®
- <SEARCH_HOME>/solr/bin/solr.in.sh
- 解除註解並設定下列 TLS 內容。
SOLR_SSL_ENABLED=true SOLR_SSL_KEY_STORE=etc/keystore.p12 SOLR_SSL_KEY_STORE_PASSWORD=keystore_passwd SOLR_SSL_TRUST_STORE=etc/keystore.p12 SOLR_SSL_TRUST_STORE_PASSWORD=keystore_passwd SOLR_SSL_NEED_CLIENT_AUTH=false SOLR_SSL_WANT_CLIENT_AUTH=true SOLR_SSL_CHECK_PEER_NAME=true在 Windows 上,您可能需要使用
server/etc作為SOLR_SSL_KEY_STORE和SOLR_SSL_TRUST_STORE內容的路徑名稱。
- 在文字編輯器中編輯下列檔案:
- 以具有管理專用權的使用者身分登入 OpenPages 應用程式。
- 按一下
> 系統配置 > 設定。 - 更新下列設定以使用 https 而非 http。
平台 > 搜尋 > 管理 > 搜尋伺服器管理 URL
平台 > 搜尋 > 索引 > 搜尋伺服器 URL
平台 > 搜尋 > 要求 > 搜尋伺服器 URL
- 將您在步驟 4 中匯出的憑證檔複製到應用程式伺服器上的下列目錄。<JAVA_HOME>/lib/security,其中 <JAVA_HOME> 是 JRE 的位置。例如:
/opt/ibm/java-x86_64-80/jre/lib/security/solr_ssl.cert - 將憑證新增至每一部應用程式伺服器上的 IBM Java 金鑰儲存庫。
- 在 Windows 電腦上,使用 以管理者身分執行 選項啟動「命令提示字元」視窗。 在 Linux 電腦上,開啟 Shell。
- 備份 <JAVA_HOME>/lib/security/cacerts 檔案,其中 <JAVA_HOME> 是 JRE 的位置,例如 /opt/ibm/java-x86_64-80/jre。
- 跳至 <JAVA_HOME>/bin 目錄。
- 執行下列指令來更新 <JAVA_HOME>/lib/security/cacerts 檔案。
keytool -importcert -alias <cert_alias> -keystore <JAVA_HOME>/lib/security/cacerts -file <solr_certificate>當系統提示時,請鍵入 cacerts 金鑰儲存庫的金鑰儲存庫密碼。 預設密碼通常是
changeit。例如:keytool -importcert -alias solr-ssl -keystore /opt/ibm/java-x86_64-80/jre/lib/security/cacerts -file /opt/ibm/java-x86_64-80/jre/lib/security/solr_ssl.cert - 確認您是否要信任憑證。
- 將憑證匯入至每一部應用程式伺服器上的 IBM WebSphere® 信任儲存庫。
- 登入 OpenPages 應用程式伺服器。
- 執行下列指令:
keytool -importcert -v -alias <cert_alias> -file <solr_certificate> -keystore <keystore_path> -storetype PKCS12 -storepass <keystore_password>例如:keytool -importcert -v -alias solr-ssl -file /opt/ibm/java-x86_64-80/jre/lib/security/solr_ssl.cert -keystore /opt/IBM/OpenPages/wlp-usr/servers/app1Server1/resources/security/key.p12 -storetype PKCS12 -storepass <STORE_PASSWORD>如需相關資訊,請參閱 WebSphere Liberty 說明文件中的 在 Liberty 中新增授信憑證 。
- 重新啟動所有 OpenPages 服務。
- 如果搜尋伺服器安裝在與應用程式伺服器不同的電腦上,請將憑證新增至搜尋伺服器上的 IBM Java 金鑰儲存庫。
- 在 Windows 電腦上,使用 以管理者身分執行 選項啟動「命令提示字元」視窗。 在 Linux 電腦上,開啟 Shell。
- 移至 <JAVA_HOME>/bin 目錄,並執行下列指令:
keytool -importcert -alias <alias> -keystore <JAVA_HOME>/lib/security/cacerts -file <SEARCH_HOME>/solr/server/etc/solr_certificate例如:keytool -importcert -alias solr-ssl -keystore /opt/ibm/java-x86_64-80/jre/lib/security/cacerts -file /opt/IBM/OpenPages/OPSearch/solr/server/etc/solr_ssl.cert - 當系統提示時,請鍵入 cacerts 金鑰儲存庫的金鑰儲存庫密碼。 預設密碼通常是
changeit。
- 啟動廣域搜尋服務。
如需相關資訊,請參閱 啟動或停止廣域搜尋服務。