Može li se deliti javni VPN ključ? Proverite tri stvari
Objavljivanje javne polovine je upravo način na koji protokol radi; objavljivanje privatne polovine znači predaju identiteta. Tri provere odlučuju koju vrednost držite.
Možete dati svoj javni VPN ključ partneru, provajderu ili forumu, i tunel nastavlja da radi. Privatni ključ ne možete predati, čak ni osoblju za podršku, a da ne predate identitet koji taj ključ dokazuje. Odluka retko ostaje tako čista, jer ljudi mešaju koju polovinu para gledaju, i jer neka postavljanja tretiraju javnu vrednost kao ime. Tri provere to rešavaju: koju polovinu imate, za šta je postavljanje vezuje, i koliko košta zamena.
Prva provera: koja polovina para je u vašem klipbord
Asimetrični ključevi dolaze u parovima, a smer izvođenja je cela poenta. U WireGuard-u privatni ključ je 32 slučajna bajta, a javni se izračunava iz njega; u suprotnom smeru nije moguće. wg genkey zapisuje privatnu vrednost, wg pubkey izvodi javnu, i samo druga ide u poruku partneru.
wg genkey | tee private.key | wg pubkey > public.key
chmod 600 private.key
openssl x509 -noout -pubkey -in server.crt
Svet sertifikata koristi istu podelu sa više pokretnih delova. Serverski sertifikat nosi javni ključ i imena, i potpisan je privatnim ključem CA koji nikada ne napušta CA. Klijentu koji proverava taj server treba sertifikat CA, koji je javan, i nema nikakve koristi od privatnog ključa za potpis CA.
Ako niste sigurni koju vrednost držite, tražite oznaku, a ne ime datoteke. PEM blok koji počinje sa -----BEGIN PRIVATE KEY-----, ili stariji oblik BEGIN RSA PRIVATE KEY, jeste tajna polovina. Vrednost koju možete nalepiti bez te oznake kandidat je za deljenje, uz uslov sledeće dve provere.
Druga provera: za šta postavljanje vezuje tu javnu vrednost
Kriptografska bezbednost i anonimnost su različita svojstva. Javni ključ WireGuard partnera je stabilan identifikator unutar postavljanja: serverska konfiguracija ga navodi, rukovanje ga imenuje, i administrator koji čita dnevnike vidi isti niz svaki put kada se taj partner poveže. Ako ključ objavite pored pitanja o svom podešavanju, taj niz ste povezali sa svim ostalim u objavi.
Sertifikati odaju identitet po dizajnu. Subject i subject alternative name su čitljivi, a za javno pouzdane TLS sertifikate sam sertifikat se objavljuje u dnevnicima Certificate Transparency, koji su pretraživi. Ništa od toga ne otkriva privatni ključ, a sve od toga otkriva odnos.
Tu se postavljanja razlikuju, i to odlučuje odgovor. Jednokratni probni partner na laboratorijskom serveru je drugi objekat od ključa koji identifikuje međulokacijsku krajnju tačku kompanije, iako bajtovi izgledaju identično.
Treća provera: šta možete opozvati, i koliko brzo
Treća provera potpuno razdvaja dve polovine. Objavljeni javni ključ može se zameniti po vašem rasporedu. Objavljeni privatni ključ ne može se povući: brisanje vaše kopije ne dira kopije koje su već uzete, i svaki partner koji mu je verovao sada veruje nečemu što drži stranac.
Opoziv je konfiguraciona radnja, ne kriptografska. WireGuard ne isporučuje listu opoziva, pa partnera uklanjate:
wg set wg0 peer <peer-public-key> remove
# then delete the [Peer] block from the config so it does not return on restart
OpenVPN postavljanja zasnovana na sertifikatima opozivaju sertifikat i objavljuju CRL koji server zaista proverava kroz crl-verify. Bez te direktive lista opoziva je samo ukras. U oba slučaja redosled je isti: izdajte zamenu, raspodelite je podržanim kanalom, pa povucite stari identitet.
Greške koje nastaju kada se tri provere spoje u jednu
Većina stvarnih curenja nije odluka čoveka da objavi privatni ključ. To je ceo profil nalepljen na forum: .conf WireGuard sa PrivateKey linijom, .ovpn paket sa ugrađenim blokom ključa, ili snimak ekrana klijentskog prozora u koji je slučajno ušlo polje ključa. Javna vrednost je verovatno bila u redu; putovala je zajedno sa delom koji nije bio.
Tokovi podrške su drugi izvor. Nijedan legitiman korak provere ne traži vaš privatni ključ, jer druga strana izvodi potrebno iz javne polovine. Kada formular ili osoba traži privatnu vrednost, tačan odgovor je javna vrednost plus lokalna komanda koja je stvara.
Dnevnici i snimci ekrana pripadaju istoj kategoriji. Dijagnostički izlaz može nositi materijal ključa, identifikatore sesija i interne adrese, a objavljivanje svega toga da bi se dobio odgovor na jedno pitanje menja malu udobnost za veću izloženost.
Posle curenja privatne vrednosti povucite identitet
Ako je privatna vrednost ipak izašla, tretirajte taj identitet kao povučen. Generišite novi par, instalirajte javnu polovinu tamo gde je partneri očekuju, uklonite starog partnera ili opozovite stari sertifikat, i proverite mesta na kojima ste ga objavili. Ne možete izbrisati kopije koje ne kontrolišete, pa uklanjanje govori o budućnosti, ne o prošlosti.
Zatim zapišite distribuciju: koji ključ pripada kom uređaju, ko drži kopiju, kako se dostavlja zamena i ko uklanja povučenog partnera. To su delovi koje ljudi zaboravljaju, i oni odlučuju koliko dugo curenje ostaje korisno.