Sovereign Certificate Authority este un Certificate Authority intern care aduce experiența Let’s Encrypt 1:1 în rețeaua proprie: protocol ACME, cert-enrollment automat, reînnoire automată — pentru toate serviciile interne, subdomeniile și dispozitivele angajaților. Productiv în utilizare.
| Caracteristică | Valoare |
|---|
| Protocol | ACME (RFC 8555) — identic cu Let’s Encrypt |
| Clienți | Orice client standard (certbot, acme.sh, lego, dehydrated, …) |
| Sfera de aplicare | Domenii interne, zone .local, service-mesh, mTLS |
| Reînnoire | Complet automată, la 60–90 de zile |
| Status | Productiv în utilizare |
flowchart LR
A[Serviciu intern] -->|Request ACME| B[Sovereign CA]
B -->|Challenge| C[HTTP-01 / DNS-01]
C -->|reușit| D[Emitere certificat 90 de zile]
D --> A
A -.->|reînnoire după 60 de zile| B
Despre ce este vorba
Orice firmă cu servicii interne proprii — de la wiki la sistemul de issue tracking până la dashboardul intern de monitoring — cunoaște jocul: certificate TLS. Există trei variante clasice și niciuna nu e bună:
- Certificate self-signed — orice browser avertizează, utilizatorii dau click peste avertismente (cultura de securitate distrusă), iar la un moment dat un click de phishing nu mai este distingibil.
- Certificate de la CA public pentru hostname-uri interne — cu costuri (€150 – €500 per certificat pe an) și toate hostname-urile interne apar în log-urile publice de Certificate Transparency — atacatorii pot citi de acolo ce sisteme interne există.
- Let’s Encrypt — gratuit, dar nu funcționează pentru hosts pur intranet (fără disponibilitate publică pentru validarea HTTP), iar cu 50 de certificate pe săptămână per domeniu are rate limits dure.
Sovereign Certificate Authority este răspunsul: același confort ca Let’s Encrypt, dar intern, fără expunere în log-uri publice și fără limite.
Experiența Let’s Encrypt — intern
Orice client ACME-capabil funcționează direct cu CA-ul intern — fără modificare de cod, fără unelte speciale, fără API proprietar.
- 🤖 Auto-enrollment — un serviciu trebuie să cunoască doar endpointul ACME al CA-ului intern, apoi își ia singur certificatul.
- 🔁 Auto-renewal — durata standard 90 de zile, reînnoire automată după 60 de zile. Nimeni nu mai trebuie să se gândească la datele de expirare.
- 🌐 HTTP-01 + DNS-01 challenge — ambele metode standard de validare, în funcție de use case.
- 🃏 Wildcards — certificate wildcard pentru spații întregi de subdomenii posibile (
*.intern.example.com). - 📜 Clienți standard —
certbot, acme.sh, lego, dehydrated, Caddy, Traefik, nginx-acme — toți funcționează fără adaptare.
De ce nu pur și simplu Let’s Encrypt?
| Cerință | Let’s Encrypt | CA public (DigiCert, GlobalSign, …) | Sovereign CA |
|---|
| Funcționează pentru hosts pur intranet | ❌ Nu | ✅ Da | ✅ Da |
| Cost per certificat | 0 € | 150–500 € / an | 0 € |
| Rate limits | 50/săpt./domeniu | Niciun | Niciun |
| Hostname-uri în log-uri publice CT | ✅ Da (obligatoriu!) | ✅ Da (obligatoriu!) | ❌ Nu |
| Auto-renewal prin ACME | ✅ Da | ⚠️ Parțial | ✅ Da |
| Custody al root CA | Furnizor extern | Furnizor extern | Mâna proprie |
| Certificate wildcard | ✅ (doar DNS-01) | ✅ (cost suplimentar) | ✅ |
Punctul decisiv: expunerea în CT-log. Fiecare certificat emis de un CA public — inclusiv cel de la Let’s Encrypt — ajunge într-un log public, căutabil. Cine interoghează crt.sh vede toate hostname-urile voastre interne. Instrumentele de recunoaștere pentru atacatori folosesc exact asta.
Un CA intern emite certificate fără ca ele să apară undeva public. Hostname-urile interne rămân interne.
Funcționalități operaționale
- 🌳 Ierarhie PKI pe mai multe niveluri — Root CA offline, Intermediate CA online pentru emiterea ACME. Practică PKI standard.
- 🔄 Revocare automată — endpointuri CRL și OCSP pentru liste de revocare, certificatele compromise sau retrase sunt blocate curat.
- 🔐 Cheie hardware opțional — cheia Intermediate poate fi păstrată în HSM sau TPM — chiar și cu serverul compromis, fără cheie CA liberă.
- 📊 Monitoring & inventory — privire de ansamblu asupra tuturor certificatelor emise, date de expirare, hosts afectate.
- 🎯 Policy engine — ce client are voie să emită ce certificate? Account binding, allowlists de domenii, limite de durată maximă per rol.
- 🔌 Integrare cu servicii — certificate de tunel (VPN, mTLS), service mesh (compatibil Envoy/Istio), servere mail (SMTP/IMAP TLS), reverse proxy-uri, dispozitive IoT.
- ⏰ Configurare durată de viață — cert lifetimes scurte (24h pentru pipelines, 90 de zile pentru servicii, 1 an pentru IoT) — fin-granular per use case.
- 🔍 Audit log — fiecare emitere, reînnoire și revocare este logată structurat.
Cazuri tipice de utilizare
- 🏢 Aplicații web interne — wiki, tracker, CRM, dashboard-uri cu certificate TLS reale, pe care orice browser le acceptă (după instalarea root pe dispozitivele finale).
- 🤝 Service-to-service mTLS — microservicii/service mesh cu autentificare reciprocă în loc de API keys.
- 📱 Autentificarea dispozitivelor — laptopurile angajaților și dispozitivele mobile primesc certificate client pentru acces WLAN, VPN și servicii.
- 📧 Infrastructură de e-mail — SMTP submission, IMAP/POP cu certificate valide fără costuri de CA public.
- 🛠️ Pipelines CI/CD — certificate de scurtă durată pentru build runners, emise automat și aruncate după job.
- 🌍 Domenii internal-DNS —
.internal, .lan, top-level subdomenii proprii — certificate pe care Let’s Encrypt nu le poate emite în principiu.
De ce este o temă de CEO
- 💰 Cost avoidance — pentru 100 de servicii interne cu certificate de la CA public: tipic 30 000–50 000 € pe an. Cu CA intern: 0 €.
- 🔍 Protecție împotriva recunoașterii — hostname-urile interne sunt astăzi cea mai mare trădare în pre-attack recunoaștere — divulgă atacatorilor topologia organizației. Un CA intern elimină complet aceste scurgeri.
- 🛡️ Suveranitate — control complet asupra lanțului de încredere. Fără dependență de CA-uri externe al căror root program se poate schimba sau a căror încredere CA poate fi revocată (Symantec, DarkMatter, …).
- 📋 Compliance — custody chain complet. Pentru industrii reglementate (financiar, sănătate, apărare), CA-urile interne sunt adesea chiar obligatorii.
- ♻️ Continuitatea afacerii — la căderea CA-ului extern (din pricina mentenanței, sancțiunilor, insolvenței), certificatele interne pot fi emise mai departe.
- 🔧 Scalare fără costuri marginale — 10 sau 10 000 de certificate — efortul și costurile practic nu se schimbă.
Fundament tehnologic
Realizat pe baza unor implementări CA open source probate care susțin complet protocolul ACME.
| Strat | Realizare |
|---|
| CA engine | Software CA open source cu server ACME RFC 8555 |
| Storage chei | Backend local cu integrare opțională HSM/TPM |
| Challenges de validare | HTTP-01 (intern), DNS-01 pentru wildcards |
| Revocare | CRL distribution points + responder OCSP |
| Monitoring | Metrici Prometheus + audit log prin syslog |
| Partea client | Orice client ACME standard (certbot, acme.sh, lego, …) |
Sovereign Certificate Authority — variantă internă de Let’s Encrypt · ACME RFC 8555 · enrollment complet automat · fără expunere în log-uri publice CT · productiv în utilizare