Obnovljeni VPN certifikat: neki klijenti ga i dalje odbijaju
Obnova može zadržati ime i promeniti objekat. Uporedite CA poverenje, provere imena i prikvačivanje na strani klijenta pre nego što prihvatite bilo kakvo bezbednosno upozorenje.
Pola okruženja se ponovo povezuje posle obnove, a tri uređaja odbijaju, svaki sa upozorenjem o identitetu pristupnika. Sama obnova je rutinska. Ono što ta tri uređaja drže je prikvačivanje na stari objekat, a prikvačivanje nije CA lista, provera imena ni zapis u skladištu poverenja. Uporedite tri mehanizma pre nego što dodirnete bilo kog klijenta.
Jedna obnova, dva ponašanja
Klijenti koji se ponovo povezuju imaju odluku o poverenju koja još prolazi, a oni koji odbijaju imaju zahtev koji novi certifikat ne zadovoljava. Ta razlika je informacija, ne šum. Pažljivo pročitajte poruku klijenta koji ne uspeva. Neslaganje imena, nepoznat izdavalac i promenjen otisak su tri različite presude, a samo poslednja ukazuje na prikvačivanje.
Proverite i koji je profil izabrao klijent koji ne uspeva. Uvezeni primerak koji živi u sopstvenom skladištu ne menja se kada administrator uređuje izvorni fajl negde drugde.
Obnova zamenjuje objekat, ne samo datum
Otisak identifikuje kodirani sadržaj certifikata. Obnova stvara novi certifikat, pa se otisak menja i kada ime subjekta i javni ključ ostanu identični. To je očekivano i bezopasno za klijente koji veruju CA i proveravaju ime. To je kobno za klijenta konfigurisanog da prihvati tačno jedan certifikat, a kobno je i za klijenta čije skladište poverenja nikada nije dobilo novog izdavaoca.
openssl x509 -in server.pem -noout -subject -issuer -dates -fingerprint -sha256
openssl x509 -in server.pem -noout -pubkey | openssl sha256
Drugi red odgovara na drugo pitanje: da li je par ključeva preživeo. Obnova koja ponovo koristi ključ zadržava tu vrednost i menja samo certifikat, i upravo je to slučaj u kojem administrator lako pretpostavi da se ništa nije promenilo. Pregledajte certifikat koji je raspoređen, ne onaj na graditeljskom hostu. Poređenje fajla u repozitorijumu dokazuje šta je generisano, ne šta slušalac trenutno predstavlja.
Pročitajte šta klijent prikvačuje
Neki klijenti drže otisak u svom profilu i porede ga pri svakoj vezi. Drugi ga čuvaju u platformskom skladištu poverenja, a treći se oslanjaju samo na CA. Popravka se razlikuje u svakom slučaju, pa prvo prepoznajte mehanizam.
grep -n 'peer-fingerprint' /etc/openvpn/client/*.conf
openssl s_client -connect gw.lab.example.net:443 -servername gw.lab.example.net < /dev/null 2>&1 | openssl x509 -noout -fingerprint -sha256
Prva naredba pokazuje prikvačivanje u uobičajenom profilu; druga pokazuje otisak koji krajnja tačka upravo sada servira. Kada se ta dva razlikuju, locirali ste kvar bez nagađanja. Ne lepite novu vrednost u svakog klijenta koji se žali. Klijent koji odbija zbog izdavaoca nastaviće da odbija, a vi ćete sebi dokazati da je otisak bio problem kada nije.
Uporedite certifikat koji servira svaki backend
Isprekidani rezultati obično znače više od jedne krajnje tačke, a obnova primenjena na jednom čvoru ostavlja ostale da predstavljaju stari objekat. Uporedite svaki backend po adresi, a ne po zajedničkom imenu.
for h in 10.30.0.11 10.30.0.12; do echo "$h"; openssl s_client -connect $h:443 -servername gw.lab.example.net < /dev/null 2>&1 | openssl x509 -noout -subject -dates -fingerprint -sha256; done
Skup u kojem jedan čvor zaostaje objašnjava klijenta koji se povezuje iz drugog pokušaja, a pada iz prvog. Objašnjava i nadzornu proveru koja prolazi dok se korisnici žale. Prvo popravite zaostatak. Kotrljanje konfiguracije poverenja pre nego što svaki čvor servira novi certifikat stvara prozor u kojem ništa ne radi, a kotrljanje posle ostavlja klijente da nepredvidivo padaju.
Promenite poverenje upravljanim putem
Potvrdite zamenu kroz već pouzdan administrativni kanal pre nego što je bilo gde prihvatite. Verodostojan datum isteka nije dokaz vlasništva. Ažurirajte upravljanu konfiguraciju kroz proces koji je poseduje, sa planiranim preklapanjem prihvatljivih identiteta i proverom imena koju raspoređivanje zahteva. Prikvačivanje bez provere imena slabiji je dizajn od CA poverenja koje je zamenilo.
Zatim proverite po klijentu: povežite se, potvrdite identitet koji je prihvatio i zabeležite verziju certifikata kojoj sada veruje. Upozorenje odbačeno jednom ima običaj da se vrati kod sledeće obnove.