OpenVPN klijent koji je radio prošlog mjeseca sada pada pri pokretanju s ca md too weak, a profil na disku je bajt po bajt onaj koji je radio. Poruka se tiče potpisa na certifikatu certificacionog tijela, a ne šifre podataka, auth digesta ili lozinke računa. Tri uslova odlučuju da li je rješenje novi identifikacijski materijal, novi lanac ili namjerna promjena politike. Prođite ih redom i izbjeći ćete uobičajeni ishod u kojem se tunel vraća slabljenjem svake TLS veze na hostu.

Šta greška zapravo imenuje

OpenSSL podiže ovu grešku provjere dok gradi lanac, kada certifikat koji djeluje kao CA nosi digest potpisa koji nivo sigurnosti biblioteke više ne prihvata. MD5 se odbija na zadanom nivou, a SHA-1 se odbija kada se nivo podigne. Digest na krajnjem certifikatu ovdje je manje važan od digesta izdavaoca koji ga potpisuje. Ista politika može odbiti korijen koji je na dan izdavanja bio potpuno običan.

Zato uređivanje auth ili data-ciphers ne čini ništa za ovaj kvar. Te postavke upravljaju time kako se paketi štite nakon handshakea, dok je odbijeni objekat identifikacijski dokument koji se pregleda prije nego tunel postoji. Certifikat može mirno stajati unutar svog roka važenja i ipak nositi potpis koji biblioteka neće prihvatiti.

Držite provjere odvojeno u glavi i greška prestaje izgledati tajanstveno. Datumi važenja, korištenje ključa i digest potpisa nezavisni su testovi, a tačno jedan od njih je upravo pao.

Uslov prvi: je li odbijeni objekat korijen?

Odštampajte svaki certifikat u profilu i pročitajte polja subject i issuer. Samopotpisani korijen pokazuje istu vrijednost u oba, a njegov algoritam potpisa je onaj na kojem počiva cijeli lanac. Kada slab digest stoji tamo, svaki list ispod njega nasljeđuje problem. Zapišite algoritam uz subject da sljedeće poređenje bude mehaničko, a ne po sjećanju.

Objedinjeni CA fajlovi često drže nekoliko blokova, zato prepoznajte blok koji se stvarno učitava umjesto da pretpostavite da je prvi kriv. Komanda openssl x509 -in ca.pem -noout -subject -issuer -text opisuje jedan certifikat po jedan, što znači da prvo treba podijeliti paket ako sadrži više. Uporedite odštampani algoritam potpisa s digestom koji biste očekivali iz ere u kojoj je korijen nastao.

List potpisan sa SHA-256 pod slabim korijenom i dalje pada, jer provjera lanca ide sve do vrha. Upravo taj redoslijed čini sljedeći uslov važnim.

Uslov drugi: kontrolišete li izdavaoca?

Ako korijen pripada vašoj organizaciji, trajno rješenje je novi korijen sa savremenim digestom plus ponovo izdati listovi, isporučeni kao jedno ažuriranje profila. To košta prozor za održavanje i plan za uređaje koji ne mogu primiti ažuriranje istog dana.

Ako je lanac izdala treća strana, rješenje je zahtjev tom operateru, a jedina korisna lokalna radnja je prestati se oslanjati na stari materijal. Uređivanje PEM teksta ili ponovno čuvanje fajla ne mijenja ništa što potpis pokriva.

Jedan srednji slučaj zaslužuje ime: interni korijen koji je stariji od trenutnih zadatih vrijednosti ali još potpisuje materijal kojem druge sisteme vjeruju. Zamjena znači reviziju svakog potrošača, uključujući uređaje koji stari certifikat prikiva po otisku prsta. Prebrojte te potrošače prije zakazivanja promjene, jer zamjena korijena koja propusti jednog mijenja grešku pri pokretanju za prekid rada.

Uslov treći: šta snižavanje nivoa još prihvata

Snižavanje nivoa sigurnosti, ili odabir OpenVPN legacy profila certifikata, čini da klijent ponovo prihvata stari digest. To takođe opušta druge provjere u istoj biblioteci, za svaku vezu koju taj proces otvori.

To može biti opravdano u laboratoriji, ili kao kratki most dok se priprema zamjenski materijal, sve dok je izuzetak ograničen na jedan profil i nosi krajnji datum. Kao trajna postavka na dijeljenom hostu tiho širi ono čemu će svaki TLS klijent tamo vjerovati.

Zapišite izuzetak s vlasnikom i korakom uklanjanja. Nedokumentovana promjena nivoa se nakon šest mjeseci ne razlikuje od greške, a sljedeći inženjer neće znati da je to ikada bila odluka.

Odluka, zapisana kao pravilo

Zamijenite lanac kada kontrolišete izdavaoca i možete nabrojati njegove potrošače. Eskalirajte izdavaocu kada ne možete. Snizite nivo samo kao datiran, ograničen izuzetak s već zakazanom zamjenom. Sve drugo ostavlja isti certifikat na mjestu i premješta rizik negdje manje vidljivo.

Zatim ponovo testirajte profil s čistog klijenta, potvrdite da handshake završava, i sačuvajte tačan tekst odbijanja ako i dalje pada. Precizna poruka o grešci najjeftinija je stvar koju možete predati onome ko posjeduje sljedeći sloj.

Povezani članci