SecScan

HSTS nima va uni qanday yoqish kerak

HSTS (Strict-Transport-Security) brauzerni saytga faqat HTTPS orqali ulanishga majbur qiladi. Nginx, Apache va Cloudflare uchun sozlash va ehtiyot choralari.

HSTS nima uchun kerak

Sayt HTTPS ni qo'llab-quvvatlasa ham, foydalanuvchi manzilni http:// bilan yozishi mumkin. Birinchi so'rov shifrlanmagan holda ketadi va uni tarmoqdagi hujjumchi ushlab, foydalanuvchini soxta sahifaga yo'naltirishi mumkin (SSL strip hujumi). HSTS header'i brauzerga: «bu saytga keyingi muddat davomida faqat HTTPS orqali ulan» deb buyuradi.

Header ko'rinishi

HTTP
Strict-Transport-Security: max-age=31536000; includeSubDomains
  • max-age — brauzer qancha soniya HTTPS ni eslab qolishi (31536000 = 1 yil).
  • includeSubDomains — qoida barcha subdomenlarga ham tatbiq etiladi.
  • preload — domenni brauzerlarning ichki ro'yxatiga qo'shish (ehtiyotkorlik bilan, qaytarish qiyin).

Nginx, Apache va Cloudflare

nginx
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
Apache
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"

Cloudflare'da: SSL/TLS → Edge Certificates → HSTS bo'limidan yoqiladi.

Ehtiyot choralari

  • Avval kichik qiymat bilan boshlang (masalan, max-age=300), hammasi ishlayotganini tekshirib, so'ng oshiring.
  • includeSubDomains ni faqat barcha subdomenlar HTTPS da ishlasa yoqing.
  • Header faqat HTTPS javoblarida qo'yiladi; HTTP dan HTTPS ga 301 yo'naltirish alohida sozlanadi.

Boshqa qo'llanmalar