Pola okruženja se ponovo povezuje nakon obnove, a tri uređaja odbijaju, svaki s upozorenjem o identitetu pristupnika. Sama obnova je rutina. Ono što ta tri uređaja drže je pin na stari objekt, i pin nije CA lista, provjera imena ni unos u trust store. Uporedite tri mehanizma prije nego što dotaknete bilo kojeg klijenta.

Jedna obnova, dva ponašanja

Klijenti koji se ponovo povezuju imaju odluku o povjerenju koja još prolazi, a oni koji odbijaju imaju zahtjev koji novi certifikat ne zadovoljava. Ta razlika je informacija, ne šum. Pročitajte poruku klijenta koji ne uspijeva precizno. Neslaganje imena, nepoznat izdavalac i promijenjen otisak su tri različite presude, a samo posljednja upućuje na pin.

Također provjerite koji je profil odabrao klijent koji ne uspijeva. Uvezeni primjerak koji živi u svom vlastitom spremištu ne mijenja se kada administrator uredi originalnu datoteku negdje drugdje.

Obnova zamjenjuje objekt, ne samo datum

Otisak identifikuje kodirani sadržaj certifikata. Obnova proizvodi novi certifikat, pa se otisak mijenja čak i kada ime subjekta i javni ključ ostanu identični. To je očekivano i bezopasno za klijente koji vjeruju CA i provjeravaju ime. To je fatalno za klijenta konfigurisanog da prihvati tačno jedan certifikat, a fatalno je i za klijenta čije spremište povjerenja nikada nije primilo 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živio. Obnova koja je ponovo upotrijebila ključ zadržava tu vrijednost i mijenja samo certifikat, što je upravo slučaj u kojem administrator bude u iskušenju da pretpostavi da se ništa nije promijenilo. Pregledajte certifikat koji je raspoređen, a ne onaj na hostu za izgradnju. Poređenje datoteke u repozitoriju dokazuje šta je generisano, a ne šta listener trenutno predstavlja.

Pročitajte šta klijent pinuje

Neki klijenti drže otisak u svom profilu i upoređuju ga pri svakoj vezi. Drugi ga čuvaju u platformskom spremištu povjerenja, a treći se oslanjaju samo na CA. Popravka se razlikuje u svakom slučaju, pa prvo identifikujte 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 komanda pokazuje pin u konvencionalnom profilu; druga pokazuje otisak koji endpoint zaista servira upravo sada. Kada se ta dva razlikuju, locirali ste kvar bez nagađanja. Ne lijepite novu vrijednost u svakog klijenta koji se žali. Klijent koji odbija zbog izdavaoca nastavit će odbijati, a vi ćete sebi dokazati da je otisak bio problem kada nije bio.

Uporedite certifikat koji servira svaki backend

Povremeni rezultati obično znače više od jednog endpointa, a obnova primijenjena na jedan čvor ostavlja ostale da predstavljaju stari objekt. 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

Pul u kojem jedan čvor zaostaje objašnjava klijenta koji se povezuje iz drugog pokušaja i ne uspijeva iz prvog. To također objašnjava monitoring provjeru koja prolazi dok se korisnici žale. Prvo popravite zaostajanje. Rollout konfiguracije povjerenja prije nego što svaki čvor servira novi certifikat stvara prozor u kojem ništa ne radi, a rollout nakon toga ostavlja klijente da ne uspijevaju nepredvidivo.

Promijenite povjerenje kroz upravljani put

Potvrdite zamjenu kroz već pouzdan administrativni kanal prije nego što je bilo gdje prihvatite. Vjerodostojan datum isteka nije dokaz vlasništva. Ažurirajte upravljanu konfiguraciju kroz proces koji je posjeduje, uz svako planirano preklapanje prihvatljivih identiteta, i zadržite provjeru imena koju raspoređivanje zahtijeva. Pin bez provjere imena slabiji je dizajn od CA povjerenja koje je zamijenio.

Zatim provjerite po klijentu: povežite se, potvrdite identitet koji je prihvatio i zabilježite verziju certifikata kojoj sada vjeruje. Upozorenje koje je jednom odbačeno ima običaj da se vrati pri sljedećoj obnovi.

Povezani članci