İşe Yarar Bilgiler

HSTS (HTTP Strict Transport Security) Nedir, Nasıl Kurulur?

Webmaster Konuları
hsts nedir

HSTS (HTTP Strict Transport Security), (HTTP Katı Taşıma Güvenliği,) bir web tarayıcısına HTTPS üzerinden bir web sitesine erişildiğinde tarayıcının gelecekte o siteye yalnızca HTTPS üzerinden erişmesini zorlayan bir güvenlik mekanizmasıdır. Bu, siteye erişen kullanıcıların tarayıcılarında bir kez HTTPS kullanmaları durumunda, sonraki tüm erişimlerin de HTTPS üzerinden gerçekleşeceği anlamına gelir.

HSTS‘nin olmaması bir dizi güvenlik sorununa yol açabilir:

  1. Man-in-the-Middle Saldırıları: HSTS olmayan bir site, saldırganların kullanıcıları HTTP üzerinden siteye yönlendirmesine olanak tanır. Bu, saldırganların kullanıcı verilerini ele geçirmesi veya değiştirmesi için bir fırsat oluşturabilir.
  2. SSL Stripping: HSTS olmayan bir site, saldırganlara HTTPS trafiğini HTTP’ye düşürme fırsatı verebilir. Bu, saldırganların kullanıcıları HTTPS üzerinden gelen verileri görmesine ve hatta değiştirmesine olanak tanır.
  3. Cookie Hijacking: HSTS olmayan bir site, çerezlerin HTTPS üzerinden iletilmemesi durumunda, saldırganların kullanıcı oturumlarını çalarak kimlik avı yapmasına olanak tanır.
  4. Gizlilik Sorunları: HSTS olmayan bir site, kullanıcıların tarayıcı geçmişindeki ziyaretlerin daha kolay izlenmesine ve analiz edilmesine olanak tanır.
  5. Güvenilirlik ve Güvenlik Uyarıları: Tarayıcılar, HSTS olmayan bir siteye erişimde kullanıcılara güvenlik uyarıları gösterebilir, bu da kullanıcı güvenini etkileyebilir ve site trafiğini azaltabilir.

Farklı sunuculardaki web siteniz için aşağıdaki kodu ilgili dosyalara ekleyebilirsiniz. (Bir güvenlik sertifikası kurulu olmalıdır)

Apache Server
.htaccess dosyasına ekleyin
# Use HTTP Strict Transport Security to force client to use secure connections only
Header always set Strict-Transport-Security “max-age=31536000; includeSubDomains; preload”

Nginx Server
site.conf dosyasına ekleyin
add_header Strict-Transport-Security ‘max-age=31536000; includeSubDomains; preload; always;’

Lighttpd Server
Yapılandırma dosyasına ekleyin ( /etc/lighttpd/lighttpd.conf)
server.modules += ( “mod_setenv” ) $HTTP[“scheme”] == “https” { setenv.add-response-header = (“Strict-Transport-Security” => “max-age=31536000; includeSubDomains; preload”) }

Kodları düz metin olarak almak için bu dosyayı indirin

  • max-age 31536000, HSTS politikasını sunucudan alındıktan sonra 1 yıl boyunca hatırlamasını sağlar. includeSubDomains, tüm alt alanları da HSTS politikasına dahil eder.
  • Test ve Doğrulama: HSTS’nin doğru şekilde yapılandırıldığından emin olmak için web sitesine erişilir ve tarayıcının geliştirici araçları veya çeşitli online araçlar kullanılarak HSTS başlığı kontrol edilir.
  • Güncellemeleri İzleme: HSTS politikasının süresi dolduğunda veya değiştirilmesi gerektiğinde, sunucu yapılandırması güncellenmelidir. Ayrıca, HSTS politikasının etkinleştirilmesinden sonra, kullanıcıların tarayıcılarında bu politikanın kabul edilmesi bir süre alabilir, bu nedenle güncellemelerin etkileri beklenmelidir.

Bu adımları takip ederek, bir web sitesi veya uygulaması HTTP Strict Transport Security (HSTS) özelliğini etkinleştirebilir.