Bosh sahifa Wiki SSL certificate

SSL certificate

SSL certificate — kundalik tilda HTTPS serverining identitysi va public keyini tasdiqlovchi X.509 sertifikatiga beriladigan nom. Zamonaviy internetda SSL protokollari eskirgan; sertifikat TLS handshake’da ishlatiladi. Shu sababli “TLS certificate” texnik jihatdan aniqroq, biroq hosting va xizmat interfeyslarida “SSL sertifikat” atamasi keng saqlanib qolgan.

Sertifikat tarkibi

X.509 sertifikat quyidagi asosiy maydonlarga ega:

  • subject public key va algoritm;
  • issuer — sertifikatni imzolagan CA;
  • serial number;
  • notBefore va notAfter validity vaqtlari;
  • Subject Alternative Name ichidagi domenlar;
  • Key Usage va Extended Key Usage;
  • CA raqamli imzosi.

HTTPS hostname tekshiruvi Common Namega emas, asosan SAN extensioniga tayanadi. www.example.uz sertifikati api.example.uzga avtomatik mos kelmaydi. Wildcard *.example.uz odatda bitta subdomain pog‘onasini qoplaydi, a.b.example.uzni emas; root example.uz ham alohida SAN sifatida kerak.

TLS handshake’dagi roli

Server handshake davomida leaf certificate va intermediate chainni yuboradi. Client chain signature’larini trust storedagi rootgacha tekshiradi, hostname, validity, key usage va policy shartlarini baholaydi. Server CertificateVerify xabari orqali sertifikat public keyiga mos private keyga ega ekanini handshake transcript signature’i bilan isbotlaydi.

Sertifikatning o‘zi session trafficni bevosita shifrlamaydi. TLS 1.3 ephemeral Diffie–Hellman orqali shared secret kelishadi va undan simmetrik traffic keylar hosil qiladi. Sertifikat asosan server identitysi va key exchange transcriptini autentifikatsiya qiladi. Shu model forward secrecy beradi.

Turlari

Domain Validation domen nazoratini tekshiradi. Organization Validation tashkilot identitysi haqida qo‘shimcha ma’lumotni tasdiqlaydi. Extended Validation belgilangan kengroq yuridik tekshiruvdan o‘tadi. Ularning encryption algoritmi avtomatik farq qilmaydi; tekshirilgan identity darajasi va certificate policy farqlanadi.

Single-name sertifikat bitta yoki bir necha aniq SAN, wildcard esa muayyan subdomainlar guruhini qoplaydi. Multi-domain sertifikat ko‘p nomni bitta certificate’ga qo‘shadi, lekin barcha nomlar certificate transparency va clientga ko‘rinadi. Juda ko‘p xizmatni bitta private keyga bog‘lash compromise ta’sirini kengaytiradi.

Olish va yangilash

Server key pair yaratadi va CSR orqali public key hamda requested nomlarni CAga beradi. ACME client HTTP-01 yoki DNS-01 challenge bilan domen nazoratini isbotlab, sertifikatni avtomatik oladi. Private key CAga yuborilmaydi. DNS-01 wildcardni qo‘llaydi, ammo DNS API tokeni minimal zone ruxsati bilan secret managerda saqlanadi.

Sertifikatlar cheklangan muddatga beriladi. Renewal expiry’dan ancha oldin avtomatlashtiriladi. Yangi fayl diskka yozilgani server uni ishlatayotganini bildirmaydi; Nginx, load balancer yoki boshqa endpoint reload qilinadi va tashqaridan real chain tekshiriladi.

Private key xavfsizligi

Private key file permission, HSM yoki managed certificate service bilan himoyalanadi. U source repository, container image yoki support ticketga joylanmaydi. Bir host compromise bo‘lsa, shared wildcard key ishlatgan barcha hostlar ta’sirlanishi mumkin. Private key o‘g‘irlanganda sertifikat revocation qilinadi va yangi key pair bilan yangisi olinadi.

Password bilan shifrlangan key server avtomatik ishga tushishda passwordni qayerdandir olishi kerak. Bu yondashuv at-rest himoyaga yordam beradi, ammo runtime’da key ochiladi. HSM non-exportable key bilan signature amalini ichkarida bajarishi mumkin.

Xatolar

Expired certificate, hostname mismatch, yetishmaydigan intermediate va ishonchsiz root brauzer ogohlantirishiga sabab bo‘ladi. Server clock noto‘g‘ri bo‘lsa validity xatosi ko‘rinishi mumkin. Certificate transparency logi domen egasiga begona CA noto‘g‘ri sertifikat berganini kuzatishga yordam beradi, ammo logga yozilish private keyni himoya qilmaydi.

Bog‘liq tushunchalar

TLS, X.509, Certificate Authority, Subject Alternative Name, ACME, Private key, Certificate chain