Yhdyskäytävät vaihtavat varmenteita, ja eilen vielä yhteyden muodostanut asiakas alkaa pysähtyä ensimmäisessä TLS-vaihdossa. Viesti nimeää varmennussyyn eikä verkkohäiriötä, eikä itse kone ole muuttunut, mikä on hyödyllinen vihje. Rikki meni varmenteen, joka nyt esitetään, ja juurten välinen suhde, jotka asiakas on valmis hyväksymään. Sen korjaaminen on luottamuspäätös, joten tee se päätös ennen kuin kirjoitat vaihtoehdon.

Lue epäonnistuminen ennen kuin muutat mitään luottamusasetusta

Puuttuvan allekirjoittajan kaltainen virhe tarkoittaa, että ketju päättyy johonkin, mitä asiakas ei hyväksy. Se voi olla sisäisen viranomaisen uusima varmenne, julkisen viranomaisen korvaava varmenne tai keskellä oleva laite, joka esittää oman varmenteensa. Pelkkä sanamuoto ei pysty erottamaan näitä tapauksia, joten katso myöntäjää ennen päätöstä.

Aja yhteys kerran etualalla ja anna sen epäonnistua, koska vuorovaikutteinen tuloste sisältää palvelimen nimen, myöntäjäketjun ja sormenjäljen, jonka asiakas laski. Vertaa tätä myöntäjää viranomaiseen, jota organisaatiosi todella ylläpitää. Jos sormenjälki muuttui mutta myöntäjä ei, pidä sitä epäilyttävänä, kunnes uusiminen vahvistetaan kanavaa pitkin, johon jo luotat. Tässä vaiheessa arvaaminen on se tapa, jolla henkilö lopulta kiinnittää välittäjän avaimen.

Kirjaa asiakkaan versio samaan muistiinpanoon. Suuri osa luottamusongelmilta näyttävistä epäonnistumisista tulee vanhemmasta asiakkaasta, joka kohtaa uudemman yhdyskäytävävaihdon.

Valitse myöntäjään luottamisen ja yhden avaimen kiinnittämisen välillä

Molemmat vaihtoehdot saavat yhteyden onnistumaan. Ne rikkoutuvat myöhemmin vastakkaisilla tavoilla, joten valinta kuuluu epäonnistumiselle, jonka voit sietää.

ApproachGood fitWhat breaks it
Trust the issuing CA with --cafileInternal PKI you can obtain over an already trusted channelCA rotation, or a client that still falls back to public roots
Pin one key with --servercertNo CA relationship, or exactly one key should ever be acceptedAny reissue that generates a new key pair

Turvaudu CA-tiedostoon, kun varmenne tulee viranomaiselta, jonka voit varmentaa itsenäisesti, koska silloin uusimiset jatkavat toimintaansa koskematta asiakkaan argumentteihin. Yhdistä se kytkimeen, joka poistaa järjestelmäjuuret käytöstä, muuten julkinen viranomainen voi täyttää tarkistuksen puolestasi. Kiinnitä sen sijaan silloin, kun yhdyskäytävällä ei ole CA:ta, jonka voisit hankkia, tai kun kapein mahdollinen poikkeus on tavoite. Kumpikaan polku ei ole abstraktisti turvallisempi: CA skaalautuu uusimisten yli, kiinnitys on helpompi tarkastaa.

Kumman valitsetkin, luotetun arvon on saavuttava kanavaa pitkin, johon luotettiin ennen muutosta. Järjestelmänvalvoja, konsoli-istunto yhdyskäytävällä tai etukäteen otettu kopio kelpaavat kaikki. Minkä tahansa kehotteen näyttämän sormenjäljen kopioiminen on kätevää ja juuri sitä, mitä välittäjä toivoo.

Laita arvo komentoon, jonka todella käynnistät

Kiinnitys kulkee palvelinvarmenteen valitsimessa, ja sen etuliite päättää koodauksen: heksadesimaaliset julkisen avaimen tiivisteet sha1:n tai sha256:n alla ja base64-avaimen kiinnitys pin-sha256:n alla. Sen antaminen poistaa myös järjestelmäluottamuksen käytöstä kyseiseltä ajalta, joten kiinnitetystä avaimesta tulee koko päätös.

sudo openconnect --protocol=gp vpn.example.com --user alice \
  --servercert pin-sha256:AbCdEf...   # single key pin
sudo openconnect vpn.example.com --cafile /etc/ssl/internal-ca.pem --no-system-trust

Asiakas täsmäyttää katkaistun tiivisteen ja hyväksyy vain neljä merkkiä etuliitteen jälkeen, mikä on ansa eikä mukavuus. Lyhennetty arvo menee läpi paikallisesti eikä silti tunnista yhdyskäytävää, jonka tarkoitit. Kopioi koko merkkijono, jonka asiakas tulosti ensimmäisellä yrityksellä, sen sijaan että kirjoittaisit sen uudelleen viestistä. Siirrä sitten valmis valitsin kääreskriptiin, unit-tiedostoon tai profiiliin, joka käynnistää yhteyden, jotta luottamuspäätös on tarkastettavissa ja myöhemmät muutokset harkittuja.

Työpöytäkäynnistimet ja NetworkManager-liitännäinen tallentavat oman kopionsa yhteysargumenteista. Levyllä muokattu skripti ei saavuta aiemmin tuotua profiilia, joten tallennettu arvo voittaa edelleen.

Hoida vaihto lukitsematta itseäsi ulos

Valitsin voidaan antaa useammin kuin kerran, joten suunniteltu muutos voi hyväksyä lähtevän ja saapuvan avaimen yhdessä. Lisää uusi kiinnitys ennen kuin yhdyskäytävä vaihtuu, pidä molemmat lueteltuina istuntojen siirtyessä ja poista eläköitynyt, kun vanha avain on poissa. Tämä ikkuna tarvitsee omistajan, sillä unohdettu kaksoiskiinnitys jättää avaimen luotetuksi ilman, että kukaan vahtii sitä. Uuden avainparin tuottava uudelleenrakennus rikkoo puhtaan kiinnityksen, ja palautuminen on sama menettely toiseen suuntaan.

Kirjoita muutospäivä kiinnityksen viereen. Kiinnitys ilman tarkastuspäivää on tuleva katkos, joka kantaa hämmentävää virheilmoitusta.

Sulje asiakasversio pois ennen luottamuksen muokkaamista

Vanhentunut asiakas voi epäonnistua jäsentäessään todennusvastausta, jota yhdyskäytävä on sittemmin muuttanut, ja pinnan viesti puhuu yhä yhteydestä eikä jäsentimestä. Vertaa asennettua versiota siihen, mitä yhdyskäytävä dokumentoi, ja testaa nykyistä pakettia kertakäyttöisessä profiilissa ennen minkään luottamusasetuksen muuttamista.

openconnect --version

Korjauksen jälkeen varmenta kaksi asiaa yhden sijaan: portaali latautuu tunnelin läpi ja tavallinen sisäinen osoite vastaa. Valmis kättely todistaa vain, että luottamuspäätös hyväksyttiin.

Aiheeseen liittyvät artikkelit