CLB örneği için bir HTTPS dinleyicisi yapılandırdığınızda, TLS güvenlik ilkesi istemcilerle yapılacak TLS anlaşmasında hangi TLS protokol sürümlerinin ve şifre takımlarının kullanılacağını belirler. CLB, önceden tanımlanmış birkaç TLS güvenlik ilkesi sunar.
Nasıl çalışır
CLB için bir TLS güvenlik ilkesi, TLS anlaşması sırasında desteklenen TLS protokol sürümlerini ve şifre takımlarını tanımlar. TLS el sıkışması sırasında istemci, Client Hello iletisinde desteklediği protokol sürümlerinin ve şifre takımlarının listesini gönderir. CLB, ilkeye göre istemcinin listesinden karşılıklı olarak desteklenen bir protokol sürümü ve şifre takımı kombinasyonu seçer ve Server Hello iletisiyle yanıt verir. Bu kombinasyon, anahtar değişimi ve oturum anahtarı oluşturma gibi sonraki adımları belirler.
TLS güvenlik ilkeleri
Güvenlik uyumluluk standartları, CLB örneğinizin belirli bir TLS güvenlik ilkesi kullanmasını gerektirebilir. Gereksinimlerinizi karşılayan bir ilke seçmenize yardımcı olmak amacıyla her bir ilke tarafından desteklenen TLS protokol sürümleri ve şifre takımları aşağıdaki tabloda açıklanmıştır. CLB, özel TLS güvenlik ilkelerini desteklemez. Bu işlevselliğe ihtiyacınız varsa Application Load Balancer (ALB) veya Network Load Balancer (NLB) kullanın.
Özel uyumluluk gereksinimi olmayan internete yönelik uygulamalar için tls_cipher_policy_1_2 ilkesini veya daha katı bir ilkeyi kullanmanızı öneririz.
TLS güvenlik ilkesi yapılandırma
Konsol
Bir HTTPS dinleyicisi eklerken, Certificate Management Service sekmesinde Advanced Settings öğesinin yanındaki Modify düğmesine tıklayın. Genişletilen bölümde bir TLS Security Policy seçin.
TLS güvenlik ilkesini değiştirmek için örnek ayrıntıları sayfasındaki Listener sekmesine gidin ve hedef HTTPS dinleyicisinin adına tıklayarak Listener Details iletişim kutusunu açın. SSL Certificate bölümünde TLS Security Policy değerini değiştirin.
API
HTTPS dinleyicisi oluşturmak için CreateLoadBalancerHTTPSListener çağrısı yaparken veya bir dinleyiciyi değiştirmek için SetLoadBalancerHTTPSListenerAttribute çağrısı yaparken TLS güvenlik ilkesini TLSCipherPolicy parametresinde belirtin.
Faturalama
TLS güvenlik ilkeleri ücretsizdir. Ancak, CLB örneklerinin kullanılması ücretlere tabidir.
SSS
CLB üzerinde özel TLS güvenlik ilkeleri
Hayır. CLB yalnızca önceden tanımlanmış TLS güvenlik ilkelerini destekler.
Özel bir TLS güvenlik ilkesine ihtiyaç duyuyorsanız, örneğin belirli güvenlik uyumluluk gereksinimlerini karşılamak için aşağıdaki ürünlerden birini kullanın:
ALB: HTTPS dinleyicileri için özel TLS güvenlik ilkeleri yapılandırabilirsiniz.
NLB: TCP/SSL dinleyicileri için özel TLS güvenlik ilkeleri yapılandırabilirsiniz.
Arka uçtaki Nginx ssl_protocols yapılandırmam neden etkili olmuyor?
CLB, TLS bağlantılarını sonlandırır. İstemcilerin gördüğü TLS sürümü, arka uç sunucularınızdaki ssl_protocols yönergesiyle değil, CLB TLS güvenlik ilkesiyle belirlenir. Desteklenen TLS sürümlerini değiştirmek için hedef HTTPS dinleyicisinin TLS güvenlik ilkesini değiştirin: Listener sekmesinde HTTPS dinleyicisinin adına tıklayarak Listener Details iletişim kutusunu açın ve SSL Certificate bölümündeki TLS güvenlik ilkesini değiştirin.
CLB geçerli bir sertifika bağlamış olsa bile tarayıcım neden hala güvenlik uyarısı gösteriyor?
Olası nedenler ve sorun giderme önerileri aşağıdadır:
TLS güvenlik ilkesinde zayıf şifre takımı: HTTPS dinleyiciniz için TLS güvenlik ilkesi
tls_cipher_policy_1_0veyaDES-CBC3-SHAgibi zayıf şifre takımlarını içeren başka bir ilke olarak ayarlanmışsa, bu takımlar Mükemmel İleri Gizlilik (PFS) özelliğini desteklemediğinden tarayıcılar güvenlik uyarısı gösterebilir. Örnek ayrıntıları sayfasına gidip Listener sekmesine tıklamanızı, hedef HTTPS dinleyicisinin adına tıklayarak Listener Details iletişim kutusunu açmanızı ve SSL Certificate bölümündeki TLS Security Policy değerinitls_cipher_policy_1_2_strictolarak değiştirmenizi öneririz.Eski yönlendirme kuralları veya alan uzantıları: Yönlendirme kurallarınız veya alan uzantılarınız mevcut erişim alanıyla ilgisi olmayan eski girişler içeriyorsa sertifika alanı eşleşmeme hataları oluşabilir. Dinleyicideki gereksiz yönlendirme kurallarını kaldırın.
Sertifika alanı eşleşmemezliği veya süresi dolmuş sertifika: Dinleyiciye bağlı sunucu sertifikasının erişim alanını kapsadığını ve süresinin dolmadığını doğrulayın.
Tarayıcı önbelleği: Tarayıcı önbelleğinizi temizleyip tekrar deneyin.
Sorun giderme işlemini yukarıda listelenen sırayla uygulamanızı öneririz.
CVE-2016-2183 güvenlik açığını nasıl düzeltirim?
CVE-2016-2183, Sweet32 saldırısı olarak bilinen bir SSL/TLS bilgi sızdırma güvenlik açığıdır. Kök neden, TLS güvenlik ilkesinin DES-CBC3-SHA (3DES) şifre takımını içermesidir. tls_cipher_policy_1_0, tls_cipher_policy_1_1 ve tls_cipher_policy_1_2 ilkelerinin tümü bu şifre takımını içerir.
Bu güvenlik açığını düzeltmek için:
CLB konsolunda oturum açın ve hedef CLB örneğine gidin.
Listener sekmesinde hedef HTTPS dinleyicisinin adına tıklayarak Listener Details iletişim kutusunu açın.
SSL Certificate bölümünde TLS Security Policy değerini
tls_cipher_policy_1_2_strictveyatls_cipher_policy_1_2_strict_with_1_3olarak değiştirin.Değişikliği onaylayıp gönderin. Değişiklik etkili olduktan sonra
DES-CBC3-SHAşifre takımı kaldırılır ve CVE-2016-2183 düzeltilir.
Bu değişikliği yoğun olmayan saatlerde uygulamanızı öneririz. Değişiklikten sonra bir sorun oluşursa dinleyici yapılandırmasını değiştirerek değişikliği hemen geri alabilirsiniz.
Üretim ortamı
TLS protokol sürümü: Uygulamanızda özel uyumluluk gereksinimi yoksa en yüksek güvenlik için TLS 1.2 ve TLS 1.3 kullanın.
Geri alma: TLS güvenlik ilkesini ayarladıktan sonra bir sorun oluşursa dinleyici yapılandırmasını değiştirerek değişikliği hemen geri alabilirsiniz. Bu değişiklikleri yoğun olmayan saatlerde uygulayın.
Anahtar değişim algoritması: Uygulamanızda belirli uyumluluk gereksinimleri olmadığı sürece üretim ortamında aşağıdaki RSA tabanlı şifre takımlarından kaçının:
AES128-GCM-SHA256,AES256-GCM-SHA384,AES128-SHA256,AES256-SHA256,AES128-SHA,AES256-SHAveDES-CBC3-SHA. Bu takımlar Mükemmel İleri Gizlilik (PFS) özelliğini desteklemediğinden yan kanal saldırılarına açıktır. Anahtar değişimi için ECDHE veya DHE kullanan şifre takımlarına öncelik verin.-
SSL Labs derecelendirmesi: SSL Labs testiniz B notu döndürür ve TLS 1.3 desteklenmiyorsa TLS 1.3'ü etkinleştirmek ve A notu almak için
tls_cipher_policy_1_2_strict_with_1_3seçeneğini belirleyin. CLB, TLS bağlantılarını sonlandırır; istemcilerle yapılan TLS anlaşmasındaki sürüm, arka uç sunucularındakissl_protocolsyapılandırmasıyla değil, CLB TLS güvenlik ilkesiyle belirlenir.Aşağıdaki tabloda her bir ilke ile ilişkili SSL Labs derecelendirmesi gösterilmektedir:
TLS güvenlik ilkesi
TLS 1.3 desteği
SSL Labs derecelendirmesi
tls_cipher_policy_1_0
Hayır
B
tls_cipher_policy_1_1
Hayır
B
tls_cipher_policy_1_2
Hayır
B
tls_cipher_policy_1_2_strict
Hayır
B
tls_cipher_policy_1_2_strict_with_1_3
Evet
A
Güvenlik önerileri
tls_cipher_policy_1_0, tls_cipher_policy_1_1 ve tls_cipher_policy_1_2, DES-CBC3-SHA şifre takımını (IANA adı: 3DES_EDE_CBC_SHA) içerir. Bu takım 64 bitlik bir blok şifre kullanır ve Sweet32 saldırısına (CVE-2016-2183) karşı savunmasızdır. Bu riski ortadan kaldırmak için TLS güvenlik ilkenizi tls_cipher_policy_1_2_strict veya daha yenisine yükseltin.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Konsol kullanarak yükseltme
CLB konsolunda oturum açın ve hedef örneğe gidin.
Listener sekmesinde hedef HTTPS dinleyicisinin adına tıklayarak Listener Details iletişim kutusunu açın.
SSL Certificate bölümünde TLS Security Policy değerini
tls_cipher_policy_1_2_strictolarak değiştirin.Değişikliği onaylayıp gönderin.
API kullanarak yükseltme
SetLoadBalancerHTTPSListenerAttribute çağrısı yapın ve TLSCipherPolicy değerini tls_cipher_policy_1_2_strict olarak ayarlayın.
Uyumluluk hususları
tls_cipher_policy_1_2_strict sürümüne yükseltmek TLS 1.0, TLS 1.1 ve DES-CBC3-SHA dahil olmak üzere eski şifre takımları için desteği kaldırır. Yükseltmeden önce:
İstemcilerinizin TLS 1.2'yi desteklediğini doğrulayın.
İş etkisini en aza indirmek için değişikliği yoğun olmayan saatlerde uygulayın.
TLS şifre takımı eşlemesi
Bu tablo, TLS şifre takımlarının OpenSSL formatı, IANA standart formatı ve onaltılık gösterimi arasındaki eşlemeyi sağlar.