기타 구성 > ThingWorx Navigate에 SSL/TLS를 사용하기 위한 사전 요구 사항
  
ThingWorx Navigate에 SSL/TLS를 사용하기 위한 사전 요구 사항
이 항목의 정보는 ThingWorx Navigate를 설치 및 구성하는 데 필요한 키 저장소 및 신뢰 저장소 파일을 준비하는 데 도움이 됩니다. 설치를 시작하기 전에 항목을 자세히 읽어보고 설치 프로세스 중에도 필요하면 참조하십시오.
SSL 구성 소개
PTC에서는 제조 환경에 SSL(Secure Sockets Layer) 프로토콜 사용을 권장합니다. ThingWorx Navigate는 SSL을 사용하여 서버 간 상호 인증을 수행하고 커뮤니케이션 자체를 보호하는 두 가지 용도를 모두 실현할 수 있습니다.
HTTPS 구성을 위해서는 인증서를 사용해야 합니다. ThingWorx Navigate는 Java 공인 인증서를 요구합니다. Java 비공인 인증서를 사용할 경우, 해당 인증서를 신뢰하도록 Java를 구성해야 합니다. Verisign 및 Thawte와 같은 타사 공급업체에서 제공하는 인증서는 Java에서 신뢰하는 공인 인증서입니다.
SSL 구성은 상황마다 크게 다르며 여기에서는 SSL 구성에 사용할 수 있는 모든 옵션에 대해 설명하지 않습니다. 여기서 설명하는 지침에 따르면 상황에 맞는 HTTPS를 최소한의 노력으로 구현할 수 있을 것입니다.
ThingWorx Navigate는 다양한 구성과 인증 방식을 지원합니다. 따라서, ThingWorx Navigate 설치 설치 도구와 ThingWorx Navigate 구성 도구를 사용하기 전에 다양한 인증서, 키 저장소 및 신뢰 저장소 파일을 작성해 두어야 합니다.
아래 단락에서는 Java의 keytool 유틸리티를 사용하여 키 저장소 및 신뢰 저장소 파일을 생성하는 일반적인 단계를 설명합니다. 설치 및 구성 절차에는 각 단계마다 정확히 어떤 키 저장소 또는 신뢰 저장소 파일이 필요한지에 대한 정보가 제공됩니다. 파일 생성에 관한 일반 지침을 보려면 이 항목을 다시 참조하십시오.
* 
신뢰 저장소 및 키 저장소 파일의 암호를 설정할 때 암호에 문자와 숫자만 포함해야 합니다. 특수 문자는 지원되지 않습니다.
이러한 파일들을 보안 방식으로 생성하려면 현재 시장에서 제공되고 있는 다양한 옵션에는 어떤 것들이 있는지 조사하십시오. PTC에서는 인증서, 사용자가 생성하는 키 저장소 및 신뢰 저장소 파일의 보안에 대한 책임을 지지 않습니다.
자체 서명된 인증서를 사용하여 SSL 기반 연결을 수락하는 키 저장소 파일 생성
시작하기 전에, 경로에 Java keytool 유틸리티가 있는지 확인하십시오. 그런 다음 아래 단계를 따라 공개/개인 키 쌍이 있는 새 키 저장소 파일을 생성합니다.
* 
아래 단계에서는 관리자로 명령 프롬프트를 실행해야 합니다. 그렇지 않으면 다음 오류가 나타날 수 있습니다.
keytool error: java.io.FileNotFoundException: tomcat.keystore (Access is denied)
1. 키 저장소에 대한 디렉터리를 선택하고 이 디렉터리에 저장합니다. 예: D:\Certificates.
2. 명령 프롬프트를 열고 다음 명령을 사용하여 Java 설치 폴더로 이동합니다.
cd %JAVA_HOME%/bin
3. 아래 명령을 실행하여 인증서의 개인 키가 포함된 키 저장소를 생성합니다.
keytool -genkey -alias testKeyStore -keyalg rsa -dname "CN=<transport cert, application cert, or client authentication>" -keystore KeyStore.jks -storetype JKS
키 저장소 파일의 암호와 개인 키의 암호를 작성하라는 메시지가 표시됩니다. 두 곳에 동일한 암호를 사용하십시오.
* 
사용자의 환경에 따라 -dname 인수의 값을 변경합니다.
사용하는 인증서의 유형에 따라 CN의 값을 제공합니다.
Transport Layer - 정규화된 호스트 이름을 제공합니다. 예를 들면 다음과 같습니다. <hostname.domain.com>
Application Layer 또는 Client Authentication - 적합한 이름을 제공합니다. 예를 들면 다음과 같습니다. ThingWorx
4. 아래 명령을 사용하여 키에 대한 자체 서명된 인증서를 생성합니다. 키 저장소 암호를 요청하는 메시지가 표시되면 단계 3에서 작성한 암호를 입력합니다.
keytool -selfcert -alias testKeyStore -validity 1825 -keystore KeyStore.jks -storetype JKS
5. 이 명령을 사용하여 새 인증서에 대한 공개 키를 내보냅니다.
keytool -export -alias testKeyStore -file testKeyStore.cer -rfc -keystore KeyStore.jks -storetype JKS
사용자가 생성한 키 저장소 파일에는 이와 연관된 개인 키가 있습니다.
신뢰 저장소 파일 생성
아래 명령을 사용하여 새 신뢰 저장소를 만들고 여기에 서버 인증서를 가져옵니다.
keytool -import -alias testtrustStore -file server.cer -keystore TrustStore.jks -storetype JKS
인증서를 신뢰할 것인지 물으면 yes를 입력합니다.
자세한 내용은 이 기술 지원 문서를 참조하십시오. 이 문서는 Windows에 SSL/TLS 1.2를 설정할 때도 도움이 됩니다.