GH GambleHub

TLS sertifikatlari va avtomatik uzaytirish

Nima uchun kerak

TLS «mijoz servis» trafigini shifrlaydi, serverning haqiqiyligini tasdiqlaydi (va mTLS - mijozda), shuningdek, almashtirishdan himoya qiladi. Asosiy xavf-xatarlar: sertifikatlarning kechikishi, zaif kalitlar, noto’g "ri ishonch zanjiri, qo’l muolajalari. Maqolaning maqsadi - sertifikatlar har doim dolzarb bo’lgan va rotatsiyalar foydalanuvchilar uchun sezilmaydigan arxitekturani tasvirlashdir.

Bazaviy tushunchalar

CA/Obunachi: sertifikatlashtirish markazi (ommaviy yoki ichki).
Chain (fullchain): varaq sertifikati + oraliq + ildiz sertifikati (odatda mijoz omborlarida ildiz sertifikati).
SAN (Subject Alternative Name): bitta sertifikat uchun domen/IP roʻyxati (multi-SAN).
Wildcard: `.example. com’- koʻplab pastki domenlar uchun qulay, DNS validatsiyasini talab qiladi.
OCSP stapling: server yangi sharh holatini oʻrnatadi; kechikishlar va tashqi OCSPga qaramlikni kamaytiradi.
HPKP: eskirgan/ishlatilmagan; buning o’rniga - CT-loglar va asosiy gigiyena.
CT (Certificate Transparency): Ommaviy tarqatish daftarlari - soxta nashrlarni nazorat qilish uchun muhimdir.

Kriptoprofil va kalitlar

Algoritmlar:
  • ECDSA (P-256) - tez va ixcham; zamonaviy mijozlar uchun afzalroq.
  • RSA-2048/3072 - hamon mos keladi; dual-cert (RSA + ECDSA) ni ushlab turish mumkin.
  • Kalitlarni yaratish: faqat maqsadli tomonda (privatniklarni tarmoq orqali uzatmaslik), kirish huquqlarini himoya qilish (’0600’).
  • HSM/KMS: tanqidiy zonalar uchun (toʻlov/PII) kalitlarni HSM/KMSda saqlang, operatsiyalar auditini yoqing.
  • Umr ko’rish muddati: qisqa sertifikatlar (ichki sertifikatlar uchun 90 kun/30 kun) tez-tez rotatsiyani rag’batlantiradi va buzilish xavfini kamaytiradi.

TLS boshqaruvining arxitektura modellari

1. ACME orqali ommaviy CA (Let’s Encrypt/Buypass/va h.k.)

Validatsiya: HTTP-01 (veb-server/Ingress orqali) yoki DNS-01 (wildcard/oqimsiz domenlar uchun).
Afzalliklari: bepul/avtomatlashtirilgan, keng ishonch. Kamchiliklar: tashqi qaramliklar.

2. Ichki korporativ CA

Asboblar: HashiCorp Vault PKI, Smallstep (step-ca), Microsoft AD CS, CFSSL.
Afzalliklari: kastom siyosatchilar, mTLS, qisqa TTL, ichki domenlar uchun chiqarish. Kamchiliklar: ildizni tarqatish, ishonchni boshqarish.

3. Gibrid

Tashqi foydalanuvchilar uchun ommaviy CA; ichki CA - servis-k-servis (mTLS), klastyerlararo kanallar va ma’murlar uchun.

Avtomatik uzaytirish patternlari (renew)

Umumiy prinsiplar

Uzaytirish chegarasi:’≤ tugashidan 30’kun oldin boshlash; tanqidiy servislar uchun -’45’kunga ≤.
Zero-downtime: yangi sertifikat chiqarish, atom almashtirish, uzilishsiz silliq reload.
Ikki marta ushlab turish (blue/green): joriy va keyingi cert; almashtirish - symlink yoki version secret orqali.
Alerting: 45/30/14/7/3/1 kunlik ogohlantirishlar; ACME-challenge muvaffaqiyatsizlikka uchraganda alohida alert.

ACME-mijozlar va ularni qo’llash

certbot / acme. sh/lego: VM/bare-metaldagi yengil agentlar.
cert-manager (Kubernetes): Issuer/ClusterIssuer bilan ishlaydigan operator; release/renew ni avtomatlashtiradi va Secretga yozadi.
step-ca/Vault Agent: kalit va zanjirlarni yangilash uchun qisqa TTL, sidecar-patternlar bilan avtomatik ishlab chiqarish/rotatsiya.

Kubernetes uchun jarayonlar

cert-manager (Let’s Encrypt uchun Issuer misoli, Ingress orqali HTTP-01):
yaml apiVersion: cert-manager. io/v1 kind: ClusterIssuer metadata:
name: le-http01 spec:
acme:
email: devops@example. com server: https://acme-v02. api. letsencrypt. org/directory privateKeySecretRef:
name: le-account-key solvers:
- http01:
ingress:
class: nginx
Sertifikat soʻrovi:
yaml apiVersion: cert-manager. io/v1 kind: Certificate metadata:
name: app-cert namespace: prod spec:
secretName: app-tls dnsNames:
- app. example. com issuerRef:
name: le-http01 kind: ClusterIssuer privateKey:
algorithm: ECDSA size: 256 renewBefore: 720h # 30 дней

NGINX-Ingress’ni almashtirish’Secret’ni yangilashda avtomatik ravishda amalga oshiriladi. ’ssl-ecdh-curve: secp256r1’ qoʻshing va/ConfigMap izohlari orqali OCSP stapling qoʻshing.

VM/Bare-metal uchun jarayonlar

Certbot (HTTP-01):
bash sudo certbot certonly --webroot -w /var/www/html -d example. com -d www.example. com \
--deploy-hook "systemctl reload nginx"

Davriy’certbot renew’systemd timer orqali.
Wildcard uchun DNS-01 (provayder-plagin) va shunga oʻxshash’-deploy-hook’dan foydalaning.

acme. sh (DNS-01, wildcard):
bash export CF_Token="" # example for Cloudflare acme. sh --issue --dns dns_cf -d example. com -d '.example. com' \
--keylength ec-256 --ecc \
--reloadcmd "systemctl reload nginx"

NGINX: atom almashtirish

’fullchain’ ni saqlang. pem` и `privkey. pem’barqaror yo’llar ostida (versiyalangan fayllarga symlink), so’nginx -s reload’.

Ichki PKI va mTLS

HashiCorp Vault PKI (rol namunasi):
bash vault secrets enable pki vault secrets tune -max-lease-ttl=87600h pki vault write pki/root/generate/internal common_name="Corp Root CA" ttl=87600h vault write pki/roles/service \
allowed_domains="svc. cluster. local,internal. example" allow_subdomains=true \
max_ttl="720h" require_cn=false key_type="ec" key_bits=256

Avtomatik chiqarish: Vault Agent Injector (K8s) yoki sidecar orqali; ilova/FS-watcher faylidan cert oʻqiydi.
Qisqa TTL: 24-720 soat, bu tez-tez aylanishni rag’batlantiradi va o’g’irlangan kalitning qiymatini pasaytiradi.
mTLS: aniq servislar/rollar uchun mijoz sertifikatlarini bering; kirish joyida - mutual TLS ingress/sidecar-proxy.

Xavfsiz foydalanish

Sirlarni ajratish: maxfiy kalitlar - faqat xost/pod’da, eng kichik imtiyozlar printsipi boʻyicha kirish.
Fayllarning huquqlari: kalit uchun’600’; egasi - jarayon foydalanuvchisi.
Greys davri:’renewBefore’ni DNS/ACME/provayderdagi nosozliklarni hisobga olish uchun yetarli qilib oʻrnating.
OCSP Stapling: frontlarda yoqish; javobning yangiligini kuzatib borish (odatda 12-72 soat).
HSTS: asta-sekin (boshlang’ich’preloadsiz) butun kontentning to’g’ri HTTPS-yetkazib berilishiga ishonch hosil qiling.
Dual-cert (RSA + ECDSA): muvofiqlik va unumdorlikni yaxshilaydi; zamonaviy mijozlarga ECDSA bering.

Monitoring va SLO

Metrika va tekshirishlar:
  • Har bir domen/sir bo’yicha tugashiga (gauge) qadar bo’lgan kunlar; SLO: «cert <7 kundan expiry gacha».
  • Zanjirning haqiqiyligi (linting), SANning talab etiladigan domenlarga/IPga muvofiqligi.
  • OCSP stapling holati.
  • Muvaffaqiyatli/muvaffaqiyatsiz ACME-challenglar ulushi.
  • TLS qoʻl siqish leytensisi, protokol/shifrlar (audit) versiyasi.
Alertlar (darajalar namunasi):
  • Warn: tugashidan 30 kun oldin.
  • Crit: 7 kun/muvaffaqiyatsiz tugadi’renew’.
  • Page: 72 soat/nolalid zanjiri/OCSP stapling mavjud emas.

Hodisalar va qaytishlar

Sertifikatning kechikishi: vaqtincha qayta chiqarish va RCAni qoʻlda qaytarish (nima uchun renew, DNS blokirovkasi/API cheklovlari ishlamadi).
Kalitni buzish: darhol qayta chiqarish/chaqirib olish, sirlarni almashtirish, kirish auditi, DNS-provayder/ASME-akkaunt tokenlarini almashtirish.
Noto’g’ri zanjir: to’g’ri’fullchain’, majburiy front reloadi.
Lock-in DNS provayderiga: zaxira validatsiya yoʻlini (HTTP-01) yoki ikkilamchi DNSni saqlang.

Avtomobil ishlab chiqarishni joriy etish chek-varaqasi

1. Modelni tanlang (ACME/ichki PKI/gibrid orqali ochiq CA).
2. Kriptoprofilni aniqlang: ECDSA-P256, agar kerak bo’lsa, RSA-2048 bilan dual-cert.
3. Avtomatik agent (cert-manager, certbot, acme. sh, Vault Agent).
4. Zero-downtime almashtirishni tashkil qiling (symlink-pattern, hot-reload ingress/NGINX/Envoy).
5. OCSP stapling va HSTS (bosqichma-bosqich) ni yoqing.
6. Challenge muddatlari va maqomlarini alerting qo’shing; SLO yozish.
7. Break-glass va qoʻlda ishlab chiqarish jarayonlarini hujjatlashtiring.
8. «Fayl» mashqlarini o’tkazing: singan DNS-01, ACME tushishi, tugagan ildiz/oraliq.
9. Shaxsiy kalitlarni qayta koʻrib chiqing, DNS provayder tokenlari va ACME akkauntlarini rotatsiya qiling.

iGaming/fintech uchun xususiyatlar

PCI DSS/PII: qattiq Cipher Suites, majburiy TLS 1. 2+/1. 3, zaif shifrlarni/siqishni o’chirish, session resumption xavfsizlik murosasiz.
Domenlarni segmentlash: to’lov pastki domenlari va ma’murlar uchun alohida sertifikatlar; kontent provaydyerlari uchun - izolyatsiya qilingan zanjirlar.
Audit va logografiya: chiqarishni/chaqirib olishni/rotatsiyani qayd eting; CI/CD artefaktlarini imzolang.
Ko’p mintaqalik: kross-mintaqaviy nosozliklarga bog’liq bo’lmaslik uchun hududlarga mahalliy Issuerlar.

Konfiguratsiya namunalari

NGINX (RSA+ECDSA, OCSP stapling)

nginx ssl_protocols TLSv1. 2 TLSv1. 3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_ecdh_curve secp256r1;

ssl_certificate   /etc/nginx/certs/app_ecdsa/fullchain. pem;
ssl_certificate_key /etc/nginx/certs/app_ecdsa/privkey. pem;
ssl_certificate   /etc/nginx/certs/app_rsa/fullchain. pem;
ssl_certificate_key /etc/nginx/certs/app_rsa/privkey. pem;

ssl_stapling on;
ssl_stapling_verify on;

add_header Strict-Transport-Security "max-age=31536000" always;

OpenSSL: CSR (ECDSA-P256)

bash openssl ecparam -name prime256v1 -genkey -noout -out privkey. pem openssl req -new -key privkey. pem -out csr. pem -subj "/CN=app. example. com" \
-addext "subjectAltName=DNS:app. example. com,DNS:www.example. com"

CFSSL: profil va berish

json
{
"signing": {
"profiles": {
"server": {
"usages": ["digital signature","key encipherment","server auth"],
"expiry": "2160h"
}
}
}
}
bash cfssl gencert -profile=server ca. json csr. json      cfssljson -bare server

FAQ

Wildcard kerakmi?
Agar yangi pastki domenlar tez-tez paydo bo’lsa - ha (DNS-01 orqali). Aks holda, aniq domenlar uchun multi-SAN’dan foydalaning.

Nima tanlash kerak: cert-manager yoki certbot?
Kubernetes → cert-manager. VM/mikroservislar K8s → certbot/lego/acme. sh. Ichki PKI → Vault/step-ca.

TTLni kuniga qisqartirish mumkinmi?
Ichki mTLS uchun - ha, agar avtomatlashtirish/sidecar rotatsiyani kafolatlasa va ilovalar hot-reload qilishni bilsa.

DNS-01 qanday himoya qilish mumkin?
Alohida token/zonaga minimal kirish, kalitlarni almashtirish, IP API-kirishni cheklash, audit o’tkazish.

Jami

TLSni ishonchli boshqarish - bu to’g’ri kriptoprofil, avtomatlashtirilgan ishlab chiqarish va uzaytirish, zero-downtime rotatsiyalari, kuzatish va aniq hodisa-respons tartib-taomillarining kombinatsiyasidir. ACME/PXI konveyerini quring, qattiq alerting qo’shing va muntazam ravishda «avariya» stsenariylarini o’rgating - muddati o’tgan sertifikatlar tungi peyjerlar manbai bo’lishni to’xtatadi.

Contact

Biz bilan bog‘laning

Har qanday savol yoki yordam bo‘yicha bizga murojaat qiling.Doimo yordam berishga tayyormiz.

Telegram
@Gamble_GC
Integratsiyani boshlash

Email — majburiy. Telegram yoki WhatsApp — ixtiyoriy.

Ismingiz ixtiyoriy
Email ixtiyoriy
Mavzu ixtiyoriy
Xabar ixtiyoriy
Telegram ixtiyoriy
@
Agar Telegram qoldirilgan bo‘lsa — javob Email bilan birga o‘sha yerga ham yuboriladi.
WhatsApp ixtiyoriy
Format: mamlakat kodi va raqam (masalan, +998XXXXXXXX).

Yuborish orqali ma'lumotlaringiz qayta ishlanishiga rozilik bildirasiz.