Sanal ana makineler ve yönlendiricilerde şifre paketlerini yapılandırma

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Bu belgede, Apigee Edge'deki sanal ana makine ve yönlendiricilerde şifreleme paketlerinin nasıl yapılandırılacağı açıklanmaktadır.

Şifre paketi, TLS kullanılan ağ bağlantılarının güvenliğini sağlamaya yardımcı olan bir algoritma grubudur. İstemci ve sunucu, ileti alışverişinde kullanılacak şifreleme paketi konusunda anlaşmalıdır. İstemci ve sunucu bir şifreleme paketi üzerinde anlaşmazsa istekler TLS el sıkışması hatalarıyla başarısız olur.

Apigee'de şifreleme paketleri, istemci uygulamaları ve yönlendiriciler arasında karşılıklı olarak kabul edilmelidir.

Aşağıdaki nedenlerle Apigee Edge'deki şifreleme paketlerini değiştirmek isteyebilirsiniz:

  • İstemci uygulamaları ile Apigee yönlendiricileri arasında şifreleme paketi uyuşmazlığı olmasını önlemek için
  • Güvenlik açıklarını düzeltmek veya güvenliği artırmak için daha güvenli şifreleme paketlerini kullanmak

Şifreleme paketleri, sanal ana makinelerde veya Apigee yönlendiricilerinde yapılandırılabilir. Apigee'nin hem sanal ana makinede hem de yönlendiricide yalnızca OpenSSL şifre dizeleri biçimindeki şifreleme paketlerini kabul ettiğini unutmayın. OpenSSL şifreleri kılavuz sayfası, ilgili spesifikasyondaki SSL veya TLS şifre paketlerini ve bunların OpenSSL karşılıklarını sağlar.

Örneğin:

TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 şifre paketini sanal ana makinede veya Apigee yönlendiricide yapılandırmak istiyorsanız OpenSSL şifreleri kılavuz sayfasından ilgili OpenSSL şifre dizesini belirlemeniz gerekir. TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 şifre paketi için OpenSSL şifre dizesi ECDHE-RSA-AES128-GCM-SHA256. şeklindedir. Bu nedenle, sanal ana makinede veya Apigee yönlendiricide şifre paketini yapılandırırken OpenSSL şifre dizesi ECDHE-RSA-AES128-GCM-SHA256'yi kullanmanız gerekir.

Başlamadan önce

Sanal ana makinelerde şifreleme paketlerini yapılandırma

Bu bölümde, bir kuruluş ve ortamla ilişkili sanal ana makinelere şifreleme paketlerinin nasıl yapılandırılacağı açıklanmaktadır. Şifreleme paketleri, sanal ana makine tarafından desteklenen şifreleme paketlerinin listesini temsil eden ssl_ciphers özelliği aracılığıyla sanal ana makinede yapılandırılabilir.

Apigee'nin desteklediği şifreleme paketlerinin listesi için Desteklenen şifreleme paketleri başlıklı makaleyi inceleyin.

Sanal ana makineyi aşağıdaki yöntemlerden birini kullanarak yapılandırabilirsiniz:

  • Edge kullanıcı arayüzünü kullanma
  • Edge API'yi kullanma

Edge kullanıcı arayüzünü kullanma

Sanal ana makineyi Edge kullanıcı arayüzünü kullanarak yapılandırmak için aşağıdakileri yapın:

  1. Edge kullanıcı arayüzüne giriş yapın.
  2. Yönetici > Sanal Ana Makineler'e gidin.
  3. Bu değişikliği yapmak istediğiniz belirli bir Ortam'ı seçin.
  4. Şifreleme paketlerini yapılandırmak istediğiniz sanal ana makineyi seçin.
  5. Özellikler bölümünde, Şifreler değerini iki nokta üst üste işaretiyle ayrılmış OpenSSL şifre dizeleri listesiyle güncelleyin.

    Örneğin, yalnızca TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 ve TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 şifre paketlerine izin vermek istiyorsanız aşağıdaki tabloda gösterildiği gibi OpenSSL ciphers manpage'den ilgili OpenSSL şifre dizelerini belirleyin:

    Şifre Paketi OpenSSL şifre dizesi
    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

    Aşağıdaki şekilde gösterildiği gibi, iki nokta üst üste ile ayrılmış OpenSSL şifre dizesini ekleyin:

    Şifre örneği

  6. Değişikliği kaydedin.

Edge API'yi kullanma

Edge API'yi kullanarak bir sanal ana makinede şifreleme paketlerini yapılandırmak için aşağıdakileri yapın:

  1. Aşağıda gösterildiği gibi Get virtual host API'yi kullanarak mevcut sanal ana makine yapılandırmasını alın:

    Herkese açık bulut kullanıcısı:

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

    Private Cloud kullanıcısı:

    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. Mevcut sanal ana makine yapılandırmasına ssl_ciphers özelliğini ekleyin. properties altındaki JSON yüküne uygun OpenSSL şifre dizeleriyle birlikte.

    Örneğin, yalnızca TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 ve TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 şifre paketlerine izin vermek istiyorsanız aşağıdaki tabloda gösterildiği gibi OpenSSL şifreleri kılavuz sayfasından ilgili OpenSSL şifre dizelerini belirleyin:

    Şifre Paketi OpenSSL şifre dizesi
    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

    Aşağıdaki properties kod bloğunu ekleyin:

    Güncellenen örnek sanal ana makine yapılandırması:

    {
      "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. Güncellenen sanal ana makine yapılandırmasını bir dosyaya kaydedin. Örneğin, virtualhost-payload.json.
  4. virtualhost yapılandırmasını, Sanal ana makineyi güncelleme API'sini kullanarak aşağıdaki şekilde güncelleyin:

    Herkese açık bulut kullanıcısı:

    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 kullanıcısı:

    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}

Desteklenen şifre paketleri

Apigee aşağıdaki şifre paketlerini destekler:

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

Sanal ana makinelerdeki şifreleme paketlerini doğrulama

Bu bölümde, Edge API kullanılarak şifreleme paketlerinin sanal ana makinede başarıyla değiştirilip değiştirilmediğinin nasıl doğrulanacağı açıklanmaktadır.

  1. Aşağıda gösterildiği gibi virtualhost yapılandırmasını almak için Get virtual host API'sini yürütün:

    Herkese açık bulut kullanıcısı:

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

    Private Cloud kullanıcısı:

    curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
  2. ssl_ciphers özelliğinin yeni değere ayarlandığını doğrulayın.

    Güncellenen örnek sanal ana makine yapılandırması:

    {
      "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
    }

    Yukarıdaki örnekte, ssl_ciphers değerinin yeni değerle ayarlandığını unutmayın.

  3. ssl_ciphers için hâlâ eski değeri görüyorsanız Sanal ana makinede şifreleme paketlerini yapılandırma başlıklı makalede belirtilen tüm adımları doğru şekilde uyguladığınızı doğrulayın. Herhangi bir adımı atladıysanız tüm adımları tekrar doğru şekilde uygulayın.
  4. Sanal ana makineye şifreleme paketlerini güncelleyemiyor veya ekleyemiyorsanız Apigee Edge Destek Ekibi ile iletişime geçin.

Yönlendiricilerde şifre paketlerini yapılandırma

Bu bölümde, yönlendiricilerde şifreleme paketlerinin nasıl yapılandırılacağı açıklanmaktadır. Şifreleme paketleri, iki nokta üst üste işaretiyle ayrılmış kabul edilen şifreleme paketlerini temsil eden conf_load_balancing_load.balancing.driver.server.ssl.ciphers Router özelliği aracılığıyla yapılandırılabilir.

Yönlendiricilerde şifreleme paketlerini yapılandırmak için aşağıdakileri yapın:

  1. Yönlendirici makinesinde aşağıdaki dosyayı bir düzenleyicide açın. Henüz yoksa oluşturun.

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

    Örneğin, dosyayı vi ile açmak için: şunu girin:

    vi /opt/apigee/customer/application/router.properties
  2. properties dosyasında aşağıdaki biçimde bir satır ekleyin ve colon_separated_cipher_suites yerine bir değer girin:
    conf_load_balancing_load.balancing.driver.server.ssl.ciphers=colon_separated_cipher_suites

    Örneğin, yalnızca TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 ve TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 şifre paketlerine izin vermek istiyorsanız aşağıdaki tabloda gösterildiği gibi OpenSSL ciphers manpage'den ilgili OpenSSL şifre dizelerini belirleyin:

    Şifre Paketi OpenSSL şifre dizesi
    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

    Ardından aşağıdaki satırı ekleyin:

    conf_load_balancing_load.balancing.driver.server.ssl.ciphers=DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
  3. Değişikliklerinizi kaydedin.
  4. Bu özellikler dosyasının, aşağıda gösterildiği gibi apigee kullanıcısına ait olduğundan emin olun:
    chown apigee:apigee /opt/apigee/customer/application/router.properties
  5. Yönlendiriciyi aşağıda gösterildiği gibi yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  6. Birden fazla yönlendiriciniz varsa yukarıdaki adımları tüm yönlendiricilerde tekrarlayın.

Yönlendiricilerde şifre paketini doğrulama

Bu bölümde, şifreleme paketlerinin yönlendiricilerde başarıyla değiştirilip değiştirilmediğini nasıl doğrulayacağınız açıklanmaktadır.

  1. Yönlendiricide, conf_load_balancing_load.balancing.driver.server.ssl.ciphers klasöründeki Apigee arama yardımcı programını kullanarak özelliği arayın /opt/apigee ve yeni değerle ayarlanıp ayarlanmadığını aşağıdaki şekilde kontrol edin:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.server.ssl.ciphers
  2. Yeni şifreleme paketleri yönlendiricide başarıyla ayarlanırsa yukarıdaki komut yeni değerleri gösterir.

    Aşağıda, şifreleme paketleri DHE-RSA-AES128-GCM-SHA256 ve ECDHE-RSA-AES128-GCM-SHA256 olarak güncellendiğinde yukarıdaki search komutunun örnek sonucu verilmiştir:

    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

    Yukarıdaki örnek çıktıda, conf_load_balancing_load.balancing.driver.server.ssl.ciphers özelliğinin yeni şifreleme paketi değerleriyle ayarlandığını unutmayın. Bu, şifre paketinin yönlendiricide OpenSSL şifre dizeleri DHE-RSA-AES128-GCM-SHA25 ve ECDHE-RSA-AES128-GCM-SHA256 olarak başarıyla güncellendiğini gösterir.

  3. Şifreleme paketleri için hâlâ eski değerleri görüyorsanız conf_load_balancing_load.balancing.driver.server.ssl.ciphers, Yönlendiricilerde şifreleme paketlerini yapılandırma başlıklı makalede belirtilen tüm adımları doğru şekilde uyguladığınızı doğrulayın. Herhangi bir adımı atladıysanız tüm adımları tekrar doğru şekilde uygulayın.
  4. Yine de yönlendiricilerdeki şifreleme paketlerini değiştiremiyorsanız Apigee Edge Destek Ekibi ile iletişime geçin.