Sitenizin Strict Transport Security Hsts Politikasinin Dogru Uygulandi
Sitenizin Strict Transport Security Hsts Politikasinin Dogru Uygulandi

Sitenizin Strict-Transport-Security (HSTS) politikasının doğru uygulandığını nasıl kontrol edersiniz?


Günümüzün dijital dünyasında, web sitesi güvenliği sadece bir seçenek olmaktan çıkmış, zorunlu bir gereklilik haline gelmiştir. Kullanıcıların verilerini korumak, sitenizin itibarını sağlamak ve arama motorlarında daha iyi sıralama elde etmek için Strict-Transport-Security (HSTS) gibi güvenlik mekanizmalarının doğru şekilde uygulanması hayati önem taşır. Google AdSense yayıncıları olarak, sitenizin kullanıcı deneyimini ve güvenilirliğini en üst düzeyde tutmak, reklam gelirlerinizin sürdürülebilirliği açısından da kritik bir faktördür. Peki, sitenizin HSTS politikasını doğru bir şekilde uygulayıp uygulamadığını nasıl anlarsınız? Bu kapsamlı rehberde, bu sorunun yanıtlarını adım adım inceleyeceğiz.

HSTS Nedir ve Neden Bu Kadar Önemlidir?


Strict-Transport-Security (HSTS), bir web sitesinin yalnızca güvenli bağlantılar (HTTPS) üzerinden erişilebilir olmasını sağlayan bir web güvenlik politikası mekanizmasıdır. HTTP üzerinden bir web sitesine bağlanmaya çalışan kullanıcıları otomatik olarak HTTPS'ye yönlendirerek "ortadaki adam" saldırılarına (man-in-the-middle attacks) karşı koruma sağlar. Normalde, bir kullanıcı sitenize ilk kez HTTP üzerinden eriştiğinde, sunucu onu HTTPS'ye yönlendirebilir. Ancak bu ilk bağlantı güvenli değildir ve saldırganlar tarafından ele geçirilebilir. HSTS bu riski ortadan kaldırır.
Bir web sunucusu bir tarayıcıya HSTS başlığı gönderdiğinde, tarayıcı belirli bir süre boyunca bu siteye yalnızca HTTPS üzerinden bağlanacağını "hatırlar" veya başka bir deyişle önbellek'ler. Bu, kullanıcının daha sonra sitenizin HTTP versiyonunu ziyaret etmeye çalışması durumunda bile tarayıcının otomatik olarak HTTPS'ye geçmesini sağlar, böylece HTTP'den HTTPS'ye yapılan yönlendirme adımı atlanmış olur. Bu durum, sadece güvenlik açısından değil, aynı zamanda web sitesi performansı açısından da küçük ama önemli bir iyileşme sağlar. Daha az yönlendirme, daha hızlı sayfa yüklemesi anlamına gelir ki bu da SEO için olumlu bir sinyaldir.
HSTS'nin doğru uygulanması, özellikle hassas verilerin işlendiği e-ticaret siteleri, bankacılık siteleri ve online hizmet sağlayıcıları için vazgeçilmezdir. Ancak, bir blog veya haber sitesi için bile, kullanıcı güvenini kazanmak ve arama motoru sıralamalarında avantaj elde etmek adına büyük bir fark yaratabilir. Google, güvenli siteleri tercih ettiğini defalarca belirtmiştir ve HSTS, bu güvenliği bir adım öteye taşıyan önemli bir bileşendir.

HSTS Politikasının Doğru Uygulandığını Kontrol Etmenin Yolları


Sitenizin HSTS politikasının kusursuz çalıştığından emin olmak için birkaç farklı yöntem kullanabilirsiniz. Bu yöntemlerin temelinde, sunucunuzun tarayıcılara gönderdiği HTTP başlıklarını incelemek yatar. Bu başlıkları görüntülemek için çeşitli araçlar mevcuttur.

1. HTTP Header Görüntüleyici Araçları Kullanmak


En doğrudan ve etkili yöntemlerden biri, bir HTTP Header Görüntüleyici aracı kullanmaktır. Bu araçlar, bir web sayfasını ziyaret ettiğinizde sunucudan gelen tüm HTTP yanıt başlıklarını size gösterir.
#### ### Tarayıcı Geliştirici Araçları (Developer Tools) ile Kontrol
Modern web tarayıcılarının çoğu (Chrome, Firefox, Edge, Safari) yerleşik geliştirici araçlarına sahiptir. Bu araçlar, bir web sayfasının nasıl yüklendiğini, hangi kaynakları kullandığını ve sunucunun hangi yanıt başlıklarını gönderdiğini ayrıntılı olarak incelemenizi sağlar.
1. Tarayıcınızı açın ve HSTS'yi kontrol etmek istediğiniz web sitesine gidin (örneğin, `https://www.example.com`). Tarayıcınızın adres çubuğuna mutlaka `https://` ile başlayarak sitenizi yazın. HSTS sadece HTTPS bağlantılar üzerinden iletildiği için bu çok önemlidir.
2. Geliştirici Araçlarını açın:
* Chrome'da: `F12` tuşuna basın veya sağ tıklayıp "İncele" seçeneğini seçin.
* Firefox'ta: `F12` tuşuna basın veya sağ tıklayıp "Öğeyi İncele" seçeneğini seçin.
* Edge'de: `F12` tuşuna basın veya sağ tıklayıp "İncele" seçeneğini seçin.
3. "Network" (Ağ) sekmesine gidin: Bu sekme, sayfanın yüklenmesi sırasında yapılan tüm ağ isteklerini gösterir.
4. Sayfayı yenileyin: Bu, tüm isteklerin yakalanmasını sağlar.
5. İlk isteği bulun: Genellikle, sitenizin ana URL'sine yapılan ilk istek (örneğin, `www.example.com` veya `index.html`) ilginizi çekmelidir. Bu isteğe tıklayın.
6. "Headers" (Başlıklar) sekmesine bakın: Burada, sunucudan gelen yanıt başlıklarını göreceksiniz. `Strict-Transport-Security` adında bir başlık arayın.
#### ### Online HTTP Header Görüntüleyici Araçları ile Kontrol
Tarayıcı geliştirici araçlarına ek olarak, online HTTP Header Görüntüleyici web siteleri de mevcuttur. Bu araçlar, herhangi bir URL için HTTP başlıklarını hızlıca almanızı sağlar ve genellikle daha kullanıcı dostu bir arayüze sahiptir. Popüler araçlar arasında `securityheaders.com`, `hsts-preloader.appspot.com` (HSTS Preload Listesi için kontrol), `redirection.io` veya sadece "HTTP header checker" aramasıyla bulabileceğiniz birçok site bulunur.
1. Bu sitelerden birini açın.
2. Sitenizin tam URL'sini (örneğin, `https://www.example.com`) girin.
3. Kontrol düğmesine basın.
4. Sonuçlarda `Strict-Transport-Security` başlığını arayın.

2. Ne Aramalısınız: HSTS Başlığı ve Direktifleri


Hangi yöntemi kullanırsanız kullanın, `Strict-Transport-Security` başlığını bulduğunuzda, içindeki direktifleri doğru bir şekilde anlamanız gerekir. Bu başlık genellikle şöyle görünür:
`Strict-Transport-Security: max-age=31536000; includeSubDomains; preload`
Bu başlığın içinde üç temel direktif bulunur ve her birinin belirli bir anlamı vardır:
* `max-age`: Bu direktif, tarayıcının HSTS politikasını ne kadar süreyle (saniye cinsinden) önbellek'lemesi gerektiğini belirtir. Örneğin, `max-age=31536000`, politikanın 1 yıl (365 gün * 24 saat * 60 dakika * 60 saniye = 31.536.000 saniye) boyunca geçerli olacağı anlamına gelir. Yüksek bir `max-age` değeri, tarayıcının HSTS politikasını daha uzun süre hatırlamasını sağlayarak güvenliği artırır. Güvenilir bir HSTS uygulaması için bu değerin en az 1 yıl (31536000) olması önerilir. Kısa bir `max-age` değeri, HSTS'nin etkinliğini azaltır.
* `includeSubDomains`: Bu isteğe bağlı direktif, HSTS politikasının yalnızca ana etki alanı için değil, aynı zamanda tüm alt etki alanları (örneğin, `blog.example.com`, `shop.example.com`) için de geçerli olduğunu belirtir. Eğer tüm alt etki alanlarınız HTTPS kullanıyorsa, bu direktifi eklemek şiddetle tavsiye edilir. Bu, tüm site yapınızın tutarlı bir güvenlik düzeyine sahip olmasını sağlar.
* `preload`: Bu da isteğe bağlı bir direktiftir, ancak HSTS'nin maksimum etkinliğini sağlamak için çok önemlidir. `preload` direktifi, sitenizin Google'ın HSTS Preload Listesi'ne dahil edilme isteğini ifade eder. Bu listeye dahil olan siteler, tarayıcılara hardcoded olarak HSTS uygulamasını getirir. Yani, kullanıcı sitenizi ilk kez ziyaret ettiğinde bile (HTTP üzerinden olsa dahi), tarayıcı zaten sitenizin HTTPS kullanması gerektiğini bilecek ve direkt HTTPS üzerinden bağlantı kurmaya çalışacaktır. Bu, "ilk ziyaret" güvenlik açığını tamamen ortadan kaldırır. Ancak `preload` kullanmadan önce sitenizin tüm alt etki alanları dahil olmak üzere %100 HTTPS uyumlu olduğundan emin olmalısınız, aksi takdirde siteniz tamamen erişilemez hale gelebilir. Eğer HSTS Preload listesine girmek istiyorsanız, tüm gereksinimleri karşıladığınızdan emin olmalısınız:
* Geçerli bir SSL/TLS sertifikasına sahip olmak.
* Tüm HTTP trafiğini HTTPS'ye yönlendirmek.
* Tüm alt alan adlarının HTTPS üzerinden hizmet verdiğinden emin olmak (`includeSubDomains` direktifi).
* En az 1 yıl süreli bir `max-age` değerine sahip olmak.
* Preload direktifini HSTS başlığına eklemek.
Daha fazla bilgi için, SSL sertifikalarının ve HTTPS'nin genel önemini ele alan diğer makalemize göz atabilirsiniz: `/makale.php?sayfa=ssl-sertifikasi-onemi`.

3. Yaygın HSTS Hataları ve Sorun Giderme


HSTS uygulaması basit görünse de, bazı yaygın hatalar sitenizin erişilebilirliğini veya güvenliğini olumsuz etkileyebilir:
* HSTS Başlığının Eksik Olması: En temel sorun, `Strict-Transport-Security` başlığının HTTP yanıtında hiç bulunmamasıdır. Bu, HSTS'nin sunucunuzda etkinleştirilmediği anlamına gelir. Sunucu yapılandırmanızı (Apache, Nginx, IIS vb.) kontrol etmeniz gerekir.
* Kısa `max-age` Değeri: Eğer `max-age` değeri çok kısaysa (örneğin, birkaç dakika veya saat), HSTS politikasının etkisi minimum düzeyde kalır. Tarayıcı politikayı hızla unutacak ve kullanıcılar tekrar HTTP üzerinden bağlanma riskine girecektir.
* `includeSubDomains` Eksikliği: Eğer alt etki alanlarınız varsa ancak `includeSubDomains` direktifi eksikse, alt etki alanlarınız HSTS koruması dışında kalır. Bu, potansiyel güvenlik açıklarına yol açabilir.
* Karışık İçerik (Mixed Content) Sorunları: HSTS uygulandıktan sonra bile, sitenizdeki bazı kaynaklar (resimler, CSS, JavaScript dosyaları) hala HTTP üzerinden yüklenmeye çalışıyorsa, tarayıcılar bu durumu güvenlik hatası olarak algılayabilir. Bu, kullanıcı deneyimini bozar ve SEO sıralamalarınıza zarar verebilir. Tüm kaynakların HTTPS üzerinden yüklendiğinden emin olmalısınız.
* İlk HTTP Yönlendirme Zinciri: HSTS'nin tam olarak etkinleşmesi için, kullanıcının ilk olarak güvenli bir HTTPS bağlantısı kurması ve sunucunun HSTS başlığını göndermesi gerekir. Eğer sitenizin ana sayfasına yapılan HTTP istekleri doğrudan HTTPS'ye yönlendirilmiyorsa, bu bir güvenlik açığı yaratır. Tüm HTTP trafiğinin kalıcı olarak HTTPS'ye 301 yönlendirmesiyle yönlendirildiğinden emin olun. Bu aynı zamanda Google'ın sitenizi tek bir konumda dizine eklemesine yardımcı olur.

HSTS'nin SEO ve Kullanıcı Deneyimi Üzerindeki Etkisi


HSTS'nin doğru uygulanması, yalnızca teknik bir gereklilik değildir; aynı zamanda sitenizin web sitesi performansı ve SEO stratejilerinizin ayrılmaz bir parçasıdır.
* Geliştirilmiş Güvenlik ve Güven: HSTS, sitenizi daha güvenli hale getirerek kullanıcı verilerini korur ve bu da kullanıcıların sitenize olan güvenini artırır. Güvenli bir site, potansiyel müşteriler veya okuyucular için her zaman daha çekicidir.
* SEO Avantajları: Google ve diğer arama motorları, HTTPS kullanan sitelere sıralama avantajı sağlar. HSTS, bu güvenlik sinyalini güçlendirir ve arama motorlarına sitenizin güvenliğe olan bağlılığını gösterir. Ayrıca, gereksiz HTTP'den HTTPS'ye yönlendirme adımlarını ortadan kaldırarak sayfa yükleme hızını hafifçe artırabilir, bu da dolaylı bir SEO faktörüdüdür. Web sitenizin hızı hakkında daha fazla bilgi edinmek için, HTTP/2 ve web performansı makalemize göz atabilirsiniz: `/makale.php?sayfa=http2-ve-performans`.
* Daha İyi Kullanıcı Deneyimi: HSTS sayesinde, kullanıcılar sitenize her zaman en güvenli şekilde ve olası en hızlı yoldan ulaşır. Bu, daha sorunsuz bir gezinme deneyimi ve daha az güvenlik uyarısı anlamına gelir.

Sonuç


Sitenizin Strict-Transport-Security (HSTS) politikasının doğru bir şekilde uygulandığından emin olmak, modern web'de başarılı olmak için olmazsa olmazdır. Bir HTTP Header Görüntüleyici kullanarak `Strict-Transport-Security` başlığının varlığını kontrol etmek, max-age, `includeSubDomains` ve `preload` direktiflerinin doğru değerlere sahip olduğunu doğrulamak, sitenizin güvenlik ve web sitesi performansını artıracaktır. Bu kontrolleri düzenli olarak yaparak, sadece kullanıcılarınızın güvenliğini sağlamakla kalmaz, aynı zamanda arama motorlarında daha iyi görünürlük elde edersiniz ve AdSense reklam gelirlerinizin istikrarını garantilemiş olursunuz. Unutmayın, güvenlik asla göz ardı edilmemesi gereken bir unsurdur.

Tarkan Tevetoğlu

Yazar: Tarkan Tevetoğlu

Ben Tarkan Tevetoğlu, bir Akademisyen ve Araştırmacı. Platformumuzda teknolojiyi herkes için anlaşılır kılmak, karmaşık konuları basitleştirerek okuyucularımızın günlük yaşamında pratik olarak kullanabileceği bilgiler sunmak, yeni beceriler kazandırmak, farkındalık oluşturmak ve teknoloji dünyasındaki gelişmeleri anlaşılır bir dille aktarmak amacıyla yazıyorum.

Diğer Makaleler

Web Sitenizin 301 Yonlendirme Ve 404 Hatalarinin Kaynagini Http BaslikWeb Sitenizin 301 Yonlendirme Ve 404 Hatalarinin Kaynagini Http BaslikWeb Sitenizdeki Onbellekleme Sorunlarini Http Basliklarini GoruntuleyeWeb Sitenizdeki Onbellekleme Sorunlarini Http Basliklarini GoruntuleyeWeb Sitenizin Guvenlik Basliklari Csp Hsts Aktif Mi Http Header GoruntWeb Sitenizin Guvenlik Basliklari Csp Hsts Aktif Mi Http Header GoruntSeo Denetiminde Tespit Edilen Yonlendirme Zincirlerini Http BasliklariSeo Denetiminde Tespit Edilen Yonlendirme Zincirlerini Http BasliklariGelistiriciyim Cors Hatasi Aliyorum Http Header Goruntuleyici KullanarGelistiriciyim Cors Hatasi Aliyorum Http Header Goruntuleyici KullanarWeb Sitemdeki Yanlis Yonlendirme 301302 Hatalarini Http Header GoruntuWeb Sitemdeki Yanlis Yonlendirme 301302 Hatalarini Http Header GoruntuIstenmeyen Bot Trafigini User Agent Basligi Ile Tespit Etme YontemleriIstenmeyen Bot Trafigini User Agent Basligi Ile Tespit Etme YontemleriSitenizin Sunucu Yazilimi Ve Versiyonunu Http Basliklarindan OgrenmeSitenizin Sunucu Yazilimi Ve Versiyonunu Http Basliklarindan OgrenmeContent Type Hatasi Nedeniyle Siteniz Yanlis Goruntuleniyor Mu BasliklContent Type Hatasi Nedeniyle Siteniz Yanlis Goruntuleniyor Mu BasliklSeo Performansini Etkileyen Http Durum Kodlari Basliklari Nasil AnlarsSeo Performansini Etkileyen Http Durum Kodlari Basliklari Nasil AnlarsTarayicidaki Cors Hatasi Icin Access Control Allow Origin Basligi NasiTarayicidaki Cors Hatasi Icin Access Control Allow Origin Basligi NasiWeb Sitenizin Http Guvenlik Basliklari Eksik Mi Online Goruntuleyici IWeb Sitenizin Http Guvenlik Basliklari Eksik Mi Online Goruntuleyici ISitenizin Yavas Yuklenmesinin Http Basliklarindaki Gizli SebepleriSitenizin Yavas Yuklenmesinin Http Basliklarindaki Gizli Sebepleri404 Not Found Hatasinin Gercek Nedenini Http Basliklari Ile Bulun404 Not Found Hatasinin Gercek Nedenini Http Basliklari Ile BulunYanlis Cache Control Basligi Yuzunden Siteniz Guncellenmiyor Mu TeshisYanlis Cache Control Basligi Yuzunden Siteniz Guncellenmiyor Mu TeshisSitenizdeki Yonlendirme Zincirini Http Header Goruntuleyici Ile CozumlSitenizdeki Yonlendirme Zincirini Http Header Goruntuleyici Ile CozumlSunucu Hatasi 500 Internal Server Error Icin Http Header Bilgileriyle Sunucu Hatasi 500 Internal Server Error Icin Http Header Bilgileriyle Tiklama Korsanligina Karsi Koruma X Frame Options Http Header AyarlariTiklama Korsanligina Karsi Koruma X Frame Options Http Header AyarlariWeb Sitemdeki Oturum Acma Sorunu Set Cookie Http Headeri Nasil DogrulaWeb Sitemdeki Oturum Acma Sorunu Set Cookie Http Headeri Nasil DogrulaYanlis 404 Sayfasi Http Header Bilgisiyle Nasil Dogru Sekilde YapilandYanlis 404 Sayfasi Http Header Bilgisiyle Nasil Dogru Sekilde YapilandRest Api Cagrilarinda Cross Origin Cors Hatasi Cozumu Http Header InceRest Api Cagrilarinda Cross Origin Cors Hatasi Cozumu Http Header InceWeb Sayfamin Icerigi Bozuk Gorunuyor Content Type Http Headerini DuzelWeb Sayfamin Icerigi Bozuk Gorunuyor Content Type Http Headerini DuzelTarayicidaki Guvensiz Baglanti Uyarisi Hsts Header Ayarlari Nasil KontTarayicidaki Guvensiz Baglanti Uyarisi Hsts Header Ayarlari Nasil KontGoogle Bot Web Sayfami Neden Indekslemiyor X Robots Tag Headerini AnlaGoogle Bot Web Sayfami Neden Indekslemiyor X Robots Tag Headerini AnlaSonsuz Yonlendirme Dongusunu Http Header Goruntuleyici Ile Adim Adim TSonsuz Yonlendirme Dongusunu Http Header Goruntuleyici Ile Adim Adim TWeb Sitemdeki Yavas Yukleme Sorununu Http Cache Control Headeri Ile NaWeb Sitemdeki Yavas Yukleme Sorununu Http Cache Control Headeri Ile NaWeb Sitemdeki Cerezler Neden Ayarlanmiyor Set Cookie Http BasliklariniWeb Sitemdeki Cerezler Neden Ayarlanmiyor Set Cookie Http BasliklariniArama Motorlari Icin Canonical Urlimin Dogru Ayarlanip AyarlanmadiginiArama Motorlari Icin Canonical Urlimin Dogru Ayarlanip AyarlanmadiginiTarayicim Icerigi Yanlis Karakterlerle Gosteriyor Content Type Http BaTarayicim Icerigi Yanlis Karakterlerle Gosteriyor Content Type Http Ba404 Veya 500 Gibi Sunucu Hatasi Aliyorum Gercek Http Durum Kodunu Ve N404 Veya 500 Gibi Sunucu Hatasi Aliyorum Gercek Http Durum Kodunu Ve NCors Hatasi Aliyorum Access Control Allow Origin Http Basligi Yanlis YCors Hatasi Aliyorum Access Control Allow Origin Http Basligi Yanlis YWeb Sitemin Guvenlik Acigini Gosteren Eksik Hsts Veya Csp Http BasliklWeb Sitemin Guvenlik Acigini Gosteren Eksik Hsts Veya Csp Http BasliklSurekli Yonlendirme Dongusune Dusuyorum Http Basliklari Zinciri Bu SorSurekli Yonlendirme Dongusune Dusuyorum Http Basliklari Zinciri Bu SorCalismayan Url Yonlendirmemin Kok Nedenini Http Basliklarini GoruntuleCalismayan Url Yonlendirmemin Kok Nedenini Http Basliklarini GoruntuleTarayici Onbellekleme Sorununu Cache Control Http Basliklarini InceleyTarayici Onbellekleme Sorununu Cache Control Http Basliklarini InceleyWeb Sitemin Yavas Yuklenme Nedeni Http Basliklarinda Gizli Olabilir MiWeb Sitemin Yavas Yuklenme Nedeni Http Basliklarinda Gizli Olabilir MiEski Iceriklerin Onbellege Alinma Sorunlarini Etag Basligiyla Http HeaEski Iceriklerin Onbellege Alinma Sorunlarini Etag Basligiyla Http HeaReferer Basliginin Dogru Calisip Calismadigini Http Header GoruntuleyiReferer Basliginin Dogru Calisip Calismadigini Http Header GoruntuleyiSeo Icin Kritik Hsts Strict Transport Security Basliginin Dogru YapilaSeo Icin Kritik Hsts Strict Transport Security Basliginin Dogru YapilaIcerik Turu Content Type Basligi Yanlis Mi Http Header Goruntuleyici IIcerik Turu Content Type Basligi Yanlis Mi Http Header Goruntuleyici I