HSTS Nedir ve Nasıl Etkinleştirilir? (HTTP Strict Transport Security)
HSTS (HTTP Strict Transport Security), bir web sitesinin tarayıcıya "bana yalnızca HTTPS ile bağlan" talimatını veren bir güvenlik başlığıdır. 301 yönlendirmesiyle birlikte kullanıldığında, sitenize yapılan ilk http:// isteğinin bile araya girilerek ele geçirilmesini (SSL stripping) önler.
HSTS neden gerekli?
Yalnızca 301 yönlendirme kullanırsanız, ziyaretçinin tarayıcısı siteye önce http:// ile ulaşır ve ardından HTTPS'e yönlendirilir. Bu kısa ilk istek, ağ üzerinde araya giren bir saldırgan için bir açık penceredir. HSTS etkinken tarayıcı, adres çubuğuna http yazılsa bile isteği hiç göndermeden doğrudan HTTPS'e çevirir.
Başlığın anatomisi
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
- max-age — tarayıcının bu kuralı kaç saniye hatırlayacağı (31536000 = 1 yıl).
- includeSubDomains — kuralın tüm alt alan adlarını da kapsaması.
- preload — sitenizin tarayıcılara gömülü "yalnızca HTTPS" listesine eklenmesi talebi (aşağıda dikkat notuna bakın).
Nginx'te etkinleştirme
HTTPS server bloğunuza ekleyin:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
Apache'de etkinleştirme
mod_headers etkinken sanal sunucuya veya .htaccess dosyasına ekleyin:
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
Dikkat edilmesi gerekenler
- Önce HTTPS'in eksiksiz çalıştığından emin olun. HSTS aktifken siteye HTTP ile erişim tarayıcı tarafında tamamen engellenir; sertifikanız bozuksa ziyaretçiler siteye giremez.
- Düşük max-age ile başlayın. İlk denemede
max-age=300(5 dakika) kullanıp her şeyin çalıştığını gördükten sonra 1 yıla çıkarın. - preload'ı acele etmeyin. Preload listesine girmek kalıcıdır ve çıkması haftalar sürer; tüm alt alan adlarınızın kalıcı olarak HTTPS olacağından emin olmadan eklemeyin.
Özet
HSTS, HTTPS'inizi tek satırlık bir başlıkla zorunlu hale getirip ilk-istek açığını kapatır. Önce sertifikanızın sorunsuz çalıştığından emin olun; sertifikanız yoksa ücretsiz SSL sihirbazımızla oluşturun, ardından düşük bir max-age ile HSTS'i devreye alın.