Management API의 TLS 구성

기본적으로 관리 API에는 TLS가 사용 중지되어 있으며 사용자는 다음을 통해 Edge 관리 API에 액세스합니다. 관리 서버 노드의 IP 주소와 포트 8080을 사용한 HTTP. 예를 들면 다음과 같습니다.

http://ms_IP:8080

또는 다음 위치에서 액세스할 수 있도록 관리 API에 대한 TLS 액세스를 구성할 수 있습니다. 양식:

https://ms_IP:8443

이 예시에서는 포트 8443을 사용하도록 TLS 액세스를 구성합니다. 그러나 해당 포트 번호는 다른 포트 값을 사용하도록 관리 서버를 구성할 수 있습니다. 유일한 방화벽이 지정된 포트를 통한 트래픽을 허용해야 합니다.

관리 API를 오가는 트래픽 암호화를 보장하려면 /opt/apigee/customer/application/management-server.properties 파일에서 참조됩니다.

TLS 구성 외에도 비밀번호 유효성 확인 (비밀번호 길이)을 제어할 수 있습니다. 및 강도)을 management-server.properties 파일을 수정하여 사용합니다.

TLS 포트가 열려 있는지 확인하세요.

이 섹션의 절차는 관리 서버에서 포트 8443을 사용하도록 TLS를 구성합니다. 사용하는 포트와 관계없이 관리에서 포트가 열려 있는지 확인해야 합니다. 서버. 예를 들어 다음 명령어를 사용하여 파일을 열 수 있습니다.

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose
드림

TLS 구성

/opt/apigee/customer/application/management-server.properties 수정 파일을 사용하여 관리 API를 오가는 트래픽에 대한 TLS 사용을 제어합니다. 이 파일이 없으면 만듭니다

Management API에 대한 TLS 액세스를 구성하려면 다음 단계를 따르세요.

  1. TLS 인증서와 비공개 키가 포함된 키 저장소 JKS 파일을 생성합니다. 자세한 내용은 Edge 온프레미스용 TLS/SSL 구성을 참조하세요.
  2. 키 저장소 JKS 파일을 관리 서버 노드의 디렉터리(예: /opt/apigee/customer/application 형식으로 전송합니다.
  3. JKS 파일의 소유권을 'Apigee'로 변경 사용자:
    chown apigee:apigee keystore.jks

    여기서 keystore.jks은 키 저장소 파일의 이름입니다.

  4. /opt/apigee/customer/application/management-server.properties 수정 다음과 같은 속성을 설정합니다. 해당 파일이 없으면 다음과 같이 만듭니다.
    conf_webserver_ssl.enabled=true
    # Leave conf_webserver_http.turn.off set to false
    # because many Edge internal calls use HTTP.
    conf_webserver_http.turn.off=false
    conf_webserver_ssl.port=8443
    conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
    # Enter the obfuscated keystore password below.
    conf_webserver_keystore.password=OBF:obfuscatedPassword

    여기서 keyStore.jks는 키 저장소 파일입니다. obfuscatedPassword는 난독화된 키 저장소 비밀번호입니다. 자세한 내용은 Edge 온프레미스용 TLS/SSL 구성 난독화된 비밀번호 생성에 대한 정보를 제공합니다.

  5. 다음 명령어를 사용하여 에지 관리 서버를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

이제 관리 API에서 TLS를 통한 액세스를 지원합니다.

TLS를 사용하여 액세스하도록 Edge UI를 구성합니다. Edge API

위 절차에서 Apigee는 이렇게 하면 conf_webserver_http.turn.off=false Edge UI는 HTTP를 통해 Edge API를 계속 호출할 수 있습니다.

다음 절차에 따라 HTTPS를 통해서만 이러한 호출을 하도록 Edge UI를 구성합니다.

  1. 위에 설명된 대로 관리 API에 대한 TLS 액세스를 구성합니다.
  2. 관리 API에서 TLS가 작동하는지 확인한 후 다음을 수정합니다. /opt/apigee/customer/application/management-server.properties부터 다음 속성을 설정합니다.
    conf_webserver_http.turn.off=true
  3. 다음 명령어를 실행하여 에지 관리 서버를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart 
  4. /opt/apigee/customer/application/ui.properties 수정 다음과 같이 Edge UI 속성을 설정하세요.
    conf_apigee_apigee.mgmt.baseurl="https://FQ_domain_name:port/v1"

    여기서 FQ_domain_name은 인증서에 따른 전체 도메인 이름입니다. 주소이고 portconf_webserver_ssl.port입니다.

    ui.properties가 없으면 새로 만듭니다.

  5. 자체 서명 인증서를 사용한 경우만 해당 (프로덕션에서는 권장되지 않음) 환경)의 관리 API에 대한 TLS 액세스를 구성할 때 다음 속성을 ui.properties에 추가합니다.
    conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true

    그렇지 않으면 Edge UI가 자체 서명 인증서를 거부합니다.

  6. 다음 명령어를 실행하여 Edge UI를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

관리 서버의 TLS 속성

다음 표에는 설정할 수 있는 모든 TLS/SSL 속성이 나열되어 있습니다. management-server.properties:

속성 설명

conf_webserver_http.port=8080

기본값은 8080입니다.

conf_webserver_ssl.enabled=false

TLS/SSL을 사용 설정/사용 중지합니다. TLS/SSL이 사용 설정된 경우 (true) ssl.port도 설정해야 합니다. 및 keystore.path 속성을 정의합니다.

conf_webserver_http.turn.off=true

https와 함께 http를 사용/사용 중지하려면 다음 단계를 따르세요. HTTPS만 사용하려면 기본값은 true입니다.

conf_webserver_ssl.port=8443

TLS/SSL 포트

TLS/SSL이 사용 설정된 경우 (conf_webserver_ssl.enabled=true) 필요합니다.

conf_webserver_keystore.path=path

키 저장소 파일의 경로입니다.

TLS/SSL이 사용 설정된 경우 (conf_webserver_ssl.enabled=true) 필요합니다.

conf_webserver_keystore.password=password

OBF:xxxxxxxxxx 형식의 난독화된 비밀번호를 사용하세요.

conf_webserver_cert.alias=alias

키 저장소 인증서 별칭(선택사항)

conf_webserver_keymanager.password=password

키 관리자에 비밀번호가 있는 경우, 키 관리자에게 비밀번호의 난독화된 버전을 형식:

OBF:xxxxxxxxxx

conf_webserver_trust.all=[false | true]

conf_webserver_trust.store.path=path

conf_webserver_trust.store.password=password

트러스트 저장소 설정을 구성합니다. 모두 수락할지 여부 결정 TLS/SSL 인증서 (예: 비표준 유형 허용) 기본값은 false입니다. 경로 제공 을 다운로드하고 난독화된 트러스트 저장소 비밀번호를 다음 형식으로 입력합니다.

OBF:xxxxxxxxxx

conf_http_HTTPTransport.ssl.cipher.suites.blacklist=CIPHER_SUITE_1, CIPHER_SUITE_2

conf_http_HTTPTransport.ssl.cipher.suites.whitelist=

포함하거나 제외할 암호화 스위트를 표시합니다. 예를 들어 여기에서 제외할 수 있습니다 여러 암호화 분리 쉼표를 사용합니다.

블랙리스트를 통해 삭제한 모든 암호화는 포함된 암호화보다 우선합니다. 제품 관리 서비스를 제공합니다.

참고: 기본적으로 차단 목록 또는 허용 목록을 지정하지 않으면 다음 Java 정규 표현식은 기본적으로 제외됩니다.

^.*_(MD5|SHA|SHA1)$
^TLS_RSA_.*$
^SSL_.*$
^.*_NULL_.*$
^.*_anon_.*$

그러나 블랙리스트를 지정하면 이 필터가 재정의되었으며 모든 암호화를 개별적으로 차단 목록에 추가해야 합니다.

암호 묶음 및 암호화 아키텍처에 관한 자세한 내용은 다음을 참고하세요. <ph type="x-smartling-placeholder"></ph> JDK 8의 Java 암호화 아키텍처 Oracle 제공업체 문서

conf_webserver_ssl.session.cache.size=

conf_webserver_ssl.session.timeout=

다음을 결정하는 정수:

  • 다음에 대한 세션 정보를 저장하기 위한 TLS/SSL 세션 캐시 크기 (바이트 단위) 여러 클라이언트를 지원합니다
  • TLS/SSL 세션이 시간 초과되기 전까지 지속될 수 있는 시간( 밀리초)