Cipher suite listesi, TLS el sıkışmasında hangi şifreleme, anahtar değişimi ve bütünlük algoritmalarının kullanılacağını belirler. Amaç; zayıf algoritmaları kapatmak, ileri gizlilik (forward secrecy) sağlamak ve modern istemcilerle uyumu korumaktır.
Temel ilkeler
- Protokol olarak TLS 1.2 ve TLS 1.3'ü açık, SSLv3/TLS 1.0/1.1'i kapalı tutun.
- ECDHE tabanlı anahtar değişimi ve AEAD modları (AES-GCM, ChaCha20-Poly1305) tercih edin.
- RC4, 3DES, MD5, EXPORT ve NULL şifrelerini devre dışı bırakın.
- TLS 1.3 cipher suite'leri ayrı yönetilir ve zaten güvenli bir kümeden oluşur; TLS 1.2 listesi ayarı bunları etkilemez.
Nginx örneği
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305;
ssl_prefer_server_ciphers off;
Modern istemcilerin kendi tercihini yapmasına izin vermek (off) genellikle önerilir; çünkü mobil cihazlar donanımlarına uygun ChaCha20 veya AES-GCM seçebilir.
Apache örneği
SSLProtocol -all +TLSv1.2 +TLSv1.3
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384
SSLHonorCipherOrder off
Doğrulama
openssl ciphers -v 'ECDHE+AESGCM'
nmap --script ssl-enum-ciphers -p 443 alanadi.com
openssl s_client -connect alanadi.com:443 -tls1_2
Değişiklikten sonra eski istemcilerinizin (özellikle eski Java veya gömülü cihazlar) bağlantısını test edin. Uyumluluk kararını müşteri kitlenize göre verin, ayrıca yapılandırmayı uygulamadan önce yedekleyin.
Sonuç
Kısa, modern ve AEAD ağırlıklı bir liste hem güvenliği hem performansı iyileştirir. Sonucu SSL Checker ile görebilir, altyapınız için uygun sertifikayı SSL sertifikaları sayfasından seçebilirsiniz.