Bir restoranın web sitesinden masa ayırttığınızı düşünün. Sayfayı açıyor, saati seçiyor, hesabınıza giriş yapıyor ve sayfaya gömülü bir ödeme hizmetiyle rezervasyonu onaylıyorsunuz. Bu varsayımsal ziyaret arka planda birbirine bağlı birkaç sistemden geçer; sizin içinse tek ve sade bir deneyimdir.
TLS ve güvenlik başlıkları bu sistemlerin güvenli biçimde birlikte çalışmasına yardım eder. TLS bağlantıyı şifreler ve tarayıcının sunucunun kimliğini doğrulamasını sağlar. Yanıt başlıkları ise tarayıcıya içeriği, çerezleri ve sonraki ziyaretleri nasıl ele alacağını söyler.
Bu rehberin kapsamı
Bu rehber kavramları anlatır. Ücretsiz Yayına Hazırlık Snapshot’ı sekiz pasif kontrol çalıştırır; tek bağlantıdaki TLS sürümünü kaydeder, tüm sürümleri listelemez. Çoğu başlığın yalnızca varlığına bakar; HTTPS yönlendirmesini ancak http:// adresi girilirse dener. Sızma testi (pentest) değildir.
1. Sertifikanın ziyaretteki rolünü anlayın
Tarayıcı bir siteye HTTPS ile bağlandığında TLS şifreli bir iletişim kanalı kurar. Tarayıcı, sertifikanın istenen alan adını kapsayıp kapsamadığını ve güvendiği bir sertifika otoritesine (CA) uzanan bir zincir oluşturup oluşturmadığını kontrol eder. Sertifikada kapsadığı adlar, geçerlilik süresi ve güven zincirini kurmak için gereken bilgiler yer alır.
Kök alan adı, “www” ve hizmet alt alan adları gibi herkese açık adları listeleyin. Her adı tek tek kontrol edin ve sertifikasını hangi sağlayıcının yönettiğini not edin. CDN ile kaynak sunucunun ayrı sertifikaları ve ayrı yenileme düzenleri olabilir. Sertifika süreleri de kısalıyor: 15 Mart 2026’dan bu yana verilen ve tarayıcıların güvendiği TLS sertifikaları en fazla 200 gün geçerli olabiliyor; bu sınır 15 Mart 2027’de 100 güne, 15 Mart 2029’da 47 güne iniyor. Yenilemeyi otomatikleştirin ve bitiş tarihlerini ayrıca izleyin; örneğin Let’s Encrypt, 4 Haziran 2025’ten beri süre dolumu hatırlatma e-postası göndermiyor.
OWASP TLS rehberi, hangi protokol sürümlerinin destekleneceğine ve yapılandırmanın nasıl korunacağına karar verirken yol gösterir. Bir bağlantıda gerçekten kullanılan TLS sürümünü kaydetmek, bu incelemeye somut bir gözlem ekler.
2. Katmanların birbirini nasıl tamamladığını görün
| Katman | Kazanım | Yararlı uygulama |
|---|---|---|
| TLS sertifikası | Kimliği doğrulanmış, şifreli bağlantı | Adları, geçerlilik süresini ve yenilemeden kimin sorumlu olduğunu izleyin |
| İçerik Güvenliği Politikası (CSP) | Sayfa kaynakları ve davranışları için açık kurallar | Politikayı sitenin gerçekten kullandığı kaynaklara göre kurun |
| HSTS | Sonraki ziyaretlerde tutarlı HTTPS kullanımı | Süreyi ve alan adı kapsamını bilinçli seçin |
| Çerez öznitelikleri | Hesap akışına uygun bir oturum | Girişi, gömülü hizmetleri ve dış sitelerden dönüşleri test edin |
Bu kontrolleri birbirini tamamlayan talimatlar olarak düşünün. Sertifika bağlantının temelini oluşturur, başlıklar ise belirli bir yanıtın nasıl ele alınacağını tarif eder. Sayfaların amaçları da farklıdır: herkese açık bir makale, bir hesap sayfası ve bilerek başka sitelere gömülen bir bileşen, kendi görevine uygun bir politikadan yararlanır.
3. CSP’yi gerçekten kullanılan kaynaklardan oluşturun
İçerik Güvenliği Politikası (CSP), sayfanın hangi kaynaklardan içerik yükleyebileceğini ve tarayıcının hangi davranışlara izin vereceğini tanımlar. İşe betiklerin, görsellerin, yazı tiplerinin, ağ bağlantılarının ve çerçevelerin (iframe) envanterini çıkararak başlayın. Kullanıcı akışını baştan sona izleyin; böylece listeye ancak bir etkileşimden sonra yüklenen ödeme, kimlik doğrulama ve canlı destek kaynakları da girer.
Önerdiğiniz politikanın gerçek kullanımla ne kadar örtüştüğünü Report-Only modunda gözlemleyin. Bu mod kuralları uygulamaz, yalnızca ihlalleri bildirir. Content-Security-Policy-Report-Only bir HTTP yanıt başlığı olarak gönderilmelidir; HTML’deki meta etiketiyle tanımlanamaz. Tarayıcı konsolunu veya ayarladığınız rapor adresini inceleyin, her mesajı ilgili kaynakla eşleştirin ve hangi kuralın gerektiğine karar verin. Temsilî akışları gözden geçirdikten sonra test ettiğiniz politikayı uygulamaya alın. Nonce veya hash değerleriyle belirli betiklere tek tek izin verebilirsiniz. Belgelenmiş bir kaynak envanteri, ileride eklenecek kaynakları değerlendirmeyi kolaylaştırır ve her iznin neden verildiğini açıklar.
4. HTTPS’i tarayıcı için kalıcı bir alışkanlık hâline getirin
HSTS, tarayıcıya bir alan adına belirlenen süre boyunca yalnızca HTTPS ile bağlanmasını söyler. Tarayıcı bu politikayı geçerli bir HTTPS yanıtından öğrenir ve sonraki ziyaretlerde uygular; düz HTTP üzerinden gelen HSTS başlığını ise yok sayar. HSTS etkin bir sitede tarayıcı, sertifika hatası çıktığında ziyaretçiye “yine de devam et” seçeneği sunmaz. Bu yüzden süresi dolmuş bir sertifika, siteyi daha önce ziyaret etmiş kişiler için tamamen erişilemez hâle getirir. Sertifika yenilemesini ve HSTS’i birlikte planlayın. Ekibinizin rahatça izleyebileceği kısa bir başlangıç süresi seçin, davranışı doğrulayın ve süreyi aşamalı olarak uzatın.
includeSubDomains politikayı tüm alt alan adlarına genişletir; bu seçimi alan adı envanterinize ve her alt alan adının HTTPS durumuna göre yapın. Preload ise alan adını tarayıcılara gömülü bir listeye ekler; böylece ilk ziyaret de korunur. Ancak preload başvurularının yapıldığı hstspreload.org bugün HSTS’i önerirken preload’u önermiyor. Gerekçesi, Chrome ve Safari gibi tarayıcıların HTTP ile açılan sayfaları zaten HTTPS’e yükseltmesi. Listeden çıkarılma kararının kullanıcılara ulaşması da aylar sürüyor. Yine de preload’u düşünüyorsanız bunu uzun vadeli bir karar olarak ele alın ve tüm alan adı kapsamını önceden planlayın. MDN’deki HSTS açıklaması bu seçeneklerin birlikte nasıl çalıştığını anlatır.
6. Ziyaretçiye ulaşan son hâli gözlemleyin
Tarayıcının geliştirici araçlarında sıradan bir sayfa isteğini açın ve yönlendirmeleri son yanıta kadar izleyin. Gerçekte teslim edilen sertifikayı, başlıkları ve çerezleri inceleyin. Böylece yapılandırmayı ziyaretçinin deneyimiyle karşılaştırır, her ayarın hangi hizmetten geldiğini görürsünüz.
- Desteklediğiniz herkese açık alan adlarını HTTPS ile ziyaret edin.
- Sertifika bilgilerini ve son yanıttaki politikaları kaydedin.
- Giriş, hesap kurtarma, gömülü ödeme ve dış sitelerden dönüş akışlarını baştan sona tamamlayın.
- Konsoldaki uyarıları ve seçtiğiniz rapor adresine gelen mesajları gözden geçirin.
Tarihli bir yapılandırma kaydı tutun ve her katmanı kimin yönettiğini not edin. Barındırma ya da bir entegrasyon değiştiğinde aynı akışla beklenen davranışı yeniden doğrulayın. Planlı bir geçiş ve gerektiğinde dönülebilecek önceki yapılandırma, güncellemeleri ekip içinde rahatça koordine etmenizi sağlar. Ortaya çıkan kontrol listesi, siteyi ileride devralacak kişiler için de pratik bir başlangıç noktası olur.
Bir sitenin başlıklarını hemen kontrol etmek için ücretsiz güvenlik başlıkları kontrolü aracını kullanın.
7. Koruma haritasını sitenin yanında tutun
Herkese açık adları, sertifika sorumlularını, tarayıcının yüklediği kaynakları ve önemli kullanıcı akışlarını tek bir yerde kaydedin.
Sitelemetry’nin ücretsiz Yayına Hazırlık Snapshot’ı kayıt gerektirmeden sekiz pasif kontrol çalıştırır. Bu yazının konusu açısından siteye tek bir TLS bağlantısı kurar; sertifikanın güvenilir olup olmadığına, süresinin 30 gün içinde dolup dolmadığına ve bağlantıda TLS 1.2 ya da 1.3 kullanılıp kullanılmadığına bakar. Ayrıca yönlendirmelerden sonraki son yanıtta hangi güvenlik başlıklarının gönderildiğini kontrol eder; çoğu başlıkta yalnızca varlığına bakılır. Sonuç bir puan, ayrı bir sertleştirme notu ve önce bakılması gereken en fazla üç sinyal olarak gösterilir. Desteklenen tüm TLS sürümlerini ve şifre takımlarını listelemez; bir sızma testi de değildir.
Web sitesi güvenlik rehberi, bu katmanların hesaplar, yetkiler ve günlük bakımla nasıl bağlandığını anlatır.
Sık sorulan sorular
TLS ve güvenlik başlıkları nasıl birlikte çalışır?
TLS iletişimi şifreler ve sunucunun kimliğini doğrular. Başlıklar ise tarayıcıya gelen içeriği, oturumu ve sonraki istekleri nasıl ele alacağını söyler.
CSP’ye nereden başlamalıyım?
Temsilî kullanıcı akışlarında yüklenen kaynakları listeleyin, önerilen politikayı Report-Only başlığıyla gözlemleyin, gelen mesajları inceleyin ve yalnızca amaçlanan davranışa uyan kuralları uygulamaya alın.
HttpOnly çerezi XSS’e karşı tam koruma sağlar mı?
Hayır. HttpOnly sayfadaki betiklerin çerezi okumasını engeller; bu yüzden çerezin çalınıp başka bir yerde kullanılmasını zorlaştırır. Ancak bir XSS açığı, ziyaretçinin tarayıcısında çerezle birlikte istek göndermeye devam edebilir. Açığın kendisini ayrıca kapatmak gerekir.
HSTS preload kullanmalı mıyım?
Preload başvurularının yapıldığı hstspreload.org bugün HSTS’i önerirken preload’u önermiyor, çünkü Chrome ve Safari gibi tarayıcılar HTTP ile açılan sayfaları zaten HTTPS’e yükseltiyor. Listeden çıkarılma kararının kullanıcılara ulaşması da aylar sürüyor. Preload’u düşünüyorsanız önce tüm alt alan adlarınızın kalıcı olarak HTTPS ile çalıştığından emin olun.
Sertifika kaydında neler bulunmalı?
Herkese açık alan adları, sertifika sağlayıcısı, geçerlilik süresi, yenilemeden sorumlu kişi ve ilgili CDN ya da kaynak sunucu düzeni. Sertifika süreleri kısaldığı için yenilemenin otomatik olup olmadığını ve bitiş tarihini kimin izlediğini de yazın. Kaydı barındırma ve alan adı değişikliklerinde gözden geçirin.
Kaynaklar ve ileri okuma
- MDN: Content-Security-Policy-Report-Onlydeveloper.mozilla.org
- MDN: HTTP Strict Transport Securitydeveloper.mozilla.org
- MDN: Set-Cookiedeveloper.mozilla.org
- MDN: X-Content-Type-Optionsdeveloper.mozilla.org
- MDN: CSP frame-ancestorsdeveloper.mozilla.org
- MDN: X-Frame-Optionsdeveloper.mozilla.org
- OWASP HTTP başlıkları rehbericheatsheetseries.owasp.org
- OWASP TLS rehbericheatsheetseries.owasp.org
- OWASP oturum yönetimi rehbericheatsheetseries.owasp.org
- HSTS Preload List Submissionhstspreload.org
- CA/Browser Forum Baseline Requirements (6.3.2)raw.githubusercontent.com
- Let’s Encrypt: süre dolumu bildirim hizmeti sona erdiletsencrypt.org
Sitelemetry yayın ekibi tarafından hazırlanmıştır. Konuyu derinleştirmek için bağlantılı kaynakları inceleyebilirsiniz.



