„Todennus epäonnistui“ voi viitata palvelimen varmenteeseen, koneen ennalta jaettuun avaimeen tai käyttäjän salasanaan. Siihen, mitä niistä tarkoitetaan, vaikuttaa protokolla, koska jokainen protokolla määrittelee erilaisen salaisuuksien joukon. Nollaa väärä, niin virhe säilyy ennallaan. Ulospääsy on selvittää, kuinka monta todistetta protokolla vaatii, ennen kuin muutat mitään.

Kaksi todistetta vastakkaisiin suuntiin

Tunnelin on vastattava, saavuttiko se oikean yhdyskäytävän, ja erikseen, kuka käyttäjä on. Yhdyskäytävän todiste on konetasolla: palvelimen varmenne, ennalta jaettu avain tai staattinen julkinen avain. Käyttäjän todiste on henkilötasolla: salasana, token, asiakasvarmenne tai ei mitään. Ne ovat luottamuksen vastakkaisia suuntia ja kuluttavat eri materiaalia.

IKEv2 suorittaa yhdyskäytävän todisteen IKE_AUTHin sisällä ja, kun EAP:tä käytetään, ajaa sen jälkeen käyttäjän todisteen erillisessä vaihdossa. IKEv2-spesifikaatio pitää ne erillisinä osioina, mikä on vahva vihje siitä, mistä katsoa, kun yksi viesti kattaa molemmat kierrokset.

Lue vaihe, älä viestiä

Asiakas näyttää yhden virhemerkkijonon riippumatta siitä, mikä vaihe epäonnistui, joten merkkijono itse ei kanna juuri lainkaan tietoa. Tietoa kantaa tila, jonka voit tarkastaa kussakin vaiheessa: onko assosiaatio olemassa, onko käyttäjän vaihto alkanut ja tarjosiko asiakas menetelmää, jota yhdyskäytävä halusi. Taulukko lajittelee vaiheet juuri näin eikä protokollan nimen mukaan.

Stage that failedEvidence you can inspectWhat a password change cannot fix
The machine proofno security association in the state lista mismatched pre-shared key or an untrusted chain
The user proofan association is up while PPP or EAP reports failurean expired token, a locked account, a missing client key
The client's method supportthe client offers no method the gateway acceptsa client without the required EAP or key material
The server's policythe gateway rejects before any user exchange startsa policy that requires a certificate the profile lacks

Vain toinen rivi koskee tunnistetietoa, jonka käyttäjä voi kirjoittaa uudelleen. Muut kolme ovat kokoonpanon tosiasioita, ja juuri tämä epäsuhta on syy siihen, miksi niin moni tällainen raportti päättyy salasanan nollaukseen, joka ei muuta mitään. Lue rivi, joka vastaa todistettasi, ennen kuin kosket kenttään.

Kahden salaisuuden protokolla näyttää korttinsa

L2TP IPsecin päällä tekee lukumäärän näkyväksi, koska kaksi tarkistusta tapahtuu eri prosesseissa. IPsec-kerroksen on noustava ensin ennalta jaetulla avaimella tai varmenteella, ja vasta sitten sen sisällä PPP yrittää käyttäjän kirjautumista.

Kun koneen salaisuus on väärä, assosiaatiota ei synny eikä käyttäjän tunnistetietoa yritetä koskaan. Kun koneen salaisuus on oikea ja käyttäjän salaisuus väärä, assosiaatio on olemassa ja PPP hylkää kirjautumisen, kun tunneli on jo pystyssä. Molemmat tuottavat saman viestin näytölle kahdesta eri tapahtumasta.

sudo swanctl --list-sas
sudo ip xfrm state list
sudo journalctl -u xl2tpd -n 50 --no-pager

Tyhjä assosiaatioluettelo sulkee käyttäjäkerroksen pois heti, joten tarkista se ennen salasanaa. Vakiintunut assosiaatio ja toistuvat PPP-virheet osoittavat toiseen suuntaan, käyttäjäkerrokseen tai sen sisällä olevaan todennusprotokollaan. Kumpaakaan johtopäätöstä ei ole saatavilla asiakkaan virhetekstistä.

Mistä pelkän salasanan kirjautuminen oikeastaan riippuu

Pelkän salasanan käyttö on tavallista L2TP:lle, PPTP:lle, SSTP:lle ja EAP:n kanssa IKEv2:lle. WireGuardilla ei ole sellaista vaihtoehtoa lainkaan, koska sen vastapuolet ovat avaimia eivätkä käyttäjiä. OpenVPN:n osalta vastaus tulee palvelimen asiakasvarmennevaatimuksesta: yhdyskäytävä, joka vaatii sekä varmenteen että salasanan, hylkää pelkällä salasanalla tulevan asiakkaan jatkossakin, mitä kenttään kirjoitetaan.

Minkä komponentin tarvitset, seuraa samasta vastauksesta. Salasanakirjautuminen IKEv2:n alla vaatii asiakkaan, joka puhuu EAP:tä, kun taas varmennekirjautuminen tarvitsee asiakkaan yksityisen avaimen ja palvelimen ketjun. Asenna väärä, niin epäonnistuminen luetaan tunnistetietovirheeksi, vaikka puuttuva asia on todennusmenetelmä itse.

Muuta yhtä asiaa ja testaa uudelleen

Selvitä ensin kolme tosiasiaa: mikä protokolla on käynnissä, kuinka monta salaisuutta se määrittelee ja mitkä niistä kuuluvat koneelle eivätkä käyttäjälle. Koneet epäonnistuvat ensimmäisessä vaiheessa ja ihmiset toisessa, ja näiden kahden sekoittaminen on koko tämä ongelma.

Muuta sitten täsmälleen yhtä asiaa ja testaa uudelleen samasta asiakkaasta. Tämä kurinalaisuus muuttaa hämmentävän epäonnistumisen korjaukseksi, jonka voit kuvailla seuraavalle henkilölle, ja se on hyödyllisempää kuin toimiva yhteys, jota kukaan ei osaa selittää.

Aiheeseen liittyvät artikkelit