<

SSL/TLS Yapılandırması: A+ Notu Almanın Ötesi

Geçen yıl bir sağlık sektörü müşterimiz gururla aradı: "SSL testinden A+ aldık, güvenlik tamam." İki hafta sonra aynı müşterinin mobil uygulaması, sabah 06:40'ta ülke genelinde çalışmayı bırakıştı. Sebep? Ana domain A+ notuyla parlıyordu ama mobil API'nin yaşadığı alt alan adının sertifikası gece yarısı dolmuş, yenileme otomasyonu ise sekiz ay önce bir sunucu taşımasında sessizce bozulmuştu. Not veren test ana domaine bakıyordu; müşterinin geliri alt alan adından geçiyordu. O sabahtan aklımda kalan cümle şu: A+ bir fotoğraftır, güvenli TLS ise bir süreç.

Bu yazıda o süreçten bahsedeceğim — yapılandırmanın kendisinden çok, notu aldıktan sonra herkesin unuttuğu kısımdan.

Notun ölçtüğü ve ölçmediği şeyler

Test araçlarının verdiği not, el sıkışma yapılandırmanızın kalitesini ölçer: protokol sürümleri, şifre takımları, sertifika zinciri, HSTS başlığı. Bunlar önemli ve iyi haber şu ki 2026'da bu kısım artık zor değil — modern bir web sunucusunun güncel varsayılanları sizi neredeyse kendiliğinden A bandına taşıyor. TLS 1.0 ve 1.1'i kapatmak, TLS 1.3'ü açmak, zinciri eksiksiz sunmak; bir öğleden sonralık iş.

Notun ölçmediği liste ise daha uzun ve daha kanlı: sertifikanın yarın da geçerli olacağı, kapsam dışı kalan alt alan adları, uygulamaların dışarı doğru yaptığı bağlantıların doğrulaması, iç servisler arası trafiğin şifresi ve sertifika değişince mobil uygulamanızın buna nasıl tepki vereceği. Müşterimizin yaşadığı kaza bu listenin birinci ve ikinci maddesinin kesişimiydi; ilerleyen yıllarda diğer maddelerin her birinin kazasını da ayrı ayrı gördük.

Doksan günlük sertifika çağında elle yenileme bir kumar

Sertifika ömürleri yıllardır kısalıyor ve kısalmaya devam ediyor; sektör 47 günlük ömürlere doğru takvimli bir yürüyüşte. Bunun tek bir anlamı var: sertifika yenileme, insan hafızasına bırakılabilecek bir iş olmaktan kesin olarak çıktı. Takvime "sertifika yenile" notu düşen sistem yöneticisi, kendi nöbetçi telefonuna randevu veriyor demektir.

Bizim standardımız her ortamda ACME tabanlı tam otomasyon — ve asıl kritik nokta şu: otomasyonun kendisi de izleniyor. Çünkü o sabahki kazanın gerçek dersi "otomasyon yoktu" değil, "otomasyon bozulmuştu ve kimse bilmiyordu" idi. İzleme tarafında iki bağımsız hat tutuyoruz: dışarıdan her domain ve alt alan adının sertifika bitiş tarihini kontrol eden bir servis (son 21 güne giren her sertifika alarm üretir; otomasyon sağlıklıysa o eşiğe zaten hiç gelinmez, gelindiyse otomasyon bozulmuş demektir) ve Certificate Transparency loglarının takibi. CT takibi az bilinen ama bedava bir nimet: alan adınız için dünyanın herhangi bir yerinde bir sertifika üretildiğinde haberiniz oluyor. Sizin üretmediğiniz bir sertifika göründüğünde bu, ya unuttuğunuz bir otomasyondur ya da çok daha ciddi bir konuşmanın başlangıcı.

Yenileme otomasyonunun kendi kör noktası da var, onu da söyleyeyim: sertifika yenilenir ama servis yeniden yüklenmezse, diskte taze sertifika dururken sunucu eskisini sunmaya devam eder. Bu tuhaf ara durumu iki kez yaşadık — ikisinde de "otomasyon çalıştı" logu vardı ve ikisinde de kullanıcılar süresi dolmuş sertifika uyarısı gördü. O günden beri izleme, dosyaya değil hatta bakıyor: kontrol servisi, sunucunun gerçekten sunduğu sertifikanın tarihini okuyor. Ne söylediğinize değil, ne yaptığınıza bakan izleme her zaman daha dürüsttür.

Bir de envanter meselesi var. Kaç müşteri kurumda sorduk: "Kaç adet TLS uç noktanız var?" Doğru cevabı ilk seferde bilen çıkmadı; gerçek sayı, tahminlerin hep en az iki katı. Pazarlama ekibinin açtırdığı kampanya alt alan adları, unutulan staging ortamları, IoT cihazlarının konuştuğu uç noktalar... Envanterde olmayan sertifika izlenemez, izlenmeyen sertifika günü gelince süresi dolarak kendini hatırlatır.

HSTS: en değerli ve en geri alınamaz başlık

HSTS'i "notu yükselten başlık" olarak ekleyen çok; ne taahhüt ettiğini bilerek ekleyen az. Strict-Transport-Security, tarayıcıya "bu alan adına belirtilen süre boyunca yalnızca HTTPS ile bağlan" diyor — kullanıcının sertifika uyarısını tıklayıp geçmesine dahi izin vermeden. Güvenlik açısından muhteşem; SSL soyma saldırılarının kapısını kapatıyor.

Ama madalyonun öbür yüzü: bir yıllık max-age ve includeSubDomains ile yayınladığınız HSTS, verdiğiniz sözden dönüş yolunu da bir yıllığına kapatıyor. Bir müşterimizde pazarlama ekibi, harici bir ajansın kurduğu ve yalnızca HTTP konuşan bir kampanya mikrositesini ana domainin alt alan adına bağlamak istedi; mümkün değildi, çünkü iki yıl önce includeSubDomains'li HSTS yayınlanmıştı. Doğru karar buydu zaten — ama o kararın bir karar olduğunu, teknik ekiple pazarlama aynı toplantıda o gün öğrendi. HSTS'i kademeli yayınlayın: önce kısa max-age ile deneyin, alt alan adı envanteriniz netse includeSubDomains ekleyin, preload listesine ise ancak bir daha asla HTTP'ye dönmeyeceğinizden kurum olarak eminseniz girin. Preload'dan çıkış, aylar süren bir dilekçe sürecidir.

Dışa açılan kapı kadar, içerideki koridorlar

TLS sohbetleri hep tarayıcı ile sunucu arasındaki hatta odaklanıyor; oysa modern bir sistemde trafiğin çoğu içeride akıyor. API'niz ile veritabanı arasında, servisleriniz arasında, sizin backend'iniz ile üçüncü parti servisler arasında. Araç takip sistemlerimizde cihazlardan gelen telemetri, ödeme entegrasyonlarında dışarı giden istekler — bunların her biri ayrı bir doğrulama sorumluluğu. Özellikle dışa giden bağlantılarda sertifika doğrulamasını kapatan o meşhur "geçici" konfigürasyon satırı (verify=false yazan herkes bir gün silmeyi planlıyordu, biliyoruz) devraldığımız projelerde hâlâ en sık rastladığımız güvenlik açığı. Doğrulamasız TLS, kilidi olup anahtarı paspasın altında duran kapıdır: şifreleme var, kimlik yok.

İç trafik şifrelemesinde pragmatik davranıyoruz: her projeye service mesh kurup mTLS dayatmak yerine, önce tehdit modeline bakıyoruz. Aynı fiziksel makinede yaşayan iki konteyner arasındaki trafikle, iki veri merkezi arasında kamusal hattan akan replikasyon trafiği aynı muameleyi hak etmiyor. İkincisi tartışmasız şifrelenir; ilkinde ise eklenen operasyon yükü ile kapatılan risk tartılır ve karar, gerekçesiyle birlikte yazılır. Güvenlikte "her yerde en sıkısı" refleksi kulağa doğru geliyor ama bakımını yapamayacağınız sıkılık, zamanla gevşekliğin en sinsi türüne dönüşüyor.

Mobil taraf için de bir uyarı: certificate pinning yapacaksanız, sertifika rotasyonunuzla birlikte tasarlayın. Pin'i sabitleyip sertifikayı değiştiren ekibin uygulaması, kendi güvenlik önlemi tarafından kilitlenir — bunun da vaka analizini yazacak kadar örneğini gördük, çoğu bizim müdahale için çağrıldığımız projelerde.

Sağlık müşterimizin sisteminde bugün 34 uç nokta, tek bir envanterden, çift kanallı izlemeyle yaşıyor; o sabahtan beri tek bir sertifika kaynaklı kesinti yok. Kendi TLS envanterinizin fotoğrafını çekmek isterseniz bize ulaşın — bir günlük taramayla hem notunuzu hem de notun görmediği kör noktaları raporluyoruz. A+ rozetini alın, sevinin, çerçeveletin; ama operasyon panosundaki yerini süreç metriklerine bırakın.

📅 Yayınlanma:  ·  Yakup Zengin