Private Cloud용 Edge v. 4.16.09
TLS (전송 계층 보안, 전신 SSL)는 앱에서 Apigee Edge, 백엔드 서비스에 이르기까지 API 환경 전반에서 안전하고 암호화된 메시징을 보장하기 위한 표준 보안 기술입니다.
관리 API의 환경 구성 (예: 관리 API 앞에 프록시, 라우터, 부하 분산기를 사용하는지 여부)과 관계없이 Edge를 사용하면 TLS를 사용 설정하고 구성하여 온프레미스 API 관리 환경에서 메시지 암호화를 제어할 수 있습니다.
Edge Private Cloud의 온프레미스 설치의 경우 TLS를 구성할 수 있는 위치는 다음과 같습니다.
- 라우터와 메시지 프로세서 간
- Edge Management API 액세스용
- Edge 관리 UI에 대한 액세스
- 앱에서 API에 액세스하는 경우
- Edge에서 백엔드 서비스에 액세스하기 위해
처음 세 항목에 대한 TLS 구성은 아래에 설명되어 있습니다. 이 모든 절차에서는 TLS 인증서와 비공개 키가 포함된 JKS 파일을 만들었다고 가정합니다.
앱에서 API에 액세스할 수 있도록 TLS를 구성하려면 위의 4번을 참고하고 프라이빗 클라우드의 API에 대한 TLS 액세스 구성을 참고하세요. Edge에서 백엔드 서비스로 액세스하기 위해 TLS를 구성하려면 위의 5번 Edge에서 백엔드 (Cloud 및 Private Cloud)로 TLS 구성을 참조하세요.
Edge에서 TLS를 구성하는 방법에 관한 전체 개요는 TLS/SSL을 참고하세요.
JKS 파일 만들기
키 저장소는 TLS 인증서와 비공개 키가 포함된 JKS 파일로 나타냅니다. JKS 파일을 만드는 방법에는 여러 가지가 있지만 그중 하나는 openssl 및 keytool 유틸리티를 사용하는 것입니다.
예를 들어 TLS 인증서가 포함된 server.pem이라는 PEM 파일과 비공개 키를 포함하는 private_key.pem이라는 이름의 PEM 파일이 있다고 가정해 보겠습니다. 다음 명령어를 사용하여 PKCS12 파일을 만듭니다.
> openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12
키에 암호가 있는 경우 암호와 내보내기 비밀번호를 입력해야 합니다. 이 명령어는 keystore.pkcs12라는 이름의 PKCS12 파일을 생성합니다.
다음 명령어를 사용하여 keystore.jks라는 JKS 파일로 변환합니다.
> keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks
JKS 파일의 새 비밀번호와 PKCS12 파일의 기존 비밀번호를 입력하라는 메시지가 표시됩니다. JKS 파일에는 PKCS12 파일에 사용한 것과 동일한 비밀번호를 사용해야 합니다.
라우터와 메시지 프로세서 간에 TLS를 구성할 때와 같이 키 별칭을 지정해야 하는 경우 openssl 명령어에 '-name" 옵션을 포함합니다.
> openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12 -name devtest
그런 다음 keytool 명령어에 '-alias' 옵션을 포함합니다.
> keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks -alias devtest
난독화된 비밀번호 생성
Edge TLS 구성 절차의 일부에서는 구성 파일에 난독화된 비밀번호를 입력해야 합니다. 난독화된 비밀번호는 일반 텍스트로 비밀번호를 입력하는 것보다 안전한 대안입니다.
Edge와 함께 설치된 Jetty .jar 파일을 사용하여 Java에서 난독화된 비밀번호를 생성할 수 있습니다. 다음 형식의 명령어를 사용하여 난독화된 비밀번호를 생성합니다.
> IFS= read -rsp Password: passvar; echo; java -cp "/opt/apigee/edge-gateway/lib/thirdparty/*" org.eclipse.jetty.util.security.Password $passvar 2>&1 |tail -2; unset passvar
메시지가 표시되면 새 비밀번호를 입력합니다. 보안상의 이유로 비밀번호 텍스트는 표시되지 않습니다. 이 명령어는 다음 형식으로 비밀번호를 반환합니다.
OBF:58fh40h61svy156789gk1saj MD5:902fobg9d80e6043b394cb2314e9c6
TLS를 구성할 때 OBF에서 지정한 난독화된 비밀번호를 사용합니다.
자세한 내용은 이 도움말을 참고하세요.