Management API için TLS'yi yapılandırma

Varsayılan olarak, yönetim API'si için TLS devre dışıdır ve Edge yönetim API'sine HTTP üzerinden, Yönetim Sunucusu düğümünün IP adresini ve 8080 bağlantı noktasını kullanarak erişirsiniz. Örneğin:

http://ms_IP:8080

Alternatif olarak, Management API'ye TLS erişimini şu biçimde erişebileceğiniz şekilde yapılandırabilirsiniz:

https://ms_IP:8443

Bu örnekte, TLS erişimini 8443 numaralı bağlantı noktasını kullanacak şekilde yapılandıracaksınız. Ancak bu bağlantı noktası numarası Edge için gerekli değildir. Yönetim Sunucusu'nu diğer bağlantı noktası değerlerini kullanacak şekilde yapılandırabilirsiniz. Tek şart, güvenlik duvarınızın belirtilen bağlantı noktası üzerinden trafiğe izin vermesidir.

Yönetim API'nize gelen ve giden trafiğin şifrelenmesini sağlamak için /opt/apigee/customer/application/management-server.properties dosyasındaki ayarları yapılandırın.

TLS yapılandırmasına ek olarak, management-server.properties dosyasını değiştirerek şifre doğrulamasını (şifre uzunluğu ve gücü) da kontrol edebilirsiniz.

TLS bağlantı noktanızın açık olduğundan emin olun

Bu bölümdeki prosedür, TLS'yi Yönetim Sunucusu'nda 8443 numaralı bağlantı noktasını kullanacak şekilde yapılandırır. Kullandığınız bağlantı noktasından bağımsız olarak, bağlantı noktasının Yönetim Sunucusu'nda açık olduğundan emin olmanız gerekir. Örneğin, açmak için aşağıdaki komutu kullanabilirsiniz:

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

TLS'yi yapılandırma

Yönetim API'nize gelen ve giden trafikte TLS kullanımını kontrol etmek için /opt/apigee/customer/application/management-server.properties dosyasını düzenleyin. Bu dosya yoksa oluşturun.

Yönetim API'sine TLS erişimini yapılandırmak için:

  1. TLS sertifikanızı ve özel anahtarınızı içeren anahtar deposu JKS dosyasını oluşturun. Daha fazla bilgi için Edge On Premises için TLS/SSL'yi yapılandırma başlıklı makaleyi inceleyin.
  2. Anahtar deposu JKS dosyasını, Yönetim Sunucusu düğümündeki bir dizine (ör. /opt/apigee/customer/application) kopyalayın.
  3. JKS dosyasının sahipliğini "apigee" kullanıcısına değiştirin:
    chown apigee:apigee keystore.jks

    keystore.jks, anahtar deposu dosyanızın adıdır.

  4. Aşağıdaki özellikleri ayarlamak için /opt/apigee/customer/application/management-server.properties dosyasını düzenleyin. Bu dosya yoksa oluşturun:
    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

    Burada keyStore.jks, anahtar deposu dosyanız, obfuscatedPassword ise gizlenmiş anahtar deposu şifrenizdir. Gizlenmiş şifre oluşturma hakkında bilgi için Edge On Premises için TLS/SSL'yi yapılandırma başlıklı makaleyi inceleyin.

  5. Aşağıdaki komutu kullanarak Edge Management Server'ı yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Yönetim API'si artık TLS üzerinden erişimi destekliyor.

Edge kullanıcı arayüzünü, Edge API'ye erişmek için TLS kullanacak şekilde yapılandırma

Yukarıdaki prosedürde Apigee, Edge kullanıcı arayüzünün HTTP üzerinden Edge API çağrıları yapmaya devam edebilmesi için conf_webserver_http.turn.off=false değerini bırakmanızı önerdi.

Edge kullanıcı arayüzünü bu çağrıları yalnızca HTTPS üzerinden yapacak şekilde yapılandırmak için aşağıdaki prosedürü uygulayın:

  1. Yönetim API'sine TLS erişimini yukarıda açıklandığı şekilde yapılandırın.
  2. TLS'nin Management API için çalıştığını onayladıktan sonra /opt/apigee/customer/application/management-server.properties dosyasını düzenleyerek aşağıdaki özelliği ayarlayın:
    conf_webserver_http.turn.off=true
  3. Aşağıdaki komutu çalıştırarak Edge Management Server'ı yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart 
  4. Edge kullanıcı arayüzü için aşağıdaki özelliği ayarlamak üzere /opt/apigee/customer/application/ui.properties dosyasını düzenleyin:
    conf_apigee_apigee.mgmt.baseurl="https://FQ_domain_name:port/v1"

    FQ_domain_name, Yönetim Sunucusu'nun sertifika adresine göre tam alan adıdır ve port, yukarıda conf_webserver_ssl.port tarafından belirtilen bağlantı noktasıdır.

    ui.properties dosyası yoksa oluşturun.

  5. Yalnızca yukarıda Management API'ye TLS erişimini yapılandırırken kendinden imzalı bir sertifika kullandıysanız (üretim ortamında önerilmez) ui.properties dosyasına aşağıdaki özelliği ekleyin:
    conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true

    Aksi takdirde Edge kullanıcı arayüzü, kendinden imzalı sertifikayı reddeder.

  6. Aşağıdaki komutu çalıştırarak Edge kullanıcı arayüzünü yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

Yönetim sunucusu için TLS özellikleri

Aşağıdaki tabloda, management-server.properties içinde ayarlayabileceğiniz tüm TLS/SSL özellikleri listelenmiştir:

Özellikler Açıklama

conf_webserver_http.port=8080

Varsayılan değer 8080'dir.

conf_webserver_ssl.enabled=false

TLS/SSL'yi etkinleştirmek veya devre dışı bırakmak için kullanılır. TLS/SSL etkinleştirildiğinde (true) ssl.port ve keystore.path özelliklerini de ayarlamanız gerekir.

conf_webserver_http.turn.off=true

https ile birlikte http'yi etkinleştirmek/devre dışı bırakmak için kullanılır. Yalnızca HTTPS kullanmak istiyorsanız varsayılan değeri true olarak bırakın.

conf_webserver_ssl.port=8443

TLS/SSL bağlantı noktası.

TLS/SSL etkinleştirildiğinde (conf_webserver_ssl.enabled=true) gereklidir.

conf_webserver_keystore.path=path

Anahtar deposu dosyanızın yolu.

TLS/SSL etkinleştirildiğinde (conf_webserver_ssl.enabled=true) gereklidir.

conf_webserver_keystore.password=password

Şu biçimde gizlenmiş bir şifre kullanın: OBF:xxxxxxxxxx

conf_webserver_cert.alias=alias

İsteğe bağlı anahtar deposu sertifikası takma adı

conf_webserver_keymanager.password=password

Anahtar yöneticinizin şifresi varsa şifrenin gizlenmiş bir sürümünü şu biçimde girin:

OBF:xxxxxxxxxx

conf_webserver_trust.all=[false | true]

conf_webserver_trust.store.path=path

conf_webserver_trust.store.password=password

Güvenilir sertifika deponuzun ayarlarını yapılandırın. Tüm TLS/SSL sertifikalarını kabul etmek isteyip istemediğinizi belirleyin (örneğin, standart olmayan türleri kabul etmek için). Varsayılan değer: false. Güvenilir sertifika deponuzun yolunu belirtin ve şu biçimde gizlenmiş bir güvenilir sertifika deposu şifresi girin:

OBF:xxxxxxxxxx

conf_webserver_exclude.cipher.suites=CIPHER_SUITE_1 CIPHER_SUITE_2

conf_webserver_include.cipher.suites=

Dahil etmek veya hariç tutmak istediğiniz şifreleme paketlerini belirtin. Örneğin, bir şifrede güvenlik açığı tespit ederseniz bu şifreyi buradan hariç tutabilirsiniz. Birden fazla şifreyi boşlukla ayırın.

Şifreleme paketleri ve şifreleme mimarisi hakkında bilgi edinmek için JDK 8 için Java Şifreleme Mimarisi Oracle Sağlayıcıları Belgeleri'ne bakın.

conf_webserver_ssl.session.cache.size=

conf_webserver_ssl.session.timeout=

Şunları belirleyen tam sayılar:

  • Birden fazla istemcinin oturum bilgilerini depolamak için TLS/SSL oturum önbelleği boyutu (bayt cinsinden).
  • TLS/SSL oturumlarının zaman aşımına uğramadan önce sürebileceği süre (milisaniye cinsinden).