가상 호스트 및 라우터에서 암호화 스위트 구성

<ph type="x-smartling-placeholder"></ph> 현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서.
정보

<ph type="x-smartling-placeholder">

이 문서에서는 Apigee Edge의 가상 호스트 및 라우터에 암호화 모음을 구성하는 방법을 설명합니다.

암호화 스위트는 TLS를 사용하는 네트워크 연결을 보호하는 알고리즘 집합입니다. 클라이언트와 서버는 사용될 특정 암호화 제품군에 동의해야 합니다. 도움이 됩니다. 클라이언트와 서버가 암호화 제품군에 동의하지 않으면 요청이 실패하고 TLS 핸드셰이크 실패가 발생합니다.

Apigee에서 암호화 스위트는 클라이언트 애플리케이션 및 라우터.

다음과 같은 이유로 Apigee Edge의 암호화 스위트를 수정해야 할 수 있습니다.

  • 클라이언트 애플리케이션과 Apigee 라우터 간의 암호화 스위트 불일치를 방지하기 위해
  • 보안 취약점을 수정하거나 보안을 강화하기 위해 더 안전한 암호화 스위트 사용

가상 호스트 또는 Apigee 라우터에서 암호화 스위트를 구성할 수 있습니다. 참고 OpenSSL 암호화 문자열 형식으로만 암호화 스위트를 가상 호스트와 라우터 모두입니다. 이 OpenSSL 암호화 설명 페이지 관련 사양 및 OpenSSL의 동등한 SSL 또는 TLS 암호화 스위트를 제공합니다.

예를 들면 다음과 같습니다.

TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 암호화를 구성하려는 경우 Apigee 라우터에서 사용할 수 있는 경우 해당 OpenSSL 암호화 문자열을 OpenSSL 암호화 설명 페이지 암호화 스위트 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256의 OpenSSL 암호화 문자열입니다. ECDHE-RSA-AES128-GCM-SHA256.이므로 OpenSSL 암호화 문자열을 사용해야 합니다. 가상 호스트에서 암호화 스위트를 구성하는 동안 ECDHE-RSA-AES128-GCM-SHA256 또는 Apigee Router에서 제공할 수 있습니다

시작하기 전에

가상 호스트에서 암호화 스위트 구성

이 섹션에서는 조직 및 환경과 연결된 가상 호스트에 암호화 스위트를 구성하는 방법을 설명합니다. 가상 호스트에서 지원하는 암호화 스위트 목록을 나타내는 속성 ssl_ciphers를 통해 암호화 스위트를 가상 호스트에 구성할 수 있습니다.

암호화 목록은 지원되는 암호화 스위트를 참고하세요. API 모음을 제공합니다

다음 방법 중 하나를 사용하여 가상 호스트를 구성할 수 있습니다.

  • Edge UI 사용
  • Edge API 사용
를 통해 개인정보처리방침을 정의할 수 있습니다. <ph type="x-smartling-placeholder">

Edge UI 사용

<ph type="x-smartling-placeholder">

Edge UI를 사용하여 가상 호스트를 구성하려면 다음 안내를 따르세요.

  1. Edge UI에 로그인합니다.
  2. 관리 > 가상 호스트로 이동합니다.
  3. 변경하려는 특정 환경을 선택합니다.
  4. 암호화 스위트를 구성할 특정 가상 호스트를 선택하세요.
  5. 속성에서 Ciphers 값을 콜론으로 구분된 OpenSSL 암호화 문자열 목록으로 업데이트합니다.

    예를 들어 암호화 스위트만 허용하려는 경우 TLS_DHE_RSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256로 설정한 다음 해당하는 OpenSSL 암호화 문자열은 OpenSSL 암호화 설명 페이지 아래 표에 나와 있습니다.

    암호화 스위트 OpenSSL 암호화 문자열
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    다음 그림과 같이 콜론으로 구분하여 OpenSSL 암호화 문자열을 추가합니다.

    암호화의 예

  6. 변경사항을 저장합니다.

Edge API 사용

Edge API를 사용하여 가상 호스트에서 암호화 스위트를 구성하려면 다음 단계를 따르세요.

  1. 다음을 사용하여 현재 가상 호스트 구성을 가져옵니다. <ph type="x-smartling-placeholder"></ph> 아래와 같이 가상 호스트 API를 가져옵니다.

    퍼블릭 클라우드 사용자:

    curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    

    Private Cloud 사용자:

    curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    
    {
      "hostAliases": [
        "api.myCompany,com"
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    
  2. 기존 가상 호스트 구성에 ssl_ciphers 속성을 추가합니다. 적절한 OpenSSL 암호화 문자열이 있는 properties 아래의 JSON 페이로드

    예를 들어 암호화 스위트만 허용하려는 경우 TLS_DHE_RSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256로 설정한 다음 해당하는 OpenSSL 암호화 문자열은 OpenSSL 암호화 설명 페이지 아래 표에 나와 있습니다.

    암호화 스위트 OpenSSL 암호화 문자열
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    다음 properties 코드 블록을 추가합니다.

    업데이트된 가상 호스트 구성 샘플:

    {
      "hostAliases": [
        "api.myCompany,com",
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "properties": {
        "property": [
          {
            "name": "ssl_ciphers",
            "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256"
          }
        ]
      },
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    
  3. 업데이트된 가상 호스트 구성을 파일에 저장합니다. 예를 들면 virtualhost-payload.json입니다.
  4. 다음을 사용하여 virtualhost 구성을 변경사항으로 업데이트합니다. <ph type="x-smartling-placeholder"></ph> 가상 호스트 API를 다음과 같이 업데이트합니다.

    퍼블릭 클라우드 사용자:

    curl -v -X POST Content-Type: application/json
    https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
    

    Private Cloud 사용자:

    curl -v -X POST Content-Type: application/json
    http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
    

지원되는 암호화 스위트

Apigee는 다음 암호화 스위트를 지원합니다.

ECDHE-RSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-SHA384
ECDHE-RSA-AES256-SHA
DHE-RSA-AES256-GCM-SHA384
DHE-RSA-AES256-SHA256
DHE-RSA-AES256-SHA
DHE-RSA-CAMELLIA256-SHA
AES256-GCM-SHA384
AES256-SHA256  
AES256-SHA
CAMELLIA256-SHA
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-RSA-AES128-SHA256
ECDHE-RSA-AES128-SHA
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES128-SHA256
DHE-RSA-AES128-SHA
DHE-RSA-CAMELLIA128-SHA
AES128-GCM-SHA256
AES128-SHA256   
AES128-SHA 
CAMELLIA128-SHA

가상 호스트의 암호화 스위트 확인

이 섹션에서는 암호화 스위트가 성공적으로 설정되었는지 확인하는 방법을 설명합니다. Edge API를 사용하여 가상 호스트에서 수정됩니다.

<ph type="x-smartling-placeholder">
  1. 다음을 실행합니다. <ph type="x-smartling-placeholder"></ph> 가상 호스트 API를 가져와서 아래와 같이 virtualhost 구성을 가져옵니다.

    퍼블릭 클라우드 사용자:

    curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    

    Private Cloud 사용자:

    curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
    
  2. ssl_ciphers 속성이 새 값으로 설정되었는지 확인합니다.

    업데이트된 가상 호스트 구성 샘플:

    {
      "hostAliases": [
        "api.myCompany,com",
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "properties": {
        "property": [
          {
            "name": "ssl_ciphers",
            "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256"
          }
        ]
      },
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    

    위의 예에서는 ssl_ciphers가 새 값으로 설정되었습니다.

  3. ssl_ciphers의 이전 값이 계속 표시되면 여기에 설명된 모든 단계를 따랐습니다. 가상 호스트에서 암호화 스위트를 올바르게 구성합니다. 놓친 단계가 있으면 모든 단계를 올바르게 다시 반복합니다.
  4. 그래도 가상 호스트에 암호화 스위트를 업데이트하거나 추가할 수 없으면 Apigee Edge 지원

라우터에서 암호화 스위트 구성

<ph type="x-smartling-placeholder">

이 섹션에서는 라우터에서 암호화 스위트를 구성하는 방법을 설명합니다. 암호화 스위트는 라우터 속성을 통해 구성됨 conf_load_balancing_load.balancing.driver.server.ssl.ciphers는 다음을 나타냅니다. 암호화 스위트입니다.

<ph type="x-smartling-placeholder">

라우터에서 암호화 스위트를 구성하려면 다음 단계를 따르세요.

  1. 라우터 머신의 편집기에서 다음 파일을 엽니다. 존재하지 않는 경우 만듭니다.

    /opt/apigee/customer/application/router.properties
    

    예를 들어 vi로 파일을 열려면 다음과 같이 합니다. 다음을 입력합니다.

    vi /opt/apigee/customer/application/router.properties
    
  2. properties 파일에 다음 형식의 줄을 추가하여 colon_separated_cipher_suites 값:
    conf_load_balancing_load.balancing.driver.server.ssl.ciphers=colon_separated_cipher_suites
    

    예를 들어 암호화 스위트만 허용하려는 경우 TLS_DHE_RSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256로 설정한 다음 해당하는 OpenSSL 암호화 문자열은 OpenSSL 암호화 설명 페이지 아래 표에 나와 있습니다.

    암호화 스위트 OpenSSL 암호화 문자열
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 DHE-RSA-AES128-GCM-SHA256
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256

    그리고 다음 줄을 추가합니다.

    conf_load_balancing_load.balancing.driver.server.ssl.ciphers=DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
    
  3. 변경사항을 저장합니다.
  4. 아래와 같이 이 속성 파일을 apigee 사용자가 소유하고 있는지 확인합니다.
    chown apigee:apigee /opt/apigee/customer/application/router.properties
    
  5. 아래와 같이 라우터를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    
  6. 라우터가 두 개 이상인 경우 모든 라우터에서 위 단계를 반복합니다.

라우터의 암호화 스위트 확인

<ph type="x-smartling-placeholder">

이 섹션에서는 라우터에서 암호화 스위트가 성공적으로 수정되었는지 확인하는 방법을 설명합니다.

  1. 라우터에서 속성을 검색합니다. Apigee를 사용하여 conf_load_balancing_load.balancing.driver.server.ssl.ciphers /opt/apigee 폴더의 검색 유틸리티를 검색하여 해당 유틸리티가 새 값을 다음과 같이 업데이트합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.server.ssl.ciphers
    
  2. 새 암호화 스위트가 라우터에 성공적으로 설정된 경우 위의 명령어는 새 값을 수정합니다.

    다음은 search 명령어를 실행했을 때 암호화 스위트가 DHE-RSA-AES128-GCM-SHA256로 업데이트되었고 ECDHE-RSA-AES128-GCM-SHA256:

    Found key conf_load_balancing_load.balancing.driver.server.ssl.ciphers, with value, DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256, in /opt/apigee/customer//application/router.properties
    

    위의 예시 출력에서 속성이 conf_load_balancing_load.balancing.driver.server.ssl.ciphers 설정됨 새 암호화 스위트 값으로 바꿉니다. 이는 암호화 스위트가 성공적으로 완료되었음을 나타냅니다. OpenSSL 암호화 문자열로 업데이트되며 DHE-RSA-AES128-GCM-SHA25 라우터의 ECDHE-RSA-AES128-GCM-SHA256.

  3. 암호화 스위트의 이전 값이 계속 표시되는 경우 conf_load_balancing_load.balancing.driver.server.ssl.ciphers 후 인증 아래에 설명된 모든 단계를 따랐는지 라우터에서 암호화 스위트를 올바르게 구성합니다. 놓친 단계가 있으면 모든 단계를 올바르게 다시 반복합니다.
  4. 그래도 라우터의 암호화 스위트를 수정할 수 없으면 Apigee Edge 지원