클라우드 색인 검색 서버(Solr)에 대한 SSL 구성
시작하려면 먼저 PEM 형식으로 변환된 인증서 및 키를 단일 파일로 가지고 있어야 합니다.
|
인증서 전용 파일이 없는 경우 선택적으로 인증서 및 키 파일에서 해당 파일을 생성할 수 있습니다.
1. 키 도구 유틸리티를 사용하여 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
3. 신뢰 저장소와 키 저장소가 PKCS12 형식일 경우 p12 파일 경로와 함께 SOLR_SSL_KEY_STORE 및 SOLR_SSL_TRUST_STORE를 설정하여 p12 파일을 사용합니다.
4. 신뢰 저장소와 키 저장소가 JKS 형식일 경우 jks 파일 경로와 함께 SOLR_SSL_KEY_STORE 및 SOLR_SSL_TRUST_STORE를 설정하여 jks 파일을 사용하고 SOLR_SSL_KEY_STORE_TYPE 및 SOLR_SSL_TRUST_STORE_TYPE을 JKS로 설정합니다.
|
Solr에 대한 SSL 구성
Solr을 실행 중인 모든 노드에 대해 Windchill Index Search 서버를 구성합니다. 모든 노드에 대해 동일한 인증서 및 키 파일을 사용합니다.
1. 인증서(JKS) 파일을 <Index_Search_Home>/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_HOME>/lib/security 아래에 있는 cacerts 파일의 경로를 확인합니다.
b. <JAVA_HOME>/bin으로 이동하여 새 인증서를 가져옵니다. cacerts에 쓸 수 있는 권한을 가진 사용자로 다음 키 도구 유틸리티를 실행합니다.
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. Solr 노드를 시작하기 전에 urlScheme 클러스터 전체 등록 정보를 https로 설정해야 합니다.
명령 프롬프트를 열고 <INDEX_SEARCH_HOME>/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
|
Zookeeper 노드를 다시 시작할 때마다 urlScheme 명령을 실행해야 합니다.
|
2. Solr 클라우드(Zookeeper 노드 및 Solr 노드)를 다시 시작한 다음 Solr 관리 인터페이스로 이동하여 Solr이 SSL과 함께 실행 중인지 확인합니다.
|
SSL의 알려진 문제의 경우 다음 사이트를 참조하십시오.
|