에지용 온프레미스 TLS/SSL 구성

Private Cloud용 Edge v. 4.16.09

TLS(전송 계층 보안(이전 명칭 SSL))는 앱부터 Apigee Edge, 백엔드 서비스까지 API 환경 전반에서 안전하고 암호화된 메시지를 보장하기 위한 표준 보안 기술입니다.

예를 들어 관리 API 앞에 프록시, 라우터, 부하 분산기를 사용하는지 여부와 관계없이 관리 API의 환경 구성에 관계없이 Edge를 사용하면 TLS를 사용 설정하고 구성하여 온프레미스 API 관리 환경에서 메시지 암호화를 제어할 수 있습니다.

Edge Private Cloud의 온프레미스 설치의 경우 여러 위치에서 TLS를 구성할 수 있습니다.

  1. 라우터와 메시지 프로세서 사이
  2. Edge Management API에 액세스
  3. 에지 관리 UI에 액세스하려는 경우
  4. 앱에서 API로 액세스
  5. Edge에서 백엔드 서비스로 액세스

처음 3개 항목에 TLS를 구성하는 방법은 아래와 같습니다. 이 모든 절차에서는 TLS 인증서 및 비공개 키가 포함된 JKS 파일을 만들었다고 가정합니다.

앱에서 API로 액세스하기 위해 TLS를 구성하려면 위의 4번을 Private Cloud용 API에 대한 TLS 액세스 구성을 참조하세요. Edge에서 백엔드 서비스로 액세스하기 위해 TLS를 구성하려면 위의 5번을 참조하세요. Edge에서 백엔드로 TLS 구성 (클라우드 및 프라이빗 클라우드)을 참조하세요.

Edge에서 TLS를 구성하는 방법에 대한 전체 개요는 TLS/SSL을 참조하세요.

JKS 파일 만들기

키 저장소는 JKS 파일로 표시되며, 여기서 키 저장소에는 TLS 인증서와 비공개 키가 포함됩니다. 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 파일의 기존 비밀번호를 입력하라는 메시지가 표시됩니다. PKCS12 파일에 사용한 것과 동일한 비밀번호를 JKS 파일에 사용해야 합니다.

라우터와 메시지 프로세서 간에 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 파일을 사용하여 자바에서 난독화된 비밀번호를 생성할 수 있습니다. 다음 형식의 명령어를 사용하여 난독화된 비밀번호를 생성합니다.

> 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에서 지정한 난독화된 비밀번호를 사용합니다.

자세한 내용은 이 도움말을 참고하세요.