Nginx web-server kuchli unumdorlik va moslashuvchanlik bilan mashhur bo'lib, dunyo bo'ylab eng yuqori trafikga ega saytlarning aksariyati shu serverda ishlaydi. Nginx'da SSL sozlamalari boshqa serverlarga nisbatan biroz boshqacha sintaksisni talab qiladi, ammo bir marta tushunib olganingizdan keyin, juda qulay va sodda bo'lib qoladi. Sayt.uz texnik xodimlari Nginx bilan har kuni ishlashadi va ushbu maqolada amalda sinab ko'rilgan eng samarali sozlamalarni tushuntiramiz.
Sertifikat fayllarini joylashtirish
Sertifikat va xususiy kalitni odatda "/etc/ssl/certs" va "/etc/ssl/private" papkalariga joylashtirish tavsiya etiladi, ammo Let's Encrypt ishlatilsa, certbot ularni avtomatik ravishda "/etc/letsencrypt/live/domen.uz" papkasiga joylashtiradi va bu yo'l standart hisoblanadi. Xususiy kalit faylining ruxsatlari 600 yoki undan kamroq bo'lishi kerak, aks holda boshqa foydalanuvchilar uni o'qishlari va xavfsizlik buzilishi mumkin. Sertifikat zanjirini alohida fayl emas, balki to'liq fullchain.pem faylini ishlatishni tavsiya qilamiz.
Server bloki uchun asosiy sozlamalar
Nginx konfiguratsiya faylida "server" bloki ichida "listen 443 ssl http2;" qatorini yozish kerak va keyin "ssl_certificate /etc/letsencrypt/live/domen.uz/fullchain.pem;" hamda "ssl_certificate_key /etc/letsencrypt/live/domen.uz/privkey.pem;" yo'llarini ko'rsating. HTTP/2 protokolini yoqish saytning tezligini oshirib, foydalanuvchi tajribasini sezilarli darajada yaxshilaydi. Yana bir muhim parametr โ bu "server_name domen.uz www.domen.uz;" bo'lib, u qaysi domenlar uchun ushbu blok ishlashini belgilaydi.
HTTP dan HTTPS ga avtomatik yo'naltirish
Foydalanuvchilar saytga doim "https://" prefiks bilan kelmasligi mumkin va shu sababli 80-portda alohida server bloki yaratib, uni "return 301 https://$server_name$request_uri;" buyrug'i orqali shifrlangan versiyaga yo'naltirish zarur. Bu sxema barcha trafikni HTTPS ga avtomatik tarjima qiladi va foydalanuvchilar hech qanday harakat qilmasdan xavfsiz ulanish bilan ishlay boshlaydilar. SEO nuqtai nazaridan ham bu juda muhim, chunki Google aniq HTTPS versiyani indekslashi va bir-biriga ko'paytirilmagan kontent muammosi yuzaga kelmasligini ta'minlaydi.
Modern shifrlash sozlamalari
Eski TLS 1.0 va 1.1 protokollarini o'chirib, faqat TLS 1.2 va 1.3 ni qoldirish hozirgi xavfsizlik talablariga mos keladi. "ssl_protocols TLSv1.2 TLSv1.3;" qatorini server blokiga qo'shing va "ssl_ciphers" ro'yxatini Mozilla Modern profili asosida sozlang. OCSP Stapling yoqish ham tezlikni oshiradi va brauzer har safar sertifikat holatini tekshirish uchun alohida so'rov yubormaydi. "ssl_stapling on;" va "ssl_stapling_verify on;" qatorlarini qo'shish yetarli.
HSTS sarlavhasini qo'shish
HSTS (HTTP Strict Transport Security) sarlavhasi brauzerga aytadiki, bu saytga doim faqat HTTPS orqali ulaning va HTTP versiyasini umuman ishlatmang. "add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains' always;" qatorini server blokiga qo'shing va brauzerlar bir yil davomida sizning saytingizni faqat HTTPS deb biladilar. Bu sozlama "downgrade attack" hujumlaridan himoya qiladi va xavfsizlik darajasini sezilarli oshiradi.
Sayt.uz amaliyot
Sayt.uz infratuzilmasining 65 foizi Nginx asosida qurilgan va biz mijozlarimiz uchun optimal SSL sozlamalarini standart sifatida o'rnatamiz. Har bir VPS serverda HTTP/2, TLS 1.3, OCSP Stapling va HSTS yoqilgan holda yetkazib beriladi. Bepul migratsiya xizmatida texnik xodimlar mavjud Apache yoki LiteSpeed konfiguratsiyasini Nginx ga ko'chirib o'tkazadi va bu jarayon o'rtacha 4 soat davom etadi. VPS xizmatining narxi oyiga 150 000 so'mdan boshlanadi va SSL xizmati o'z ichiga kiradi.