HSTS nedir?
HSTS (HTTP Strict Transport Security), bir sitenin tarayıcıya yalnızca HTTPS ile bağlanması gerektiğini bildiren güvenlik başlığıdır. Tarayıcı bu bilgiyi hatırlar ve belirtilen süre boyunca siteye giden tüm HTTP isteklerini kendisi HTTPS’e çevirir.
Böylece kullanıcı adresi http:// ile yazsa ya da eski bir bağlantıya tıklasa bile ilk istek şifresiz gitmez. Bu, araya girme ve protokol düşürme saldırılarını zorlaştırır.
Nasıl çalışır?
Sunucu HTTPS yanıtında Strict-Transport-Security başlığını gönderir. Başlık, max-age ile tarayıcının kuralı kaç saniye hatırlayacağını belirtir; isteğe bağlı includeSubDomains alt alan adlarını da kapsar. preload ise sitenin tarayıcılara gömülü bir listeye eklenmek istendiğini gösterir.
HSTS’in tek zayıf noktası, tarayıcının siteyi ilk ziyaretidir; başlık henüz görülmemiştir. Önyükleme (preload) listesi bu boşluğu kapatır, ancak listeye girmek ciddi bir taahhüttür ve geri dönmek zaman alır.
Sunucu ve hosting ortamında
Başlık Apache’de Header always set yönergesiyle, Nginx’te add_header ile eklenebilir. cPanel veya Plesk kullanıcıları çoğunlukla .htaccess ya da panelin ek yapılandırma alanını kullanır. Başlık yalnızca HTTPS yanıtlarında gönderilmelidir.