Zašto smo na privatnom mesh-u zamijenili Let's Encrypt vlastitim certifikatima
U svijetu mrežne sigurnosti, Let's Encrypt je postao sinonim za besplatne, automatizirane SSL/TLS certifikate. No, na našem privatnom WireGuard mesh-u, odlučili smo ga zamijeniti vlastitim certifikatima. Zašto? Zato što smo shvatili da vanjska ovisnost o javnom CA-u (Certificate Authority) unosi nepotrebne rizike i složenost u zatvoreni sustav.
Problem s Let's Encrypt na privatnom mesh-u
Let's Encrypt se oslanja na ACME protokol za izdavanje i obnovu certifikata. To zahtijeva da svaki čvor na mesh-u bude dostupan javnom internetu kako bi se potvrdio vlasništvo domene. Na privatnom WireGuard mesh-u, čvorovi su često iza NAT-a ili nemaju javne IP adrese. Osim toga, ACME klijent mora redovito kontaktirati Let's Encrypt servere, što uvodi vanjsku ovisnost koja može otkazati (npr. problemi s DNS-om ili mrežom).
Prednosti vlastitih certifikata
Vlastiti certifikati (self-signed) su jednostavniji za upravljanje u zatvorenom okruženju. Evo ključnih prednosti:
- Jednostavniji opoziv: Kod Let's Encrypt, opoziv certifikata zahtijeva slanje zahtjeva CA-u i čekanje na CRL (Certificate Revocation List). S vlastitim certifikatima, jednostavno obrišemo certifikat s trust store-a i izdamo novi. Nema kašnjenja.
- Bez vanjskih ovisnosti: Ne trebamo internet za izdavanje ili obnovu certifikata. Sve se odvija lokalno na mesh-u. To povećava otpornost sustava na mrežne prekide.
- Potpuna kontrola nad trust anchor-ima: Mi odlučujemo koji certifikati su pouzdani. Nema rizika od kompromitacije javnog CA-a ili izdavanja lažnih certifikata od strane treće strane.
Kako smo implementirali vlastite certifikate
Koristimo OpenSSL za generiranje root CA certifikata i izdavanje certifikata za svaki čvor. Root CA certifikat distribuiramo na sve čvorove putem sigurnog kanala (npr. WireGuard tunel). Svaki čvor ima svoj privatni ključ i certifikat potpisan od strane root CA. Provjera identiteta se vrši pomoću TLS handshake-a, gdje čvorovi međusobno provjeravaju certifikate koristeći root CA kao trust anchor.
Za automatizaciju, koristimo skriptu koja se pokreće na glavnom čvoru (CA serveru). Skripta generira nove certifikate kada je potrebno (npr. nakon isteka ili opoziva) i distribuira ih putem WireGuard veze. To je potpuno offline rješenje koje ne zahtijeva nikakvu vanjsku infrastrukturu.
Zaključak
Iako je Let's Encrypt izvrstan za javne web stranice, na privatnom mesh-u vlastiti certifikati nude veću kontrolu, jednostavnost i otpornost. Ovo nije samo tehnička odluka, već i filozofska – preuzimamo odgovornost za vlastitu sigurnost umjesto da se oslanjamo na treće strane.
Zanima vas ovakva AI tehnologija?
RiNET gradi sovereign AI rjesenja za javni sektor i poduzeca - od civic intelligence do automatizacije nabave.
Kontaktirajte nas →
Komentari