Yönetim kullanıcı arayüzü için TLS'yi yapılandırma

Varsayılan olarak, Yönetim Sunucusu düğümünün ve bağlantı noktasının 9000 IP adresini kullanarak Edge kullanıcı arayüzüne HTTP üzerinden erişirsiniz. Örneğin:

http://ms_IP:9000

Alternatif olarak, Edge kullanıcı arayüzüne TLS erişimini yapılandırarak bu hizmete şu biçimde erişebilirsiniz:

https://ms_IP:9443

Bu örnekte, TLS erişimini 9443 bağlantı noktasını kullanacak şekilde yapılandırıyorsunuz. 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.

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

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

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

TLS'yi yapılandırın

Yönetim kullanıcı arayüzüne TLS erişimini yapılandırmak için aşağıdaki prosedürü kullanın:

  1. TLS sertifikanızı ve özel anahtarınızı içeren anahtar deposu JKS dosyasını oluşturun ve bu dosyayı Yönetim Sunucusu düğümüne kopyalayın. Daha fazla bilgi edinmek için Edge On Tesisler için TLS/SSL'yi yapılandırma başlıklı makaleye bakın.
  2. TLS'yi yapılandırmak için aşağıdaki komutu çalıştırın:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl
  3. HTTPS bağlantı noktası numarasını girin (örneğin, 9443).
  4. Yönetim kullanıcı arayüzüne HTTP erişimini devre dışı bırakmak isteyip istemediğinizi belirtin. Varsayılan olarak, yönetim kullanıcı arayüzüne 9000 bağlantı noktası üzerinden HTTP üzerinden erişilebilir.
  5. Anahtar deposu algoritmasını girin. Varsayılan değer JKS'dir.
  6. Anahtar deposu JKS dosyasının mutlak yolunu girin.

    Komut dosyası, dosyayı Yönetim Sunucusu düğümündeki /opt/apigee/customer/conf dizinine kopyalar ve dosyanın sahipliğini "Apigee" olarak değiştirir.

  7. Açık metin anahtar deposu şifresini girin.
  8. Daha sonra komut dosyası, Edge yönetim kullanıcı arayüzünü yeniden başlatır. Yeniden başlatma sonrasında yönetim kullanıcı arayüzü, TLS üzerinden erişimi destekler.

    Bu ayarları /opt/apigee/etc/edge-ui.d/SSL.sh bölümünde görebilirsiniz.

TLS'yi yapılandırmak için yapılandırma dosyası kullanma

Yukarıdaki prosedüre alternatif olarak, prosedürün 2. adımındaki komuta bir yapılandırma dosyası aktarabilirsiniz. İsteğe bağlı TLS özellikleri ayarlamak istiyorsanız bu yöntemi kullanmanız gerekir.

Yapılandırma dosyası kullanmak için yeni bir dosya oluşturun ve aşağıdaki özellikleri ekleyin:

HTTPSPORT=9443
DISABLE_HTTP=y
KEY_ALGO=JKS
KEY_FILE_PATH=/opt/apigee/customer/application/mykeystore.jks
KEY_PASS=clearTextKeystorePWord

Dosyayı istediğiniz adla yerel bir dizine kaydedin. Ardından TLS'yi yapılandırmak için aşağıdaki komutu kullanın:

/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile

Burada configFile, kaydettiğiniz dosyanın tam yoludur.

Yük dengeleyicide TLS sona erdiğinde Edge kullanıcı arayüzünü yapılandırın

İstekleri Edge kullanıcı arayüzüne yönlendiren bir yük dengeleyiciniz varsa yük dengeleyicideki TLS bağlantısını sonlandırmayı ve ardından yük dengeleyicinin istekleri HTTP üzerinden Edge kullanıcı arayüzüne yönlendirmesini sağlayabilirsiniz. Bu yapılandırma desteklenir ancak yük dengeleyiciyi ve Edge kullanıcı arayüzünü buna göre yapılandırmanız gerekir.

Kullanıcı oluşturulduğunda veya kullanıcı kaybedilen bir şifreyi sıfırlama isteğinde bulunduğunda Edge kullanıcı arayüzü kullanıcılara şifrelerini ayarlamaları için e-postalar gönderdiğinde ek yapılandırma gerekir. Bu e-posta, kullanıcının şifre belirlemek veya sıfırlamak için seçtiği bir URL'yi içerir. Varsayılan olarak, Edge kullanıcı arayüzü TLS kullanacak şekilde yapılandırılmamışsa oluşturulan e-postadaki URL, HTTPS yerine HTTP protokolünü kullanır. Yük dengeleyiciyi ve Edge kullanıcı arayüzünü, HTTPS kullanan bir e-posta adresi oluşturacak şekilde yapılandırmanız gerekir.

Yük dengeleyiciyi yapılandırmak için, Edge kullanıcı arayüzüne yönlendirilen isteklerde aşağıdaki üst bilgiyi ayarladığından emin olun:

X-Forwarded-Proto: https

Edge kullanıcı arayüzünü yapılandırmak için:

  1. /opt/apigee/customer/application/ui.properties dosyasını bir düzenleyicide açın. Dosya mevcut değilse oluşturun:
    vi /opt/apigee/customer/application/ui.properties
  2. ui.properties ürününde aşağıdaki özelliği ayarlayın:
    conf/application.conf+trustxforwarded=true
  3. ui.properties üzerinde yaptığınız değişiklikleri kaydedin.
  4. Edge kullanıcı arayüzünü yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

İsteğe bağlı TLS özelliklerini ayarlama

Edge kullanıcı arayüzü, aşağıdakileri ayarlamak için kullanabileceğiniz isteğe bağlı TLS yapılandırma özelliklerini destekler:

  • Varsayılan TLS protokolü
  • Desteklenen TLS protokollerinin listesi
  • Desteklenen TLS algoritmaları
  • Desteklenen TLS şifreleri

Bu isteğe bağlı parametreler, yalnızca TLS'yi yapılandırmak için yapılandırma dosyası kullanma bölümünde açıklandığı gibi, bir yapılandırma dosyasında aşağıdaki yapılandırma özelliğini ayarladığınızda kullanılabilir:

TLS_CONFIGURE=y

Aşağıdaki tabloda bu özellikler açıklanmaktadır:

Özellik Açıklama
TLS_PROTOCOL Edge kullanıcı arayüzü için varsayılan TLS protokolünü tanımlar. Varsayılan olarak TLS 1.2'dir. Geçerli değerler TLSv1.2, TLSv1.1, TLSv1'dir.
TLS_ENABLED_PROTOCOL

Etkin protokoller listesini virgülle ayrılmış dizi olarak tanımlar. Örneğin:

TLS_ENABLED_PROTOCOL=[\"TLSv1.2\", \"TLSv1.1\", \"TLSv1\"]

" karakterinden çıkış yapmanız gerektiğine dikkat edin.

Varsayılan olarak tüm protokoller etkindir.

TLS_DISABLED_ALGO

Devre dışı bırakılan şifre paketlerini tanımlar ve küçük anahtar boyutlarının TLS el sıkışmasında kullanılmasını önlemek için de kullanılabilir. Varsayılan değer yoktur.

TLS_DISABLED_ALGO öğesine iletilen değerler, burada açıklandığı gibi jdk.tls.disabledAlgorithms için izin verilen değerlere karşılık gelir. Ancak, TLS_DISABLED_ALGO ayarlanırken boşluk karakterlerine kaçışmanız gerekir:

TLS_DISABLED_ALGO=EC\ keySize\ <\ 160,RSA\ keySize\ <\ 2048

TLS_ENABLED_CIPHERS

Kullanılabilir TLS şifreleri listesini virgülle ayrılmış dizi olarak tanımlar. Örneğin:

TLS_ENABLED_CIPHERS=[\"TLS_DHE_RSA_WITH_AES_128_CBC_SHA\",
\"TLS_DHE_DSS_WITH_AES_128_CBC_SHA\"]

" karakterinden çıkış yapmanız gerektiğine dikkat edin.

Etkin şifrelerin varsayılan listesi şöyledir:

"TLS_DHE_RSA_WITH_AES_256_CBC_SHA",
"TLS_DHE_RSA_WITH_AES_128_CBC_SHA",
"TLS_DHE_DSS_WITH_AES_128_CBC_SHA",
"TLS_RSA_WITH_AES_256_CBC_SHA",
"TLS_RSA_WITH_AES_128_CBC_SHA",
"SSL_RSA_WITH_RC4_128_SHA",
"SSL_RSA_WITH_RC4_128_MD5",
"TLS_EMPTY_RENEGOTIATION_INFO_SCSV"

Kullanılabilir şifrelerin listesini burada bulabilirsiniz.

TLS protokollerini devre dışı bırakma

TLS protokollerini devre dışı bırakmak için yapılandırma dosyasını, TLS'yi yapılandırmak için yapılandırma dosyası kullanma bölümünde açıklanan şekilde düzenlemeniz gerekir:

  1. Yapılandırma dosyasını bir düzenleyicide açın.
  2. Tek bir TLS protokolünü (ör. TLSv1.0) devre dışı bırakmak için yapılandırma dosyasına aşağıdakileri ekleyin:
    TLS_CONFIGURE=y
    TLS_DISABLED_ALGO="tlsv1"

    Birden çok protokolü (örneğin, TLSv1.0 ve TLSv1.1) devre dışı bırakmak için yapılandırma dosyasına aşağıdakileri ekleyin:

    TLS_CONFIGURE=y
    TLS_DISABLED_ALGO="tlsv1, tlsv1.1"
  3. Yapılandırma dosyasında yaptığınız değişiklikleri kaydedin.
  4. TLS'yi yapılandırmak için aşağıdaki komutu çalıştırın:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f configFile

    Burada configFile, yapılandırma dosyasının tam yoludur.

  5. Edge kullanıcı arayüzünü yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

Güvenli çerezler kullan

Private Cloud için Apigee Edge, Edge kullanıcı arayüzünden gelen yanıtlar için Set-Cookie başlığına secure işaretinin eklenmesini destekler. Bu işaret mevcutsa çerez yalnızca TLS özellikli kanallar üzerinden gönderilebilir. Mevcut değilse çerez, güvenli olup olmadığına bakılmaksızın herhangi bir kanal üzerinden gönderilebilir.

secure işareti olmayan çerezler, saldırganların çerezi ele geçirip yeniden kullanmasına veya etkin bir oturumu ele geçirmesine izin verebilir. Bu nedenle, en iyi uygulama bu ayarı etkinleştirmektir.

Edge kullanıcı arayüzü çerezlerinde secure işaretini ayarlamak için:

  1. Şu dosyayı bir metin düzenleyicide açın:
    /opt/apigee/customer/application/ui.properties

    Dosya yoksa oluşturun.

  2. conf_application_session.secure özelliğini, aşağıdaki örnekte gösterildiği gibi ui.properties dosyasında true olarak ayarlayın:
    conf_application_session.secure=true
  3. Değişikliklerinizi kaydedin.
  4. Aşağıdaki örnekte gösterildiği gibi, apigee-serice yardımcı programını kullanarak Edge kullanıcı arayüzünü yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

Değişikliğin çalıştığını onaylamak için curl gibi bir yardımcı program kullanarak Edge kullanıcı arayüzündeki yanıt başlıklarını kontrol edin. Örneğin:

curl -i -v https://edge_UI_URL

Başlık, aşağıdakine benzer bir satır içermelidir:

Set-Cookie: secure; ...

Uç kullanıcı arayüzünde TLS'yi devre dışı bırak

Uç kullanıcı arayüzünde TLS'yi devre dışı bırakmak için aşağıdaki komutu kullanın:

/opt/apigee/apigee-service/bin/apigee-service edge-ui disable-ssl